GPUTexture: usage-Eigenschaft

Limited availability

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

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

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 usage schreibgeschützte Eigenschaft des GPUTexture-Interfaces sind die bitweisen Flags, die die erlaubten Verwendungen der GPUTexture darstellen.

Dies wird über die usage-Eigenschaft im Deskriptor-Objekt gesetzt, das in den ursprünglichen Aufruf GPUDevice.createTexture() übergeben wird.

Wert

Die bitweisen Flags, die die ursprünglichen Verwendungen darstellen, die festgelegt wurden, als die GPUTexture zuerst erstellt wurde. Die zurückgegebene Zahl ist die Summe der Dezimalwerte, die die verschiedenen Flags darstellen, wie in der Tabelle unten dargestellt.

Nutzungs-Flag Nutzungsbeschreibung Hex-Äquivalent Dezimal-Äquivalent
GPUTextureUsage.COPY_SRC Die Textur kann als Quelle einer Kopieroperation verwendet werden, zum Beispiel als Quellargument eines Aufrufs von copyTextureToBuffer(). 0x01 1
GPUTextureUsage.COPY_DST Die Textur kann als Ziel einer Kopier/Schreiboperation verwendet werden, zum Beispiel als Zielargument eines Aufrufs von copyBufferToTexture(). 0x02 2
GPUTextureUsage.RENDER_ATTACHMENT Die Textur kann als Farb- oder Tiefen-/Stencil-Anhang in einem Renderpass verwendet werden, zum Beispiel als view-Eigenschaft des Deskriptor-Objekts in einem Aufruf von beginRenderPass(). 0x10 16
GPUTextureUsage.STORAGE_BINDING Die Textur kann für die Verwendung als Speichertextur in einem Shader gebunden werden, zum Beispiel als Ressource in einem Bindungseintrag bei der Erstellung einer GPUBindGroup (via createBindGroup()), was einem Eintrag des GPUBindGroupLayout mit einem spezifizierten Speichertextur-Bindungs-Layout entspricht. 0x08 8
GPUTextureUsage.TEXTURE_BINDING Die Textur kann für die Verwendung als abgetastete Textur in einem Shader gebunden werden, zum Beispiel als Ressource in einem Bindungseintrag bei der Erstellung einer GPUBindGroup (via createBindGroup()), was einem Eintrag des GPUBindGroupLayout 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

BCD tables only load in the browser

Siehe auch