W sekcjach poniżej opisujemy, jak zintegrować bibliotekę Tuning Fork z zestawem narzędzi i jak korzystać z funkcji, które udostępnia ta biblioteka. Biblioteka jest dostępna jako biblioteka statyczna lub współdzielona w bibliotekach AGDK.
Po pobraniu pakietu SDK na komputer i zarejestrowaniu go w systemie kontroli wersji wprowadź w ustawieniach kompilacji projektu zmiany wymienione w sekcjach poniżej.
Zanim zaczniesz
Przed zintegrowaniem biblioteki Tuning Fork zintegruj bibliotekę Android Frame Pacing. W takim przypadku biblioteka Tuning Fork może automatycznie rejestrować czas klatki. Nie musisz samodzielnie wywoływać funkcji tick.
Więcej informacji znajdziesz w tych przewodnikach po integracji:
- Integrowanie funkcji Android Frame Pacing z renderowaniem OpenGL
- Integracja funkcji Android Frame Pacing z renderowaniem Vulkan
Biblioteka statyczna
Aby połączyć projekt z biblioteką statyczną:
- Dodaj
gamesdk/include
do ścieżek dołączania kompilatora. Dodaj do ścieżek biblioteki linkera ścieżkę w tym formacie:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release
Sprawdź
gamesdk/libs
i wybierz ten, który najlepiej pasuje do Twojego łańcucha narzędzi (np.gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release
).Dodaj
-ltuningfork_static
do polecenia linkera (oraz-lswappy_static
, jeśli masz zintegrowaną bibliotekę Android Frame Pacing).Dodaj uprawnienie
INTERNET
do plikuAndroidManifest.xml
:<uses-permission android:name="android.permission.INTERNET" />
Zasoby wspólne
Czynności opisane w sekcji biblioteka statyczna statycznie łączą się z wersją biblioteki Tuning Fork skompilowaną dla danej kombinacji ABI, poziomu interfejsu API, NDK i STL. Jeśli ta kombinacja nie jest dostępna w Twoich ustawieniach, możesz zamiast tego utworzyć link do biblioteki udostępnionej:
- Dodaj
gamesdk/include
do ścieżek dołączania kompilatora. Dodaj do ścieżek biblioteki linkera ścieżkę w tym formacie:
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release/lib/tuningfork
Dodaj
-ltuningfork
do polecenia linkera (oraz-lswappy
, jeśli masz zintegrowaną bibliotekę Android Frame Pacing).Dodaj uprawnienie
INTERNET
do plikuAndroidManifest.xml
:<uses-permission android:name="android.permission.INTERNET" />
Statyczne łączenie zapewnia znacznie mniejszy rozmiar kodu, ponieważ nie musisz dołączać biblioteki współdzielonej libtuningfork.so
.
Używanie CMake (tylko biblioteka statyczna)
Jeśli używasz CMake, w pliku gamesdk/samples/tuningfork/insightsdemo/app/CMakeLists.txt
znajdziesz przykładową konfigurację CMake. Zawiera on plik narzędziowy gamesdk/samples/gamesdk.cmake
, który przeprowadza końcowe sprawdzenie, dodaje odpowiednie ścieżki dołączania kompilatora i generuje element docelowy, którego możesz użyć do połączenia biblioteki.
Aby użyć tego narzędzia:
- Dołącz ten plik do pliku
CMakeLists.txt
:include("path/to/gamesdk/samples/gamesdk.cmake")
- Wywołaj funkcję
add_gamesdk_target
z folderem zawierającym pakiet SDK do gier:add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)
- W pliku
target_link_libraries
biblioteki natywnej dodajtuningfork
jako zależność (iswappy
, jeśli zintegrowano bibliotekę Android Frame Pacing):target_link_libraries(native-lib swappy tuningfork ...)
Zaawansowane informacje o używaniu CMake znajdziesz w gamesdk.cmake
pliku źródłowym.