Skip to content

Latest commit

 

History

History
53 lines (29 loc) · 4.26 KB

layers.adoc

File metadata and controls

53 lines (29 loc) · 4.26 KB

레이어(Layers)

레이어는 Vulkan 시스템을 보강하는 옵션 요소입니다. 레이어는 애플리케이션에서 하드웨어에 이르기까지 기존의 Vulkan 함수를 가로채고, 평가하고, 수정할 수 있습니다. 레이어 속성은 애플리케이션에서 vkEnumerateInstanceLayerProperties를 사용하여 쿼리할 수 있습니다.

레이어 사용

레이어는 공유 라이브러리로 패키지화되어 있으며, 로더에 의해 동적으로 읽혀 로더와 애플리케이션 사이에 삽입됩니다. 레이어를 사용하는 데 필요한 두 가지 요소는 바이너리 파일의 위치와 활성화할 레이어입니다. 사용할 레이어는 애플리케이션에서 명시적으로 활성화하거나 로더에 레이어를 사용하도록 지시하여 암시적으로 활성화할 수 있습니다. 암시적 명시적 레이어에 대한 자세한 내용은 로더 및 레이어 인터페이스에서 확인할 수 있습니다.

Vulkan SDK에는 각 플랫폼에서 레이어를 검색하고 구성하는 방법에 대해 매우 구체적으로 설명하는 레이어 구성 문서가 포함되어 있습니다.

Vulkan 구성 도구(Configurator Tool)

Windows, Linux, macOS의 개발자들은 Vulkan Configurator인 vkconfig를 사용하여 명시적 레이어를 활성화하고 암시적 레이어를 비활성화하고 그래픽 사용자 인터페이스에서 레이어 설정을 변경할 수 있습니다. Vulkan Configurator 사용에 대한 자세한 내용은 Vulkan Configurator 문서를 참조하세요.

장치 레이어 사용 중단(Device Layers Deprecation)

예전에는 인스턴스 레이어와 장치 레이어가 모두 있었지만, 디바이스 레이어는 Vulkan 초기에 사용 중단되어있으므로 피해야 합니다.

레이어 작성

로더와 레이어가 서로 통신하기로 합의하는 방식인 로더-레이어 인터페이스를 따르기만 하면 누구나 레이어를 만들 수 있습니다.

다양한 플랫폼

레이어를 암시적으로 로드하는 방법은 로더와 플랫폼에 따라 다릅니다.

Android

Android P (Android 9 / API level 28) 기준, 기기가 디버깅 가능한 상태(예: getprop ro.debuggable 이 /data/local/debug/vulkan을 찾게 됩니다.

Android P (Android 9 / API level 28)부터는 애플리케이션이 디버그 모드로 빌드되어있다면, 암시적 레이어는 ADB를 사용하여 푸시할 수 있습니다.

위의 옵션 외에는 암시적 레이어를 사용할 수 있는 방법이 없습니다.

Linux

Vulkan SDK에서는 Linux에서 암시적 레이어를 사용하는 방법을 설명합니다.

MacOS

Vulkan SDK에서는 MaxOS에서 암시적 레이어를 사용하는 방법을 설명합니다.

Windows

Vulkan SDK에서는 Windows에서 암시적 레이어를 사용하는 방법을 설명합니다.