이 프로젝트는 더 이상 인텔에서 유지 관리하지 않습니다.
인텔은 이 프로젝트에 대한 유지 관리, 버그 수정, 새 릴리스 또는 업데이트를 포함하되 이에 국한되지 않는 개발 및 기여를 중단했습니다.
인텔은 더 이상 이 프로젝트에 대한 패치를 받아들이지 않습니다.
이 프로젝트를 지속적으로 사용해야 하거나 독립적으로 개발하는 데 관심이 있거나 오픈 소스 소프트웨어 커뮤니티에 대한 패치를 유지하려는 경우 이 프로젝트의 자체 포크를 만드십시오.
파웰 라핀스키
"비밀 없는 API: Vulkan 소개" 튜토리얼의 소스 코드 예는 다음에서 찾을 수 있습니다.
https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-preface
많은 질문에 인내심을 갖고 답변해 주시고 도움을 주신 Slawomir Cygan에게 특별히 감사드립니다!
Vulkan 드라이버 및 기타 관련 리소스는 https://www.khronos.org/vulkan/에서 찾을 수 있습니다.
튜토리얼에서는 애플리케이션 내에서 Vulkan을 사용하는 데 필요한 모든 리소스(함수 포인터 로딩, Vulkan 인스턴스 생성, 물리적 장치 열거, 논리적 장치 생성 및 대기열 설정)를 생성하는 방법을 제시합니다.
이 강의에서는 스왑 체인 생성에 중점을 둡니다. 스왑 체인을 사용하면 Vulkan에서 생성된 이미지를 애플리케이션 창에 표시할 수 있습니다. 무엇이든 표시하기 위해 간단한 명령 버퍼가 할당되고 기록됩니다.
여기에서는 임의의 형상을 렌더링하는 데 필요한 렌더 패스, 프레임 버퍼 및 파이프라인 개체를 소개합니다. 또한 GLSL 셰이더를 SPIR-V로 변환하고 여기에서 셰이더 모듈을 생성하는 방법도 보여줍니다.
이 튜토리얼에서는 정점 속성을 설정하고 정점 데이터로 버퍼를 바인딩하는 방법을 보여줍니다. 여기서는 (버퍼에서 사용되는) 메모리 개체와 울타리도 만듭니다.
이 예에서는 준비 리소스가 제공됩니다. CPU와 GPU 간 데이터 복사를 위한 중간 리소스로 사용됩니다. 이러한 방식으로 렌더링과 관련된 리소스는 장치 로컬(매우 빠른) 메모리에만 바인딩될 수 있습니다.
이 튜토리얼에서는 셰이더 프로그램에서 텍스처(또는 기타 셰이더 리소스)를 사용하기 위해 필요한 리소스와 리소스를 준비하는 방법을 보여줍니다.
여기에서는 디스크립터 세트에 균일한 버퍼를 추가하는 방법, 이를 통해 투영 행렬에 대한 데이터를 제공하는 방법 및 셰이더 내에서 사용하는 방법을 보여줍니다.