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

BCD tables only load in the browser

Siehe auch