W sekcjach poniżej opisano zaawansowane tematy dotyczące używania, które nie są potrzebne do normalnego działania biblioteki.
Inne obsługiwane narzędzia do śledzenia
Tuning Fork obsługuje wiele śledzeń. Obsługiwane są ślady z tymi kluczami instrumentów:
- Czas między rozpoczęciem klatek (nazywany
PACED_FRAME_TIME
) - Czas pracy procesora: czas od rozpoczęcia klatki do zakończenia pracy procesora nad klatką (nazywany
CPU_TIME
). - Czas przetwarzania przez GPU: czas przetwarzania poprzedniej klatki przez GPU (nazywany
GPU_TIME
) - Surowy czas klatki, zdefiniowany jako maksimum czasu procesora i GPU (nazywany
RAW_FRAME_TIME
). Różnica między tą opcją aPACED_FRAME_TIME
polega na tym, że ta opcja nie obejmuje czasu oczekiwania uwzględnianego przez Swappy ani synchronizację pionową.
Klucze instrumentów znajdziesz w dokumentacji. Niektóre z tych kluczy są używane automatycznie po włączeniu biblioteki Android Frame Pacing, ale jeśli nie włączasz tej biblioteki, musisz używać ich jawnie.
Pobieranie parametrów wierności
Jeśli przekażesz wartość fidelity_params_callback
do TuningFork_init
w ustawieniach lub biblioteka jest w trybie skalowania, nie musisz wywoływać tej funkcji.
Ta funkcja kontaktuje się z serwerem, aby pobrać parametry wierności. Blokuje się do momentu wystąpienia jednego z tych zdarzeń:
- Parametry wierności są pobierane, a wartość zwracana to
TFERROR_OK
ireturnedParams
. W takim przypadku wszystkie kolejne dane o zmianach cen są powiązane zreturnedParams
. - Mija liczba milisekund równa
timeout_ms
, a funkcja zwraca wartośćTFERROR_TIMEOUT
. W tym przypadku wszystkie kolejne dane o zmianach cen są powiązane z wartościądefaultFidelityParams
.
Przed wywołaniem tej funkcji musisz wywołać funkcję TuningFork_init()
w osobnym wątku (zobacz TuningFork_startFidelityParamDownloadThread()
, aby poznać funkcję narzędziową, która to robi). Możesz ponownie wywołać tę funkcję, np. podczas wczytywania poziomu, aby ponownie pobrać parametry wierności z serwera. Dzięki temu możesz dynamicznie aktualizować parametry, zamiast wczytywać je tylko podczas uruchamiania. Jeśli zostaną pobrane nowe parametry wierności lub zostanie użyta nowa wartość domyślna, zostaną przesłane wszystkie poprzednie dane dotyczące ticków.