GPU
注意:此功能在 Web Workers 中可用。
WebGPU API 的 GPU 介面是使用 WebGPU 的起點。它可用於返回一個 GPUAdapter,您可以透過它來請求裝置、配置特性和限制等。
當前上下文的 GPU 物件可透過 Navigator.gpu 或 WorkerNavigator.gpu 屬性訪問。
例項屬性
wgslLanguageFeatures只讀-
一個
WGSLLanguageFeatures物件,用於報告 WebGPU 實現支援的 WGSL 語言擴充套件。
例項方法
requestAdapter()-
返回一個
Promise,該 Promise 會解析為GPUAdapter物件例項。透過該物件,您可以請求一個GPUDevice,它是使用 WebGPU 功能的主要介面。 getPreferredCanvasFormat()-
返回當前系統上用於顯示 8 位深度、標準動態範圍內容的最佳畫布紋理格式。
示例
請求介面卡和裝置
js
async function init() {
if (!navigator.gpu) {
throw Error("WebGPU not supported.");
}
const adapter = await navigator.gpu.requestAdapter();
if (!adapter) {
throw Error("Couldn't request WebGPU adapter.");
}
const device = await adapter.requestDevice();
// …
}
使用最佳紋理格式配置 GPUCanvasContext
js
const canvas = document.querySelector("#gpuCanvas");
const context = canvas.getContext("webgpu");
context.configure({
device,
format: navigator.gpu.getPreferredCanvasFormat(),
alphaMode: "premultiplied",
});
規範
| 規範 |
|---|
| WebGPU # gpu-interface |
瀏覽器相容性
載入中…