This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Defold zawiera zestaw narzędzi profilujących zintegrowanych z silnikiem i procesem budowania. Służą one do wykrywania problemów z wydajnością i użyciem pamięci. Wbudowane profilery są dostępne tylko w buildach debug. Profiler klatek używany w Defold to Remotery profiler firmy Celtoys.
Buildy debug zawierają wizualny profiler działający w czasie rzeczywistym, który wyświetla bieżące informacje jako nakładkę na uruchomioną aplikację:
function on_reload(self)
-- Włącz wizualny profiler po szybkim przeładowaniu.
profiler.enable_ui(true)
end

Wizualny profiler udostępnia kilka funkcji, których można użyć do zmiany sposobu prezentacji danych:
profiler.set_ui_mode()
profiler.set_ui_view_mode()
profiler.view_recorded_frame()
Więcej informacji o funkcjach profilera znajdziesz w dokumentacji API profilera.
Podczas uruchamiania builda debug gry można otworzyć w przeglądarce interaktywny profiler webowy.
Profiler klatek pozwala analizować grę podczas działania i szczegółowo badać poszczególne klatki. Aby otworzyć profiler:
Profiler klatek jest podzielony na kilka sekcji, z których każda pokazuje inny widok uruchomionej gry. Naciśnij przycisk Pause w prawym górnym rogu, aby tymczasowo zatrzymać odświeżanie widoków przez profiler.

Gdy używasz jednocześnie wielu urządzeń docelowych, możesz ręcznie przełączać się między nimi, zmieniając pole Connection Address u góry strony tak, aby odpowiadało adresowi URL profilera Remotery widocznemu w konsoli po uruchomieniu celu:
INFO:ENGINE: Defold Engine 1.3.4 (80b1b73)
INFO:DLIB: Initialized Remotery (ws://127.0.0.1:17815/rmt)
INFO:ENGINE: Loading data from: build/default



Wartość LuaMem to ilość pamięci w kilobajtach używana przez maszynę wirtualną Lua, raportowana przez garbage collector Lua. Memory to ilość pamięci w kilobajtach używana przez silnik.
Profiler zasobów pozwala analizować grę podczas działania i szczegółowo badać użycie zasobów. Aby otworzyć profiler:
Profiler zasobów jest podzielony na 2 sekcje: jedna pokazuje hierarchiczny widok kolekcji, obiektów gry i komponentów aktualnie utworzonych w grze, a druga pokazuje wszystkie aktualnie załadowane zasoby.

Podczas bundlowania gry możesz utworzyć raport budowania. Jest to bardzo przydatne, jeśli chcesz dobrze zorientować się w rozmiarze wszystkich zasobów, które wchodzą w skład bundla gry. Po prostu zaznacz pole Generate build report podczas bundlowania gry.

Narzędzie do budowania utworzy plik o nazwie “report.html” obok bundla gry. Otwórz ten plik w przeglądarce internetowej, aby przejrzeć raport:

Sekcja Overview pokazuje ogólny podział rozmiaru projektu według typu zasobu.
Resources pokazuje szczegółową listę zasobów, którą możesz sortować według rozmiaru, współczynnika kompresji, szyfrowania, typu i nazwy katalogu. Użyj pola “search”, aby filtrować wyświetlane wpisy zasobów.
Sekcja Structure pokazuje rozmiary na podstawie tego, jak zasoby są zorganizowane w strukturze plików projektu. Wpisy są kolorowane od zielonego (lekkie) do niebieskiego (ciężkie) zgodnie ze względnym rozmiarem zawartości pliku i katalogu.
Oprócz wbudowanych narzędzi dostępny jest szeroki wybór darmowych, wysokiej jakości narzędzi do śledzenia i profilowania. Oto kilka z nich:
Pamiętaj, że profilery napisane w czystym Lua dodają dość duży narzut przy każdym instalowanym hooku. Z tego powodu warto podchodzić z ostrożnością do profili czasowych uzyskanych takim narzędziem. Profilery zliczające są jednak wystarczająco dokładne.

To narzędzie pozwala analizować uruchomioną aplikację Defold i sprawdzać, jak korzysta z OpenGL. Umożliwia śledzenie wywołań funkcji OpenGL, ustawianie breakpointów na funkcjach OpenGL, badanie zasobów aplikacji (tekstur, programów, shaderów itd.), podgląd zawartości buforów i sprawdzanie innych aspektów stanu OpenGL.

Zestaw narzędzi profilowania, który zbiera dane w czasie rzeczywistym o CPU, pamięci i aktywności sieciowej gry. Możesz wykonywać próbkowe śledzenie wywołań metod, zrzuty sterty, podglądać alokacje pamięci i analizować szczegóły plików przesyłanych przez sieć. Korzystanie z tego narzędzia wymaga ustawienia android:debuggable="true" w “AndroidManifest.xml”.

Uwaga: od Android Studio 4.1 można też uruchamiać narzędzia profilowania bez uruchamiania Android Studio.
To zestaw narzędzi, który pozwala inspekcjonować, dostosowywać i odtwarzać wywołania z aplikacji do sterownika graficznego. Aby użyć tego narzędzia, trzeba ustawić android:debuggable="true" w “AndroidManifest.xml”.
