1. 面向开发者的 Web 技术
  2. Web API
  3. GPU

此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

GPU

有限可用

此特性不属于基线,因为它尚未在主流浏览器中得到支持。

Want more support for this feature? Tell us why.

实验性: 这是一项实验性技术
在将其用于生产之前,请仔细检查浏览器兼容性表格

WebGPU APIGPU 接口是使用 WebGPU 的入口点。它用于返回一个 GPUAdapter,你可以从中请求设备,获取配置特性以及限制等。

当前上下文的 GPU 对象可以通过 Navigator.gpuWorkerNavigator.gpu 属性访问。

实例属性

requestAdapter()

返回 Promise,会兑现一个 GPUAdapter 对象实例。这时,你可以请求一个 GPUDevice,它是使用 WebGPU 功能的主要接口。

getPreferredCanvasFormat()

返回用于当前系统上显示 8 位色深、标准动态范围(SDR)内容的最佳 canvas 纹理格式。

示例

请求适配器和设备

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: device,
 format: navigator.gpu.getPreferredCanvasFormat(),
 alphaMode: "premultiplied",
});

规范

规范
WebGPU
# gpu-interface

浏览器兼容性

参见

帮助改进 MDN

了解如何参与贡献

此页面最后更新于 ,由 MDN 贡献者更新。

AltStyle によって変換されたページ (->オリジナル) /