GPURenderPipeline:label 属性
label
属性是 GPURenderPipeline
接口的一个属性,它提供了一个标签,可用于标识对象,例如在 GPUError
消息或控制台警告中。
可以通过在传递给源 GPUDevice.createRenderPipeline()
或 GPUDevice.createRenderPipelineAsync()
调用的描述符对象中提供 label
属性来设置此属性,或者可以直接在 GPURenderPipeline
对象上获取和设置它。
值
一个字符串。如果之前没有按照上述说明设置此属性,则它将是一个空字符串。
示例
通过 GPURenderPipeline.label
设置和获取标签
js
// ...
const pipelineDescriptor = {
vertex: {
module: shaderModule,
entryPoint: "vertex_main",
buffers: vertexBuffers,
},
fragment: {
module: shaderModule,
entryPoint: "fragment_main",
targets: [
{
format: navigator.gpu.getPreferredCanvasFormat(),
},
],
},
primitive: {
topology: "triangle-list",
},
layout: "auto",
};
const renderPipeline = device.createRenderPipeline(pipelineDescriptor);
renderPipeline.label = "myrenderpipeline";
console.log(renderPipeline.label); // "myrenderpipeline"
通过 GPUDevice.createRenderPipeline()
调用设置标签,然后通过 GPURenderPipeline.label
获取它
js
// ...
const pipelineDescriptor = {
vertex: {
module: shaderModule,
entryPoint: "vertex_main",
buffers: vertexBuffers,
},
fragment: {
module: shaderModule,
entryPoint: "fragment_main",
targets: [
{
format: navigator.gpu.getPreferredCanvasFormat(),
},
],
},
primitive: {
topology: "triangle-list",
},
layout: "auto",
label: "myrenderpipeline",
};
const renderPipeline = device.createRenderPipeline(pipelineDescriptor);
console.log(renderPipeline.label); // "myrenderpipeline"
规范
规范 |
---|
WebGPU # dom-gpuobjectbase-label |
浏览器兼容性
BCD 表仅在启用了 JavaScript 的浏览器中加载。