Optymalizacja

Optymalizacja zaczyna się od pomiaru.

Mierzymy wydajność na docelowym sprzęcie, znajdujemy źródło problemu i sprawdzamy efekt zmian na tym samym teście.

Metoda pomiaru · bez przykładowych wyników
  1. 01BaselineTen sam build, scena i sprzęt
  2. 02BottleneckCPU, GPU lub content
  3. 03ZmianaJedna kontrolowana interwencja
  4. 04PomiarFrame time przed i po

Wykres i liczby dodamy po pomiarze tej samej sceny w kontrolowanych warunkach.

Problemy, które rozwiązujemy

Najpierw ustalamy, co spowalnia projekt.

Sprawdzamy docelową wersję aplikacji i rozdzielamy koszt CPU, GPU oraz poszczególnych systemów.

Czas klatki jest niestabilny lub zbyt wysoki

Zapisujemy pomiar wyjściowy i ustalamy, czy ograniczenie leży po stronie CPU, GPU, renderowania czy zawartości sceny.

Systemy wizualne przekraczają budżet GPU

Analizujemy oświetlenie, materiały, shadery, VFX i nakładanie przezroczystości przy rosnącej złożoności sceny.

Większa scena staje się zbyt kosztowna

Sprawdzamy modele, LOD-y, instancing, tekstury, wywołania rysowania i organizację sceny podczas działania aplikacji.

VR lub XR nie utrzymuje wymaganej płynności

Mierzymy aplikację na docelowym zestawie VR i uwzględniamy jego budżet klatki.

Co dostarczamy

Plan zmian oparty na pomiarach.

Zakres może zakończyć się na diagnozie albo obejmować implementację najważniejszych poprawek.

Audyt wydajności

Pomiar wyjściowy, wskazanie ograniczeń i lista obszarów do analizy w kolejności priorytetów.

Profiling i diagnoza

Analiza renderowania, VFX, oświetlenia, modeli i systemów aplikacji odpowiedzialnych za koszt.

Implementacja optymalizacji

Zmiany w kosztownych systemach, jeżeli implementacja jest częścią zlecenia.

Warianty jakości i skalowanie

Warianty jakości dobrane do sprzętu docelowego i wymaganego wyglądu.

Kontekst technologiczny

Profilujemy narzędziami, które pokazują realny koszt.

Dokładny zestaw zależy od silnika i platformy, ale zasada jest stała: najpierw pomiar, potem zmiana.

Profiling Unreal Engine

Unreal Insights, GPU profiling, stat tools i analiza renderingu po stronie silnika.

Profiling Unity

Profiler, Frame Debugger i analiza runtime systemów odpowiedzialnych za koszt klatki.

Rendering i assety

Materiały, shadery, overdraw, lighting, meshe, LOD, instancing, tekstury i draw calle.

Wydajność VR / XR

Optymalizacja pod budżet klatki i ograniczenia konkretnego urządzenia VR lub XR.

Jak wygląda praca

Optymalizacja jest pętlą pomiarową.

01 Pomiar wyjściowy

Zapisujemy pomiar docelowej wersji aplikacji na ustalonym sprzęcie.

02 Izolacja

Sprowadzamy problem do systemów odpowiadających za mierzalny koszt.

03 Naprawa

Implementujemy zmiany o najwyższej wartości względem kosztu wizualnego i produkcyjnego.

04 Walidacja

Powtarzamy test i sprawdzamy, czy zmiana usunęła wskazane ograniczenie oraz nie pogorszyła innych elementów.

Powiązane realizacje

Wynik wymaga porównywalnych pomiarów.

Realizacje optymalizacyjne pokazujemy przez bottleneck, dane z profilera, ograniczenia produkcji i zastosowane rozwiązanie tam, gdzie wyniki można publikować.

Tłum sprite actorów w zarejestrowanym benchmarku runtime SpriteOrbit w Unity

Proof produktu · jedna zmierzona konfiguracja

Benchmark runtime SpriteOrbit — osobny test skali

1 000 000 przesłanych jednostek · Unity 6000.3.24f1 · Windows D3D12 · GTX 1050 Ti · 1920×1080 · średnio 109,9 FPS · 8,229 ms GPU. Wynik tej sceny i konfiguracji; branch rozwojowy poza release 1.0.0.

Kontekst benchmarku SpriteOrbit

Tri-State Ford VR Test Drive — Experience Behind Trueway

W 4Experience Bartosz Rozmus pracował przy level designie i optymalizacji projektu Google Daydream VR o restrykcyjnym budżecie realtime. Case study jasno oddziela zakres wkładu.

Zobacz case study optymalizacji VR

Przewodniki (EN)

Optymalizacja zaczyna się od danych z profilera.

Przewodnik pokazuje, jak zbierać dane o czasie klatki w Unreal Engine i wybierać zmiany na podstawie pomiarów.

Unreal Engine Performance Profiling: Production Workflow

Pomiar w Unreal Insights, analiza GPU i powtórzenie testu po zmianie.

Czytaj przewodnik (EN)

Powiązane usługi

Optymalizacja często przecina kilka specjalizacji.

Technical Art

Renderowanie, shadery i modele, gdy poprawa wydajności wymaga zmian w grafice.

Zobacz Technical Art

VFX

Pomiar i przebudowa efektów, gdy koszt generują cząstki, materiały lub nakładające się przezroczystości.

Zobacz VFX

Narzędzia i automatyzacja

Walidacja i tooling produkcyjny, który pomaga zapobiegać powrotowi kosztownych wzorców contentu.

Zobacz narzędzia

FAQ

Pytania o optymalizację.

Czy możecie zagwarantować konkretny wzrost FPS?

Nie. Odpowiedzialnie nie da się zagwarantować arbitralnego wyniku przed profilingiem. Można zdefiniować target, a potem zmierzyć rzeczywiste bottlenecki względem tego celu.

Czy możecie zrobić sam audit bez implementacji?

Tak. Diagnoza i priorytetowy plan optymalizacji mogą być osobnym zakresem.

Czy optymalizujecie projekty VR i Meta Quest?

Tak. VR i standalone XR wymagają bardziej restrykcyjnych decyzji wokół budżetu klatki i mogą być osobnym kontekstem optymalizacji.

Start projektu

Problem z performance bez jasnej przyczyny?

Wyślij silnik, docelowy sprzęt, aktualny frame rate lub frame-time i obszary, które wydają się kosztowne.

Porozmawiajmy o optymalizacji

Capture z profilera pomaga, ale krótki opis projektu wystarczy, żeby zacząć określać audit.

Porozmawiaj o tej usłudze