使用 Vulkan 處理圖形
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
Vulkan 是新型的跨平台 3D 圖形 API,旨在盡可能減少裝置圖形處理硬體與遊戲間的抽象化情形。雖說 Vulkan 是 Android 的主要低階圖形 API,可取代 OpenGL ES,但 Android 仍支援 OpenGL ES,只是我們不再積極開發相關功能。與 OpenGL ES 相較,Vulkan 具有下列優點:
- 更有效率的架構,圖形驅動程式的 CPU 負擔較小
- 全新的最佳化策略,可提升 CPU 效能
- OpenGL ES 未提供的全新圖形處理功能,例如無繫結 API 和光線追蹤
Vulkan 適用於 Android 7 (API 級別 24) 以上版本。此外,凡是搭載 Android 10 (API 級別 29) 以上版本的 64 位元 Android 裝置,皆可支援 Vulkan 1.1。就目前使用中的 Android 裝置而言,有 85% 都支援 Vulkan。Android 基準設定檔會為支援 Vulkan 的裝置定義最低需求的功能組合。
Vulkan 有助於打造外觀與效能俱佳的遊戲,而且能夠完整發揮新型圖形處理硬體的潛力。在相容的裝置上,Vulkan 可供 Android UI 轉譯架構使用。Unity 和 Unreal 遊戲引擎的現行版本都選擇 Vulkan 做為相容 Android 裝置的預設轉譯器。ANGLE 專案也以 Vulkan 為基礎,導入與 OpenGL ES API 相容的實作項目。
開始使用
C/C++
如要瞭解如何在 Android 上的 C/C++ 遊戲引擎中使用 Vulkan,請參閱開始在 Android 上使用 Vulkan。
此外,Native Development Kit (NDK) 說明文件中也有適用於非遊戲開發人員的通用 Vulkan 章節,其中包括下列主題:
遊戲引擎
關於 ANGLE
Vulkan 是 GPU 偏好的 Android 介面。Android 15 包含 ANGLE 做為選用層,可在 Vulkan 上執行 OpenGL ES。改用 ANGLE 後,系統會標準化 Android OpenGL 實作來提升相容性,在某些情況下也能提升效能。
只要在開發人員選項中啟用 ANGLE,即可使用各種 Android 15 裝置,透過 ANGLE 測試 OpenGL ES 應用程式穩定性和效能。在 Android 15 中,依序前往「開發人員選項」→「實驗功能:啟用 ANGLE」。
Vulkan 發展藍圖中的 Android ANGLE
回報 ANGLE 相關問題
如果在使用 ANGLE 時遇到任何問題,請透過 Issue Tracker 提交回報給我們。
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2024-06-20 (世界標準時間)。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"缺少我需要的資訊"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"過於複雜/步驟過多"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"過時"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻譯問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"示例/程式碼問題"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"容易理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"確實解決了我的問題"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u4e0a\u6b21\u66f4\u65b0\u6642\u9593\uff1a2024-06-20 (\u4e16\u754c\u6a19\u6e96\u6642\u9593)\u3002"}
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2024-06-20 (世界標準時間)。"]]