驗證層

驗證層可讓開發者檢查應用程式是否正確使用 Vulkan API。驗證層可於除錯與發行版本,以及匯出的專案中啟用。

備註

啟用驗證層會影響效能,僅於需要偵錯時再開啟即可。

Windows

安裝 Vulkan SDK https://vulkan.lunarg.com/sdk/home,其中已預設包含驗證層。安裝時不需啟用任何可選功能,只需安裝核心 Vulkan SDK 即可。安裝完成後無需重新啟動,但可能需關閉並重新開啟目前的終端機。

安裝 Vulkan SDK 後,使用 --gpu-validation 命令列參數 執行 Godot。你也可以加上 --gpu-abort,讓 Godot 在發生驗證錯誤時立即結束,避免系統當機。

macOS

警告

Godot 官方 macOS 版本**不**支援驗證層,因為這些是與 Vulkan SDK 靜態連結,必須改用動態連結。

實際上,在 macOS 上使用驗證層時,必須 使用以 use_volk=yes SCons 選項編譯的 Godot 版本。詳見 在 macOS 上編譯 。若要在匯出專案上測試驗證層,需重新編譯匯出樣板,並於 macOS 匯出設定中指定自訂樣板。

安裝 Vulkan SDK https://vulkan.lunarg.com/sdk/home,其中已預設包含驗證層。安裝時不需啟用任何可選功能,只需安裝核心 Vulkan SDK 即可。安裝完成後無需重新啟動,但可能需關閉並重新開啟目前的終端機。

安裝 Vulkan SDK 後,請執行以 use_volk=yes SCons 選項編譯的 Godot 執行檔,指定 --gpu-validation 命令列參數。你也可以加上 --gpu-abort,讓 Godot 在驗證錯誤發生時立即結束,避免系統當機。

Linux, *BSD

請從你的發行版套件庫安裝 Vulkan 驗證層:

vulkan-validation-layers

安裝驗證層後無需重新啟動,但可能需關閉並重新開啟目前的終端機。

安裝套件後,使用 --gpu-validation 命令列參數 執行 Godot。你也可以加上 --gpu-abort,讓 Godot 在驗證錯誤發生時立即結束,避免系統當機。

Android

在 Android 啟用驗證層後,開發者可於 adb logcat 輸出中看到錯誤與警告訊息。

iOS

目前 iOS 尚未 支援驗證層。

Web

Web 平台**不**支援驗證層,因為該平台不支援 Vulkan。

啟用驗證層

從官方原始碼建構驗證層

要編譯 Android 函式庫,請依照「Khronos」儲存庫 <https://github.com/KhronosGroup/Vulkan-ValidationLayers/blob/master/BUILD.md#building-on-android> 說明操作。編譯成功後,函式庫會位於 Vulkan-ValidationLayers/build-android/libs

複製函式庫

將函式庫從 Vulkan-ValidationLayers/build-android/libs 複製到 godot/platform/android/java/app/libs/debug/vulkan_validation_layers

你的 Godot 原始碼目錄樹應該如下所示:

godot
|-- platform
    |-- android
        |-- java
            |-- app
                |-- libs
                    |-- debug
                        |-- vulkan_validation_layers
                            |-- arm64-v8a
                            |-- armeabi-v7a
                            |-- x86
                            |-- x86_64

libs/debug/vulkan_validation_layers 子目錄不存在,請建立該目錄。

編譯並執行 Android 應用程式

已連結的驗證層會在 Android 除錯版本中自動載入與啟用。你可以利用 Godot 的 單鍵部署 功能,快速於驗證層啟用情境下測試你的專案。