Zastosowanie metod neuroewolucyjnych do wyznaczania funkcji oceniającej w grach dwuosobowych
Optymalizacje i wydajność w grach komputerowych
-
Upload
ganymede-academy -
Category
Technology
-
view
55 -
download
0
Transcript of Optymalizacje i wydajność w grach komputerowych
OPTYMALIZACJE I WYDAJNOŚĆ W GRACH KOMPUTEROWYCH
Artur StaszczykVP Engineering
WWW.GANYMEDE.EU
WYDAJNOŚĆ
Coraz więcej pamięci i mocy obliczeniowej, ale…:• 60 FPS to ciągle wyznacznik
wydajności,• 16 ms to ciągle czas
przeznaczony na jedną klatkę,• coraz większe rozmiary
ekranóws
WYDAJNOŚĆ
• Draw Call jest ciągle operacjąkosztowną
• Komunikacja z kodem natywnym ma swój narzut
TECHNIKI OPTYMALIZACJI
Pomogą nam przy:• Wymóg określonego
rozwiązania,• Testowanie nowej technologii,• Optymalizacja to często
końcowy etap tworzenia gryOptymalizacja może występowaćna kilku poziomach.
TECHNIKI OPTYMALIZACJI
Optymalizujemy nie tylko czas wykonania:• assety (dźwięki, tekstury)• design (UX, gameplay)• zajętość pamięci• rozmiar aplikacji• …
PRZYKŁADY OPTYMALIZACJI
PROFILER
PROFILER
Bardzo dobre narzędziaDużo pomocnych funkcjonalnościCzęsto są dostosowane do konkretnej platformyMożna stworzyć własne, proste rozwiązanie
SIMPLE PROFILER
“High Resolution Timer” - dostępny na każdej platformie• Performance Counter
Nieduży (stały) narzut na wydajnośćMożna rozszerzyć do pracy z wieloma wątkami
PRZYKŁADY OPTYMALIZACJI
PROCES OPTYMALIZACJI
• Algorytmy i struktury danych,• Rozwiązania specyficzne dla
platformy i języka,• “Low-level stuff”
TEMATY NIE PORUSZONE
Wycieki pamięci,Zarządzanie pamięciąGarbage collecting,Object pooling,Optymalizacje scenyAtlasy tekstur…
REFERENCES
Android high-resolution timeriOS high-resolution timerWhat every programmer should know about memory