
샘플에 대한 문서는 새로운 Vulkan 문서 사이트에서 가장 잘 볼 수 있습니다. 이 문서는 Github에서 완전히 지원되지 않는 Asciidoc을 사용합니다.
Vulkan 샘플은 최적화 된 Vulkan 응용 프로그램을 개발하는 데 도움이되는 리소스 모음입니다.
Vulkan을 처음 사용하는 경우 API 샘플이 시작하기에 적합한 장소입니다. 또한 다음 링크가 유용 할 수 있습니다.
Vulkan 가이드
Vulkan에서 시작하십시오
성능 샘플은 실시간 프로파일 링 정보와 함께 권장 모범 사례를 보여줍니다. 그들은 더욱 발전하지만 더 많은 디테일 설명이 포함 된 자세한 자습서도 포함되어 있습니다.
Vulkan에서 모범 사례 권장 사항을 보여주는 리소스 모음 작성
모범 사례의 구현을 설명하고 성능 분석 안내서를 포함하는 자습서 작성
참조 자료 및 Vulkan을 사용한 고급 실험을위한 샌드 박스로 사용할 수있는 프레임 워크를 만듭니다.
이 저장소에서 사용 가능한 모든 샘플의 목록
프로젝트 기본 사항
통제 수단
디버그 창
샘플을 만듭니다
Vulkan Essentials
Vulkan은 Opengl ES와 어떻게 비교됩니까? Vulkan을 목표로 할 때 무엇을 기대해야합니까?
기타
드라이버 버전
메모리 제한
전제 조건 : git 대형 파일 스토리지 (Git-LF)가있는 git.
다음 명령을 사용하여 서브 모듈로 레포를 복제하십시오.
Git Clone-recurse-submodules https://github.com/khronosgroup/vulkan-samples.git CD vulkan 샘플
아래 플랫폼의 빌드 지침을 따르십시오.
메모 | 전체 저장소는 매우 크고 일부 ISP는 클론이 제작되는 동안 Github에 강력한 연결을 제공하는 데 어려움이있는 것으로 보입니다. KB/S의 수십에서보고 된 속도로 서브 모듈 다운로드 또는 치명적인 타임 아웃 오류가 발생하는 경우 자체 네트워킹 설정에서 잘못된 것이 아니라 ISP의 내부 네트워크 내에서 GitHub에 대한 네트워크 라우팅 문제로 인한 것일 수 있습니다. ISP가 그러한 문제가 존재한다는 것을 인정하는 것은 매우 어려울 수 있으며, 문제를 해결하기는 훨씬 적습니다. 하나의 해결 방법은 서브 모듈 다운로드 전에 SSH 프로토콜을 사용하도록 저장소를 전환하는 것입니다. git clone [email protected]:KhronosGroup/Vulkan-Samples.git
cd Vulkan-Samples
perl -i -p -e ' s|https://(.*?)/|git@1:|g ' .gitmodules
git submodule sync
git submodule update이 연결 문제를 수행하는 경우 좋은 대안이 될 수 있지만 SSH 프로토콜을 사용하려면 GitHub SSH 키 인증 설정이 있어야합니다. 자세한 내용은 SSH를 사용하여 GitHub에 연결하십시오. 따라서 저장소 기본값으로 구현할 수있는 솔루션이 아닙니다. 도움이 될 수있는 또 다른 옵션은 VPN 서비스를 통해 GitHub를 실행하는 것입니다. |
Windows- 빌드 가이드
Linux- 빌드 가이드
안드로이드 - 빌드 가이드
MACOS- 빌드 가이드
iOS- 빌드 가이드
다음은 Vulkan 샘플을 구성하고 실행하는 방법에 대한 명령 줄 사용을 보여줍니다.
저장소의 루트 디렉토리에서 샘플을 실행하고 있는지 확인하십시오. 그렇지 않으면 샘플이 자산을 찾을 수 없습니다. ./build/app/bin/<BuildType>/<ARCH>/VULKAN_SAMPLES
# 전체 사용을 위해 vulkan_samples -help # 부부 명령 사용 용 사용 vulkan_samples <sub_command> -help # 스와 체인 이미지 샘플 실행 vulkan_samples 샘플 swapchain_images # 5000 프레임의 벤치 마크 모드에서 AFBC 샘플 실행 vulkan_samples 샘플 afbc-벤치 마크-스톱 -Frame 5000 # headless_surface를 사용하여 NBody Compute 실행 및 프레임 5의 스크린 샷을 찍습니다. # 참고 : headless_surface는 vk_ext_headless_surface를 사용합니다. # 이것은 표면과 스왑 체인을 만들지 만 현재는 OP가 될 것입니다. # 확장자는 SwiftShader (https://github.com/google/swiftshader)가 지원합니다. # GPU가없는 환경에서 컨텐츠를 신속하게 테스트 할 수 있습니다. vulkan_samples 샘플 compute_nbody -headless_surface -screenshot 5 # 각 구성에서 모든 성능 샘플을 10 초 동안 실행합니다. vulkan_samples 배치 -카테고리 성능 -기간 10 # Android 장치에서 Swapchain 이미지 샘플을 실행합니다 adb shell am start -activity -n com.khronos.vulkan_samples/com.khronos.vulkan_samples.samplelauncherActivity -e 샘플 swapchain_images
라이센스를 참조하십시오.
이 프로젝트에는 여러 타사 종속성이 있습니다
이 프로젝트는 Vulkan 샘플 자산의 자산을 사용합니다. 각각 자체 라이센스가 있습니다.
Vulkan은 Khronos Group Inc.의 등록 상표입니다.
Sascha Willems와 Adam Sawicki의 추가 기여와 함께 Khronos에 기부했습니다. 전체 기고자 목록은 기고자를 참조하십시오.
또한 기여 가이드 라인에 대한 기여도를 참조하십시오.
Mali GPU 모범 사례 : 효율적인 API 사용을위한 권장 사항이있는 문서