| Konsultacje online | Warsztat 1x45min |
| Opis jednozdaniowy | Lekcja ma zadanie przekazać fundamenty optymalizacji assetów i zarządzania zasobami GPU, by tworzyć gry o wysokiej wydajności, które zachowują najwyższą jakość wizualną. |
| Materiały źródłowe | Podstawowe: Character Design Mini-Series Pt. 1 – Gesture, Silhouette, Form. Marco Bucci. https://www.youtube.com/watch?v=gI62rHNtg2w Static Batching, Explained. Free, Powerful Draw Call Optimization | Unity Tutorial. LlamAcademy. https://www.youtube.com/watch?v=8D8A6gabwlU Texel Density Explained Fast. Josh Antonio https://www.youtube.com/watch?v=2-mIY87314g Texel Density Masterclass — For Rendering & Real-time Graphics (Games). Huge Menace https://www.youtube.com/watch?v=sR1sAWWT2x8 Unity Optimization : reducing 3D objects’ draw calls. about game making https://www.youtube.com/watch?v=vU3au56UV_E Tips for Optimizing Game Assets in Blender. CG Cookie https://www.youtube.com/watch?v=jFE6KhNKg8A Dodatkowe: 5 Tips to Optimize Your Game Art. Skookum Arts https://www.youtube.com/watch?v=U-T3G5MVqIk When Optimisations Work, But for the Wrong Reasons. SimonDev https://www.youtube.com/watch?v=hf27qsQPRLQ |
| Czemu służy ta lekcja | Optymalizacja często jest postrzegana jako przykry obowiązek na koniec produkcji. Ta lekcja odwraca to podejście: optymalizacja to dbanie o User Experience. Nagłe pojawianie się obiektów (Pop-in) lub drastyczna zmiana ich kształtu przy oddalaniu wybija gracza z rytmu i niszczy iluzję świata. Spadki klatek (Frame Drops) powodują, że sterowanie staje się „ciężkie”. Uczestnicy zrozumieją, że przygotowanie dobrych LOD-ów (Levels of Detail) i Atlasów Tekstur to nie tylko kwestia techniczna, ale artystyczna – chodzi o zachowanie tożsamości wizualnej obiektu na każdym dystansie. |
Jak się przygotować?
Przygotowanie „Sceny Porównawczej” (Live Demo)
- Scena A (Nieoptymalna): 100 różnych modeli (np. domków), każdy z własnym materiałem i teksturą 2K.
- Scena B (Zoptymalizowana): Te same 100 domków, ale korzystające z jednego Atlasu Tekstur i zintegrowane w jeden Batch.
- Co przygotować: Otwórz okno Statistics (Unity) lub GPU Visualizer (Unreal). Pokaż różnicę w Draw Calls (Batches).
Przygotowanie wizualizacji „Teorii Sylwetki”
Przygotuj 3-4 slajdy lub modele, które pokażesz w trybie „Unlit” (sam czarny kolor/cień):
- Pokaż kultową postać (np. Mario, Master Chief) jako sam czarny obrys.
- Pokaż model High-Poly obok modelu LOD3 (bardzo niskie poly).
- Zadanie: Jeśli sylwetki się pokrywają, LOD jest dobry. Jeśli w LOD3 „znika” wystająca antena lub ramię – student widzi błąd natychmiast.
Przygotowanie tekstury „Checkerboard” (Texel Density)
To najprostszy sposób na pokazanie spójności tekstur.
- Pobierz lub wygeneruj teksturę w kolorową szachownicę z numerami.
- Nałóż ją na różne obiekty w scenie (np. wielką ścianę i mały kamień).
- Efekt do pokazania: Jeśli kwadraty na ścianie są ogromne i rozmyte, a na kamieniu malutkie i ostre – masz problem z Texel Density. To wizualny dowód, którego studenci nie zapomną.
Powyższe zagadnienia można przedstawić również za pomocą wyboru określonych filmów z Youtube.
Jaką wiedzę należy przekazać?
- Silhouette Theory (Teoria Sylwetki), Systemy LOD
- Progi przełączania, ukrywanie „pop-in”, Cross-fade & Dithering
- Draw Calls & Batching, Atlasowanie tekstur, Mipmapping.
Analoga: Wyobraź sobie kartę graficzną jako urzędnika. Każda nowa tekstura (materiał) to oddzielny „wniosek do rozpatrzenia”. Jeśli przyniesiesz 100 małych wniosków, urzędnik utknie w papierach. Jeśli przyniesiesz jeden duży wniosek, załatwisz wszystko naraz. Dlatego 100 obiektów z jedną teksturą (Atlas) rysuje się szybciej niż 10 obiektów z różnymi teksturami.
Cel: Redukcja komunikacji CPU -> GPU.
- Texel Density, Texel Density Consistency
Błąd: Bardzo ostra tekstura na małym kubku stojącym na rozmytej, nie wyraźnej teksturze stołu. To niszczy imersję bardziej niż niski polycount.
- Imposters & Billboards
Technika: W ekstremalnych odległościach (np. las na horyzoncie) nie potrzebujemy nawet 10 trójkątów. Wystarczą 2 (quad), na które nałożone jest zdjęcie modelu 3D zrobione z 8 stron. Oszczędność rzędu 99% zasobów.
Warto zapamiętać!
- Silhouette – najważniejsza cecha rozpoznawcza obiektu; LOD nie może jej zmieniać.
- Pop-in – wróg immersji nr 1; walcz z nim miękkimi przejściami.
- Atlas Tekstur – narzędzie do redukcji „Draw Calls” (zapytań do karty graficznej).
- Mipmapping i UV Padding (Uzupełnienie do Atlasów)
- Overdraw i Shader Complexity
- Nanite (Contextual Update)