Witam,
tworzę sobie własną grę pisaną w języku Java z biblioteką JSwing. Podczas pisania programu nie zauważyłem żadnych problemów optymalizacyjnych, program chodzi bardzo szybko, powiedział bym, że płynnie, wszystko jest cacy tak jak ma być. Niestety nastąpiła chwila, kiedy musiałem udostępnić program osobom trzecim, przez co zostałem zmuszony do "zbudowania" programu aby nie oddawać również kodów źródłowych. No i tutaj pojawia się problem. Otóż program ten znacznie spowolnił.
Przykład? Postać porusza się po kratkach 32x32 px. Pomiędzy przejściem z jednej kratki na drugą wykonuje się animacja. Postać przesuwa się 4 razy w danym kierunku z przesunięciem o 8 px oraz zmienia się obrazek postaci imitujący jej ruch. W momencie, kiedy program jest kompilowany, cała akcja przejścia pomiędzy kratkami odbywa się w ciągu kilku milisekund. W momencie, kiedy program jest zbudowany i odpalam go z pliku .jar, przejście tej postaci pomiędzy kratkami odbywa się w ciągu (dajmy na to) pół sekundy. To jest znaczne opóźnienie.
Z czego to opóźnienie może wynikać? Czy podczas budowania programu trzeba na coś jeszcze zwrócić uwagę, np. jakieś dodatkowe logowania itd. ?
Program udostępniony osobom trzecim załączam jako załącznik. Aplikacja kompilowana była w Netbeans IDE 8.0.2, baza danych utworzona jest w SQLite
- dist.rar (19 MB) - ściągnięć: 123