# Vulkan API の使用の許可または拒否

> Explains how to allow or deny Android devices to run your Unity application with Vulkan API using Android Vulkan Allow and Deny Filter Lists.

Unity ではデフォルトで、Vulkan グラフィックス API で Unity アプリケーションが正しく実行されないことがわかっている Android デバイスの使用は制限されます。ただし、テストの結果、一部の制限付きデバイスで、実際には OpenGLES3 API よりも Vulkan API の方がアプリケーションの実行が優れていることが判明する場合があります。一方で、一部のデバイスでの Vulkan API を使用したアプリケーション実行をさらに制限することもできます。**Android Vulkan の許可および拒否フィルターリスト**を使用すると、Vulkan API でのアプリケーション実行を許可するデバイスを微調整できます。

**Android Vulkan 許可フィルターリスト**を使用することで、アプリケーション実行のデフォルトグラフィックス API としての Vulkan の使用を特定のデバイスに許可できます。または、**Android Vulkan 拒否フィルターリスト**を使用して、Vulkan API を使用してアプリケーションを実行しないように特定のデバイスを制限できます。どちらのタイプのリストでも、以下のパラメーターに値を指定して、デバイスまたはデバイスのセットを識別できます。

* Vendor
* Device Name
* Brand
* Product Name
* Android OS version
* Vulkan API version
* Driver version

Vulkan API version と Driver version を除くすべてのパラメーターに C# 正規表現を使用できます。例えば、`[A|a]dreno .*6[0-9][0-9]`、`Qual*`、`[S|s]amsung` などです。無効な正規式のエラーはUnity エディターに表示されます。

Vulkan API でアプリケーションの実行を許可するか拒否するかを決定するには、デバイスのプロパティがすべてのパラメーター値 (論理AND) と一致する必要があります。許可フィルターリストは、指定されたパラメーター値以上の Vulkan API とドライバーバージョンを持つデバイスをすべて示します。例えば、GPU ベンダーを Qualcomm、GPU モデル名を Adreno、Vulkan API バージョンを `1.1.128` と指定した場合、許可フィルターリストによって、Qualcomm Adreno GPU を搭載し、Vulkan API バージョンが `1.1.128` 以上のデバイスがすべて許可されます。

拒否フィルターリストには、指定されたパラメーター値以下の Vulkan API とドライバーバージョンを持つデバイスをすべて示します。例えば、GPU ベンダーを ARM、GPU モデル名をMali、Vulkan ドライバーバージョンを `0.676.0` と指定した場合、拒否フィルターリストによって、ARM Mali GPU の Vulkan ドライバーバージョンが `0.676.0` 以下のデバイスがすべて制限されます。

**ノート**: デバイスのグループに対して Vulkan の使用を制限することができますが、そのグループの特定のデバイスが Vulkan を引き続き使用できるようにすることも、許可フィルターリストによって可能です。

Android デバイスで常に Vulkan API を使用できるようにするには、以下のステップに従います。

1. メインメニューから、**Edit** > **Project Settings** > **Player** > **Android settings** > **Other Settings** の順に移動します。
2. **Vulkan Settings** セクションで、**Android Vulkan Allow Filter List** に移動し、折りたたみ (三角形) を使用して展開します。
3. **Add** (+) ボタンを選択して、Vulkan API の使用を許可する Android デバイスの仕様を追加します。パラメーターのセットが表示されます。
4. 使用可能なパラメーターにデバイス仕様を入力します。すべてのパラメーターは任意です。パラメーターの説明については、[Android Player 設定](/engine/6000.0/manual/platform-specific/android/getting-started/class-player-settings.md#DenyFilterList)を参照してください。

パラメーター値で定義された仕様を満たす Android デバイスでは、常に Unity アプリケーション用の Vulkan API が使用されます。

Android デバイスでの Vulkan API の使用を制限するには、**Android Vulkan Deny Filter List** を使用し、先ほどと同じステップに従います。

**ノート**:

* 許可および拒否のフィルターリスト両方で同じ値を設定すると、Unity はそれらの値で定義された条件を無視します。
* 制限されたデバイスは、プレイヤー設定で設定されたフォールバックグラフィックス API を使用してアプリケーションを実行します。フォールバック API を使用できない場合、アプリケーションが起動しません。
* [androidVulkanDenyFilterList](/engine/6000.0/script-reference/unity-editor/player-settings/android/android-vulkan-deny-filter-list.md) および [androidVulkanAllowFilterList](/engine/6000.0/script-reference/unity-editor/player-settings/android/android-vulkan-allow-filter-list.md) API を使用して、Android デバイスでの Vulkan API の使用を許可または制限することもできます。

## 追加リソース##default-minimum-specifications

* [正規表現](https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expressions)
