GPUAdapter: features 属性
features
是 GPUAdapter
接口的只读属性,它返回一个 GPUSupportedFeatures
对象,该对象描述了适配器支持的其他功能。
需要注意的是,并非所有功能都可以在所有支持 WebGPU 的浏览器中使用,即使这些功能得到底层硬件的支持。这可能是由于底层系统、浏览器或适配器中的限制。例如
- 底层系统可能无法以与特定浏览器兼容的方式保证功能的公开。
- 浏览器供应商可能没有找到安全实现该功能的方法,或者只是还没有完成该功能。
如果您希望在 WebGPU 应用程序中利用特定附加功能,建议进行彻底测试。
值
一个 GPUSupportedFeatures
对象实例。这是一个 类似集合 的对象。
示例
在以下代码中,我们检查一个GPUAdapter
是否具有texture-compression-astc
特性。如果有,我们将它推入requiredFeatures
数组中,并使用GPUAdapter.requestDevice()
请求具有该特性需求的设备。
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 requiredFeatures = [];
if (adapter.features.has("texture-compression-astc")) {
requiredFeatures.push("texture-compression-astc");
}
const device = await adapter.requestDevice({
requiredFeatures,
});
// ...
}
规范
规范 |
---|
WebGPU # dom-gpuadapter-features |
浏览器兼容性
BCD 表格仅在浏览器中加载
另请参阅
- The WebGPU API