머신에 라이브러리를 다운로드하고 소스 제어 시스템에 체크인한 후 프로젝트의 빌드 설정을 다음과 같이 변경합니다.
정적 라이브러리
프로젝트를 정적 라이브러리에 연결하려면 다음 단계를 따르세요.
- 컴파일러 포함 경로에
gamesdk/include
를 추가합니다. - Vulkan과의 통합을 위해
swappy/swappyVk.h
를 포함합니다. 대부분의 경우 헤더 파일에는 라이브러리를 엔진에 통합하는 데 필요한 모든 함수가 포함되어 있습니다. 링커 라이브러리 경로에 다음 형식의 경로를 추가합니다.
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release
예:
gamesdk/libs/arm64-v8a_API24_NDK17_cpp_static_Release
링커 명령어에
-lswappy_static
를 추가합니다.
공유 라이브러리
위의 단계는 지정된 ABI, API 수준, NDK 및 STL 조합에 대해 컴파일된 Frame Pacing 라이브러리 버전과 정적으로 연결됩니다. 설정에 조합을 사용할 수 없다면 대신 공유 라이브러리에 연결할 수 있습니다.
- 이전 섹션의 1단계와 2단계를 따라 컴파일러 포함 경로를 업데이트하고 적절한 헤더 파일을 사용합니다.
링커 라이브러리 경로에 다음 형식의 경로를 추가합니다.
gamesdk/libs/architecture_APIapiLevel_NDKndkVersion_stlVersion_Release/lib/swappy
링커 명령어에
-lswappy
를 추가합니다.
정적 연결을 사용하면 libswappy.so
공유 라이브러리를 번들로 묶을 필요가 없기 때문에 코드 공간이 훨씬 더 줄어듭니다.
CMake 사용(정적 라이브러리만 해당)
CMake를 사용하는 경우 CMake 구성 예를 보려면 다운로드한 라이브러리의 gamesdk/samples/bouncyball/app/CMakeLists.txt
파일을 참고합니다. 여기에는 최종 검사를 실행하고, 적절한 컴파일러 포함 경로를 추가하며, 라이브러리를 연결하는 데 사용할 수 있는 타겟을 생성하는 유틸리티 파일인 gamesdk/samples/gamesdk.cmake
가 포함되어 있습니다.
이 유틸리티를 사용하려면 다음 단계를 따르세요.
- CMakeLists.txt에 이 파일 포함:
include("path/to/gamesdk/samples/gamesdk.cmake")
- gamesdk가 포함된 폴더를 사용하여
add_gamesdk_target
함수 호출:add_gamesdk_target(PACKAGE_DIR path/to/gamesdk)
- 네이티브 라이브러리의
target_link_libraries
에서swappy
를 종속 항목으로 추가:target_link_libraries(native-lib swappy ...)
CMake의 고급 사용법은 gamesdk.cmake
소스 파일을 참고하세요.