Metody optymalizacji gier w silniku Unity
Optymalizacja gier opartych o silnik Unity
Czas trwania szkolenia:2 dni (16h)
Kod kursu:GD/OPT
Metody optymalizacji gier w silniku Unity
Cele szkolenia
Optymalizowanie gier stworzonych w silniku Unity
Najważniejsze aspekty, które wpływają na wydajność naszej gry
Poznanie dobrych praktyk projektowania gier pod względem ich późniejszej wydajności oraz jak należy szukać problemów gdy już takie w niej wystąpią
Optymalizacja specjalnie przygotowanego projektu, w którym będą występowały sztucznie stworzone problemy wydajnościowe
Przygotowanie gry, wymagającej skupienia na optymalizacji sprzętowej
Dla kogo?
Szkolenie zostało stworzone dla programistów którzy chcieliby dowiedzieć się jak zoptymalizować swoje gry, aby bez problemu utrzymały stałe 60 klatek na sekundę nawet na urządzeniach mobilnych
Zalety
Każdy z uczestników będzie miał szansę naprawić “popsuty” projekt pod względem wydajności i obserwować jak wprowadzane przez niego zmiany wpływają na działanie rozgrywki
Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how
Wymagania
Zaawansowana znajomość języka C#
Podstawowa znajomość silnika Unity
W cenie otrzymasz:
Materiały szkoleniowe
Certyfikat ukończenia szkolenia
W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Program
Z czego wynikają problemy wydajnościowe w grach
Ilość wykonywanych obliczeń
Przeciążenie karty graficznej
Dostęp do pamięci tymczasowej
Dostęp do systemu plików
Zapchany główny wątek aplikacji
Badanie wydajności gry
Pomiar klatek na sekundę
Profiling wykonującego się kodu
Alokacje pamięci
Metody optymalizacji w grach
Object pooling
Czym są Draw Calls (Frame Debbuger)
Redukcja Draw Calls (Atlasowanie)
Jak pozbyć się zbędnych alokacji pamięci
Garbage Collector
Level of Detail (LOD)
Redukcja czasów wczytywania
Coroutines
Async-Await
Wypalanie świateł w scenach statycznych (Baking)
Wypalanie świateł w scenach dynamicznych (Light Probes)