Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Po pobraniu biblioteki na komputer i zarejestrowaniu jej w systemie kontroli źródła wprowadź w ustawieniach kompilacji projektu te zmiany:
Biblioteka statyczna
Aby połączyć projekt z biblioteką statyczną:
Dodaj gamesdk/include do ścieżek dołączania kompilatora.
Dołącz swappy/swappyGL.h, aby zintegrować usługę z OpenGL ES. W większości przypadków plik nagłówkowy zawiera wszystkie funkcje potrzebne do zintegrowania biblioteki z silnikiem.
Dodaj do ścieżek biblioteki linkera ścieżkę w tym formacie:
Na przykład: gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release
Dodaj -lswappy_static do polecenia linkera.
Zasoby wspólne
Powyższe kroki statycznie łączą się z wersją biblioteki Frame Pacing skompilowaną dla danej kombinacji ABI, poziomu API, NDK i STL. Jeśli kombinacja nie jest dostępna w Twoich ustawieniach, możesz zamiast tego połączyć się z biblioteką współdzieloną:
Aby zaktualizować ścieżki dołączania kompilatora i użyć odpowiedniego pliku nagłówkowego, wykonaj kroki 1 i 2 z poprzedniej sekcji.
Dodaj do ścieżek biblioteki linkera ścieżkę w tym formacie:
Statyczne łączenie zapewnia znacznie mniejszy rozmiar kodu, ponieważ nie musisz dołączać libswappy.so biblioteki współdzielonej.
Używanie CMake (tylko biblioteka statyczna)
Jeśli używasz CMake, w gamesdk/samples/bouncyball/app/CMakeLists.txtpliku w pobranej bibliotece znajdziesz przykładową konfigurację CMake. Zawiera 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żna 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 dodaj swappy jako zależność:
target_link_libraries(native-lib swappy ...)
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-08-26 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-08-26 UTC."],[],[],null,["After you've [downloaded the library](/games/sdk/frame-pacing/opengl) onto your\nmachine and have checked it into your source control system, make the following\nchanges to your project's build settings.\n\nStatic library\n\nDo the following steps to link your project to the static library:\n\n1. Add `gamesdk/include` to your compiler include paths.\n2. Include `swappy/swappyGL.h` for integration with OpenGL ES. In most cases, the header file contains all the functions you need to integrate the library into your engine.\n3. Add a path of the following form in your linker library paths:\n\n ```\n gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release\n ```\n\n For example: `gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release`\n4. Add `-lswappy_static` to your linker command.\n\nShared library\n\nThe above steps statically link against a version of the Frame Pacing library\ncompiled for the given ABI, API level, NDK and STL combination. If the combination\nis not available for your settings, you can instead link against the shared\nlibrary:\n\n1. Follow steps 1 and 2 from the previous section to update your compiler include paths and use the appropriate header file.\n2. Add a path of the following form in your linker library paths:\n\n ```\n gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release/lib/swappy\n ```\n3. Add `-lswappy` to your linker command.\n\nStatic linking will give you a much smaller code footprint as you don't need to\nbundle the `libswappy.so` shared library.\n\nUsing CMake (static library only)\n\nIf you are using CMake, see the `gamesdk/samples/bouncyball/app/CMakeLists.txt`\nfile in the [downloaded library](/games/sdk/frame-pacing/opengl)\nfor an example CMake configuration. It includes a utility file, `gamesdk/samples/gamesdk.cmake`,\nthat performs final checks, adds the proper compiler include paths and\ngenerates a target that you can use to link the library.\n\nTo use this utility, do the following:\n\n1. Include this file in your CMakeLists.txt: `include(\"`\u003cvar translate=\"no\"\u003epath/to/gamesdk\u003c/var\u003e`/samples/gamesdk.cmake\")`\n2. Call the `add_gamesdk_target` function with the folder containing the gamesdk: `add_gamesdk_target(PACKAGE_DIR `\u003cvar translate=\"no\"\u003epath/to/gamesdk\u003c/var\u003e`)`\n3. In your `target_link_libraries` for your native library, add `swappy` as a dependency: `\n target_link_libraries(native-lib swappy ...)\n `\n\n| **Note:** The path to the gamesdk used for `include` and `add_gamesdk_target` can either be absolute (for example, `/home/yourusername/gamesdk` or `C:\\Android\\gamesdk`) or relative to the `CMakeLists.txt` file.\n\nFor advanced usage of CMake, see the [`gamesdk.cmake` source file](https://android.googlesource.com/platform/frameworks/opt/gamesdk/+/refs/heads/master/samples/gamesdk.cmake)."]]