GPUTexture: usage-Eigenschaft

Limited availability

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

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die schreibgeschützte usage-Eigenschaft der GPUTexture-Schnittstelle ist die bitweise Flaggen, die die erlaubten Verwendungen der GPUTexture darstellt.

Dies wird über die usage-Eigenschaft im Deskriptionsobjekt festgelegt, das im ursprünglichen Aufruf von GPUDevice.createTexture() übergeben wird.

Wert

Die bitweise Flaggen, die die ursprünglichen Verwendungen darstellen, die bei der ersten Erstellung der GPUTexture festgelegt wurden. Die zurückgegebene Zahl ist die Summe der dezimalen Werte, die die verschiedenen Flaggen darstellen, wie in der unten stehenden Tabelle zu sehen ist.

Verwendungs-Flag Beschreibung der Verwendung Hex-Äquivalent Dezimal-Äquivalent
GPUTextureUsage.COPY_SRC Die Textur kann als Quelle einer Kopieroperation verwendet werden, zum Beispiel als Quell-Argument eines copyTextureToBuffer()-Aufrufs. 0x01 1
GPUTextureUsage.COPY_DST Die Textur kann als Ziel einer Kopier-/Schreiboperation verwendet werden, z. B. als Ziel-Argument eines copyBufferToTexture()-Aufrufs. 0x02 2
GPUTextureUsage.RENDER_ATTACHMENT Die Textur kann als Farb- oder Tiefen-/Stencil-Anhang in einem Render-Durchgang verwendet werden, zum Beispiel als view-Eigenschaft des Deskriptionsobjekts in einem beginRenderPass()-Aufruf. 0x10 16
GPUTextureUsage.STORAGE_BINDING Die Textur kann gebunden werden, um als Storage-Textur in einem Shader verwendet zu werden, zum Beispiel als Ressource in einem Bindungsgruppen-Eintrag bei der Erstellung einer GPUBindGroup (über createBindGroup()), die einem GPUBindGroupLayout-Eintrag mit einem spezifizierten Storage-Textur-Bindungs-Layout entspricht. 0x08 8
GPUTextureUsage.TEXTURE_BINDING Die Textur kann gebunden werden, um als abgetastete Textur in einem Shader verwendet zu werden, zum Beispiel als Ressource in einem Bindungsgruppen-Eintrag bei der Erstellung einer GPUBindGroup (über createBindGroup()), die einem GPUBindGroupLayout-Eintrag mit einem spezifizierten Textur-Bindungs-Layout entspricht. 0x04 4

Beispiele

js
// …

const depthTexture = device.createTexture({
  size: [canvas.width, canvas.height],
  format: "depth24plus",
  usage: GPUTextureUsage.RENDER_ATTACHMENT,
});

console.log(depthTexture.usage); // 16

Spezifikationen

Specification
WebGPU
# dom-gputexture-usage

Browser-Kompatibilität

Siehe auch