GPUTexture

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 GPUTexture Schnittstelle der WebGPU API repräsentiert einen Container, der zur Speicherung von 1D-, 2D- oder 3D-Datenarrays, wie z.B. Bildern, verwendet wird, um sie in GPU-Rendering-Operationen zu nutzen.

Eine GPUTexture Objektinstanz wird mithilfe der Methode GPUDevice.createTexture() erstellt.

Instanz-Eigenschaften

depthOrArrayLayers Experimentell Schreibgeschützt

Eine Zahl, die die Tiefe oder die Anzahl der Schichten der GPUTexture angibt (Pixel oder Anzahl der Schichten).

dimension Experimentell Schreibgeschützt

Ein enumerierter Wert, der die Dimension des Texel-Sets für jede GPUTexture-Subressource darstellt.

format Experimentell Schreibgeschützt

Ein enumerierter Wert, der das Format der GPUTexture darstellt. Siehe den Abschnitt Texture formats der Spezifikation für alle möglichen Werte.

height Experimentell Schreibgeschützt

Eine Zahl, die die Höhe der GPUTexture in Pixeln angibt.

label Experimentell

Ein String, der ein Label bereitstellt, das zur Identifikation des Objekts verwendet werden kann, beispielsweise in GPUError-Meldungen oder Konsolenwarnungen.

mipLevelCount Experimentell Schreibgeschützt

Eine Zahl, die die Anzahl der Mip-Level der GPUTexture darstellt.

sampleCount Experimentell Schreibgeschützt

Eine Zahl, die die Probenanzahl der GPUTexture darstellt.

usage Experimentell Schreibgeschützt

Die bitwise flags, die die erlaubten Verwendungen der GPUTexture darstellen.

width Experimentell Schreibgeschützt

Eine Zahl, die die Breite der GPUTexture in Pixeln angibt.

Instanz-Methoden

createView() Experimentell

Erstellt eine GPUTextureView, die eine spezifische Ansicht der GPUTexture darstellt.

destroy() Experimentell

Zerstört die GPUTexture.

Beispiele

Im WebGPU-Beispiel Textured Cube sample wird eine Textur für die Flächen eines Würfels erstellt durch:

js
//...
let cubeTexture;
{
  const img = document.createElement("img");

  img.src = new URL(
    "../../../assets/img/Di-3d.png",
    import.meta.url,
  ).toString();

  await img.decode();

  const imageBitmap = await createImageBitmap(img);

  cubeTexture = device.createTexture({
    size: [imageBitmap.width, imageBitmap.height, 1],
    format: "rgba8unorm",
    usage:
      GPUTextureUsage.TEXTURE_BINDING |
      GPUTextureUsage.COPY_DST |
      GPUTextureUsage.RENDER_ATTACHMENT,
  });

  device.queue.copyExternalImageToTexture(
    { source: imageBitmap },
    { texture: cubeTexture },
    [imageBitmap.width, imageBitmap.height],
  );
}
//...

Spezifikationen

Specification
WebGPU
# texture-interface

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
GPUTexture
Experimental
createView
Experimental
rgb10a2uint texture format
Experimental
depthOrArrayLayers
Experimental
destroy
Experimental
dimension
Experimental
format
Experimental
rgb10a2uint texture format
Experimental
height
Experimental
label
Experimental
mipLevelCount
Experimental
sampleCount
Experimental
usage
Experimental
width
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
In development. Supported in a pre-release version.
In development. Supported in a pre-release version.
No support
No support
Experimental. Expect behavior to change in the future.
See implementation notes.
User must explicitly enable this feature.
Has more compatibility info.

Siehe auch