GPUValidationError
注意:此功能在 Web Workers 中可用。
GPUValidationError 接口是 WebGPU API 的一部分,它描述了一个应用程序错误,表明某个操作未通过 WebGPU API 的验证约束。
它代表了 GPUDevice.popErrorScope 和 uncapturederror 事件所暴露的错误类型之一。
每当向 WebGPU 调用提供无效输入时,就会发生验证错误。这些错误是一致的、可预测的,并且在应用程序格式正确的情况下不应发生。它们在代码运行的每个设备上都会以相同的方式发生,因此一旦你在开发过程中修复了出现的任何错误,你通常就不需要直接观察它们了。例外情况是,如果你正在使用用户提供的资源、着色器等,在这种情况下,在加载过程中监视验证错误可能会很有帮助。
注意: 我们已尽力在适当的“验证”部分提供有用的信息,帮助你理解为什么你的 WebGPU 代码会出现验证错误,这些部分列出了避免验证错误的条件。例如,请参阅 GPUDevice.createBindGroup() 验证部分。
构造函数
GPUValidationError()-
创建一个新的
GPUValidationError对象实例。
实例属性
message 属性继承自其父级 GPUError。
message实验性 只读-
一个字符串,提供一个人类可读的消息,解释了错误发生的原因。
示例
以下示例使用错误作用域来捕获疑似验证错误,并将其记录到控制台。
js
device.pushErrorScope("validation");
let sampler = device.createSampler({
maxAnisotropy: 0, // Invalid, maxAnisotropy must be at least 1.
});
device.popErrorScope().then((error) => {
if (error) {
// error is a GPUValidationError object instance
sampler = null;
console.error(`An error occurred while creating sampler: ${error.message}`);
}
});
规范
| 规范 |
|---|
| WebGPU # gpuvalidationerror |
浏览器兼容性
加载中…