WebGLTexture
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Die WebGLTexture-Schnittstelle ist Teil der WebGL API und repräsentiert ein undurchsichtiges Texturobjekt, das Speicher und Zustand für Texturoperationen bereitstellt.
WebGL-Texturen
Das WebGLTexture
-Objekt definiert keine eigenen Methoden oder Eigenschaften, und sein Inhalt ist nicht direkt zugänglich. Beim Arbeiten mit WebGLTexture
-Objekten sind die folgenden Methoden des WebGLRenderingContext
nützlich:
WebGLRenderingContext.bindTexture()
WebGLRenderingContext.createTexture()
WebGLRenderingContext.deleteTexture()
WebGLRenderingContext.isTexture()
Siehe auch das WebGL-Tutorial zur Verwendung von Texturen in WebGL.
WebXR undurchsichtige Texturen
Beim Verwenden von WebXR-Layern gibt das XRWebGLBinding
-Objekt Instanzen einer undurchsichtigen WebGLTexture
für die Farb- und Tiefen/Stencil-Anhänge zurück.
WebXR-Methoden, die undurchsichtige WebGLTexture
-Objekte zurückgeben:
Die WebXR undurchsichtige Textur ist identisch mit der Standard-WebGLTexture
mit folgenden Ausnahmen:
- Eine WebXR undurchsichtige Textur ist außerhalb eines WebXR-
requestAnimationFrame()
-Callbacks für ihre Sitzung ungültig. - Eine WebXR undurchsichtige Textur ist ungültig, bis sie von
XRWebGLBinding.getSubImage()
oderXRWebGLBinding.getViewSubImage()
zurückgegeben wird. - Eine WebXR undurchsichtige Textur für den Farb-Anhang enthält Farben mit prämultipliziertem Alpha.
- Am Ende eines
requestAnimationFrame()
-Callbacks ist eine WebXR undurchsichtige Textur nicht gebunden und von allenWebGLShader
-Objekten getrennt. - Eine WebXR undurchsichtige Textur verhält sich so, als wäre sie mit
texStorage2D
odertexStorage3D
zugewiesen worden, je nach Bedarf, selbst wenn ein WebGL 1.0-Kontext verwendet wird. - Wenn bei einer WebXR undurchsichtigen Textur
WebGLRenderingContext.deleteTexture()
aufgerufen wird, wird einINVALID_OPERATION
-Fehler ausgelöst. - Änderungen an Dimension oder Format einer WebXR undurchsichtigen Textur sind nicht erlaubt. GL-Funktionen dürfen nur die Texelwerte und Texturparameter ändern.
Beispiele
Erstellen einer Textur
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const texture = gl.createTexture();
Spezifikationen
Specification |
---|
WebGL Specification # 5.9 |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
WebGLRenderingContext.bindTexture()
WebGLRenderingContext.createTexture()
WebGLRenderingContext.deleteTexture()
WebGLRenderingContext.isTexture()
WebGLRenderingContext.compressedTexImage2D()
WebGLRenderingContext.compressedTexSubImage2D()
WebGLRenderingContext.copyTexImage2D()
WebGLRenderingContext.copyTexSubImage2D()
WebGLRenderingContext.generateMipmap()
WebGLRenderingContext.getTexParameter()
WebGLRenderingContext.texImage2D()
WebGLRenderingContext.texSubImage2D()
WebGLRenderingContext.texParameterf()
WebGLRenderingContext.texParameteri()