GPUTextureView

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Note: This feature is available in Web Workers.

Giao diện GPUTextureView của WebGPU API đại diện cho một khung nhìn vào một tập con tài nguyên kết cấu được xác định bởi một GPUTexture cụ thể.

Đối tượng GPUTextureView được tạo bằng phương thức GPUTexture.createView().

Thuộc tính phiên bản

label

Một chuỗi cung cấp nhãn có thể được sử dụng để nhận dạng đối tượng, ví dụ trong thông báo GPUError hoặc cảnh báo bảng điều khiển.

Ví dụ

Trong bản demo Cubemap của WebGPU Samples, bạn sẽ thấy nhiều ví dụ về cách GPUTextureView (được tạo bởi lệnh gọi GPUTexture.createView()) được sử dụng, cả như resource trong lệnh gọi GPUDevice.createBindGroup() và như view được cung cấp trong đối tượng depthStencilAttachment của descriptor GPUCommandEncoder.beginRenderPass().

js
const uniformBindGroup = device.createBindGroup({
  layout: pipeline.getBindGroupLayout(0),
  entries: [
    {
      binding: 0,
      resource: {
        buffer: uniformBuffer,
        offset: 0,
        size: uniformBufferSize,
      },
    },
    {
      binding: 1,
      resource: sampler,
    },
    {
      binding: 2,
      resource: cubemapTexture.createView({
        dimension: "cube",
      }),
    },
  ],
});

const renderPassDescriptor: GPURenderPassDescriptor = {
  colorAttachments: [
    {
      view: undefined, // Assigned later
      loadOp: "clear",
      storeOp: "store",
    },
  ],
  depthStencilAttachment: {
    view: depthTexture.createView(),
    depthClearValue: 1.0,
    depthLoadOp: "clear",
    depthStoreOp: "store",
  },
};

// …

const commandEncoder = device.createCommandEncoder();
const passEncoder = commandEncoder.beginRenderPass(renderPassDescriptor);

// …

Thông số kỹ thuật

Specification
WebGPU
# gputextureview

Tương thích trình duyệt

Xem thêm