OES_texture_float Erweiterung

Die OES_texture_float Erweiterung ist Teil der WebGL API und erschließt Gleitkomma-Pixeltypen für Texturen.

WebGL-Erweiterungen sind mit der Methode WebGLRenderingContext.getExtension() verfügbar. Für weitere Informationen siehe Verwendung von Erweiterungen im WebGL-Leitfaden.

Hinweis: Diese Erweiterung ist nur für WebGL1 Kontexte verfügbar. In WebGL2 ist die Funktionalität dieser Erweiterung im WebGL2-Kontext standardmäßig verfügbar.

Erweiterte Methoden

Diese Erweiterung erweitert WebGLRenderingContext.texImage2D() und WebGLRenderingContext.texSubImage2D():

  • Der type Parameter akzeptiert nun gl.FLOAT.
  • Der pixels Parameter akzeptiert nun ein Float32Array.

Einschränkung: Lineares Filtern

Lineares Filtern bei Gleitkomma-Texturen ist mit dieser Erweiterung nicht erlaubt. Wenn Sie den Vergrößerungs- oder Verkleinerungsfilter in der Methode WebGLRenderingContext.texParameter() auf einen der Werte gl.LINEAR, gl.LINEAR_MIPMAP_NEAREST, gl.NEAREST_MIPMAP_LINEAR oder gl.LINEAR_MIPMAP_LINEAR setzen und Gleitkomma-Texturen verwenden, wird die Textur als unvollständig markiert.

Um lineares Filtern bei Gleitkomma-Texturen zu verwenden, aktivieren Sie zusätzlich zu dieser Erweiterung die OES_texture_float_linear Erweiterung.

Gleitkomma-Farbpuffer

Diese Erweiterung ermöglicht implizit die WEBGL_color_buffer_float Erweiterung (falls unterstützt), die das Rendering zu 32-Bit Gleitkomma-Farbpuffern erlaubt.

Beispiele

js
const ext = gl.getExtension("OES_texture_float");

const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);

gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.FLOAT, image);

Spezifikationen

Specification
WebGL OES_texture_float Khronos Ratified Extension Specification

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch