Skip to content

Latest commit

 

History

History
51 lines (27 loc) · 4.4 KB

layers.adoc

File metadata and controls

51 lines (27 loc) · 4.4 KB

レイヤ

レイヤは、Vulkan システムを補強するオプション要素です。レイヤは、アプリケーションからハードウェアに至るまで、既存の Vulkan 関数をインターセプトし、評価し、修正することができます。レイヤのプロパティは、アプリケーションから vkEnumerateInstanceLayerProperties でクエリできます。

レイヤの使い方

レイヤは共有ライブラリとしてパッケージ化されており、ローダによって動的に読み込まれ、ローダとアプリケーションの間に挿入されます。レイヤを使用するために必要なのは、バイナリファイルの場所と、どのレイヤを有効にするかという2点です。使用するレイヤには、アプリケーションが明示的に使用するものと、ローダに指示して暗黙的に使用するものがあります。暗黙的なレイヤと明示的なレイヤの詳細については、ローダとレイヤのインターフェイスを参照してください。

Vulkan SDK には、各プラットフォームでのレイヤの検出と設定方法に特化したレイヤ設定ドキュメントが含まれています。

Vulkan Configurator ツール

Windows、Linux、macOS の開発者は、Vulkan Configurator(vkconfig)を使用して、GUI から明示的なレイヤの有効化、暗黙的なレイヤの無効化、およびレイヤ設定の変更を行うことができます。Vulkan Configurator の使用に関する詳細は、Vulkan SDK の Vulkan Configurator ドキュメントを参照してください。

デバイスレイヤの非推奨化

かつてはインスタンスレイヤとデバイスレイヤの両方がありましたが、デバイスレイヤは Vulkan の初期段階で非推奨となっているため、避けてください。

レイヤの作成

ローダとレイヤが相互に通信することに同意する方法であるローダからレイヤへのインターフェイスに従う限り、誰でもレイヤを作成することができます。

プラットフォームのバリエーション

暗黙的にレイヤを読み込む方法は、ローダやプラットフォームによって異なります。

Android

Android P(Android 9 / APIレベル28)では、デバイスがデバッグ可能な状態にあり、getprop ro.debuggable1を返した場合、ローダは /data/local/debug/vulkan を検索します。

Android P (Android 9 / API level 28)からは、アプリケーションがデバッグモードでビルドされている場合、ADB を使って暗黙のレイヤをプッシュできるようになりました。

暗黙的なレイヤを使用するには、上記のオプション以外に方法はありません。

Linux

Vulkan SDK では、Linux で暗黙のレイヤを使用する方法が説明されています。

MacOS

Vulkan SDK では、MacOS で暗黙のレイヤを使用する方法が説明されています。

Windows

Vulkan SDK では、Windows で暗黙のレイヤを使用する方法が説明されています。