提供一些对WebGPU开发有用的功能
特征:
*在其来源打印调试错误。
*抛出编码器错误
* WebGPU程序的转储着色器
*在着色器错误上显示整个着色器
* log在RequestAdapter上使用哪种类型的GPU
*强力低功率或高性能GPU
*显示页面上当前有多少个设备
*将描述符添加到对象
*显示gputexture.usage and gpubuffer的位名称
*块功能
*禁用WebGPU(测试您的后备)
*删除WebGPU(测试您的后备)
*强制执行默认限制
*添加API断点
*跳过皇家空军框架
*乘坐时间
细节
*在其来源打印调试错误
WebGPU中的错误通常是异步处理的,这意味着生成错误的实际命令通常是未知的。此扩展程序添加了早期错误检查,因此希望您会在该错误生成的位置获得错误堆栈,从而更容易修复错误
*抛出编码器错误
通常,命令缓冲区编码器,通过编码器,仅渲染捆绑编码器
完成命令编码器时会生成错误。启用WebGPU驱动器
提出这些类型的错误。
* WebGPU程序的转储着色器
请参阅当前页面的着色器。
* log在RequestAdapter上使用哪种类型的GPU
在每个呼叫requestAdapter上打印适配器。这使您可以看到在双GPU机器上使用了哪个GPU以及是否请求兼容模式。
*强力低功率或高性能GPU
强制针对页面的低功率或高性能GPU选择。
*显示页面上当前有多少个设备
打印在页面上当前活动设备数量的运行总数。
*将描述符添加到对象
将用于创建许多对象的描述符添加到这些对象。例如:当您在描述符中传递的纹理上调用“ CreateView”时。该描述符是
没有反映在视图本身中,这可能很难看到发生了什么。
这将数据添加到视图中,因此您可以在调试器或“显示错误”打印的错误消息中对其进行检查。同样,bindgroup,bindgrouplayout,
管道,管道层,通过编码器,查询集,采样器,着色器模块,
外部纹理,...
*块功能
让您可以阻止WebGPU功能。例如,键入“着色器-F16”和着色器-F16功能将被阻止。您可以使用它来测试您的代码,该代码应该在没有该功能的情况下运行,实际上在没有功能的情况下运行。
*禁用或删除WebGPU API
让您可以测试您可以优雅地处理API返回null和不存在的API。
* API断点
在指定的WebGPU API函数中添加`debugger`语句。是否想知道该页面在哪里调用ImportExternalTexture?添加一个断点。
来源https://github.com/greggman/webgpu-dev-extension