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 include strumenti di profilazione integrati nel motore e nella pipeline di build. Aiutano a individuare problemi di prestazioni, memoria e utilizzo delle risorse. I dati di profilazione raccolti durante l’esecuzione possono essere utilizzati da diversi strumenti:
L’impostazione Profiler nell’App Manifest controlla se il codice del profilatore viene collegato alla build. Debug Only è l’opzione predefinita, None lo esclude e Always lo include sia nelle build di debug sia in quelle di release. Le impostazioni profiler in game.project controllano il comportamento durante l’esecuzione, ma non reintegrano nella build il codice del profilatore escluso. In particolare, Track CPU controlla il campionamento dell’utilizzo della CPU ed è indipendente dalla scelta effettuata nell’App Manifest.
Le build che includono il supporto alla profilazione dispongono di un profilatore visivo a runtime che mostra informazioni in tempo reale sovrapposte all’applicazione in esecuzione:
function on_reload(self)
-- Toggle the visual profiler on hot reload.
profiler.enable_ui(true)
end

Il profilatore visivo offre diverse funzioni che permettono di modificare il modo in cui presenta i dati:
profiler.set_ui_mode()
profiler.set_ui_view_mode()
profiler.view_recorded_frame()
Consulta il riferimento API del profilatore per ulteriori informazioni sulle funzioni del profilatore.
Durante l’esecuzione di una build desktop o mobile che include il supporto alla profilazione, puoi accedere tramite un browser ai profilatori interattivi dei fotogrammi e delle risorse.
Il profilatore dei fotogrammi consente di campionare il gioco durante l’esecuzione e analizzare in dettaglio i singoli fotogrammi. Per accedere al profilatore:
Il profilatore dei fotogrammi è suddiviso in diverse sezioni, che offrono viste differenti del gioco in esecuzione. Premi il pulsante Pause nell’angolo in alto a destra per interrompere temporaneamente l’aggiornamento delle viste.

Quando usi più destinazioni contemporaneamente, puoi passare manualmente dall’una all’altra modificando il campo Connection Address nella parte superiore della pagina, in modo che corrisponda all’URL del profilatore Remotery mostrato nella console all’avvio della destinazione:
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



Il valore LuaMem è la quantità di memoria in kilobyte utilizzata dalla macchina virtuale Lua, come riportata dal garbage collector di Lua. Memory è la quantità di memoria in kilobyte utilizzata dal motore.
L’impostazione Max Sample Count limita il numero di campioni del profilatore registrati per thread e per fotogramma. Se il profilatore segnala il superamento del limite, controlla prima che nel codice di profilazione delle estensioni native ogni inizio di ambito abbia una fine corrispondente. Aumenta il limite solo quando un fotogramma valido contiene più ambiti di quanti ne consenta il limite configurato.
Il profilatore delle risorse consente di ispezionare il gioco durante l’esecuzione e analizzare in dettaglio l’utilizzo delle risorse. Per accedere al profilatore:
Il profilatore delle risorse è suddiviso in 2 sezioni: una mostra una vista gerarchica delle collezioni, degli oggetti di gioco e dei componenti attualmente istanziati nel gioco, mentre l’altra mostra tutte le risorse attualmente caricate.

HTML5 utilizza la Web Performance API al posto di Remotery per la sequenza temporale del browser. Per registrare gli ambiti di Defold:
profiler.performance_timeline_enabled) in game.project.Questa sequenza temporale del browser è separata sia dal profilatore visivo integrato nel gioco sia dal profilatore web interattivo Remotery.
Quando crei il bundle del gioco, puoi scegliere di generare un report di build. È molto utile per comprendere le dimensioni di tutti gli asset inclusi nel bundle del gioco. Basta selezionare la casella Generate build report durante la creazione del bundle.

Lo strumento di build produce un file chiamato report.html accanto al bundle del gioco. Apri il file in un browser web per consultare il report:

La sezione Overview offre una panoramica visiva delle dimensioni del progetto, suddivise per tipo di risorsa.
La sezione Resources mostra un elenco dettagliato delle risorse, che puoi ordinare per dimensioni, rapporto di compressione, crittografia, tipo e nome della directory. Usa il campo “search” per filtrare le risorse visualizzate.
La sezione Structure mostra le dimensioni in base all’organizzazione delle risorse nella struttura dei file del progetto. Le voci sono contrassegnate da colori che vanno dal verde (leggero) al blu (pesante), in base alle dimensioni relative dei file e del contenuto delle directory.
Oltre agli strumenti integrati, sono disponibili numerosi strumenti gratuiti di alta qualità per il tracciamento e la profilazione. Eccone una selezione:
Tieni presente che i profilatori scritti interamente in Lua aggiungono un notevole carico a ogni hook che installano. Per questo motivo, valuta con cautela i profili temporali ottenuti con strumenti di questo tipo. I profili basati sui conteggi sono invece sufficientemente accurati.

Questo strumento consente di ispezionare un’applicazione Defold in esecuzione e vedere come utilizza OpenGL. Permette di tracciare le chiamate alle funzioni OpenGL, impostare punti di interruzione sulle funzioni OpenGL, esaminare le risorse dell’applicazione (texture, programmi, shader ecc.), visualizzare il contenuto dei buffer e controllare altri aspetti dello stato di OpenGL.

Un insieme di strumenti di profilazione che acquisisce in tempo reale dati sull’utilizzo della CPU e della memoria e sull’attività di rete del gioco. Puoi tracciare i metodi eseguiti dal codice mediante campionamento, acquisire dump dell’heap, visualizzare le allocazioni di memoria e ispezionare i dettagli dei file trasmessi in rete. Per usare lo strumento devi impostare android:debuggable="true" in AndroidManifest.xml.

Nota: da Android Studio 4.1 è possibile anche eseguire gli strumenti di profilazione senza avviare Android Studio.
È un insieme di strumenti che consente di ispezionare, modificare e rieseguire le chiamate di un’applicazione a un driver grafico. Per usare lo strumento devi impostare android:debuggable="true" in AndroidManifest.xml.
