WebGLRenderingContext: Methode framebufferTexture2D()
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: Diese Funktion ist in Web Workers verfügbar.
Die Methode WebGLRenderingContext.framebufferTexture2D()
der WebGL API fügt eine Textur an ein WebGLFramebuffer
an.
Syntax
framebufferTexture2D(target, attachment, textarget, texture, level)
Parameter
target
-
Ein
GLenum
, das den Bindepunkt (Ziel) spezifiziert. Mögliche Werte:gl.FRAMEBUFFER
-
Sammlung von Pufferdatenspeicher für Farb-, Alpha-, Tiefen- und Schablonenpuffer, die zur Bilddarstellung verwendet werden.
Bei Verwendung eines WebGL 2-Kontexts sind zusätzlich folgende Werte verfügbar:
gl.DRAW_FRAMEBUFFER
-
Wird als Ziel für Zeichen-, Render-, Lösch- und Schreiboperationen verwendet.
gl.READ_FRAMEBUFFER
-
Wird als Quelle für Leseoperationen verwendet.
Bei der Bindung setzt
gl.FRAMEBUFFER
sowohl diegl.DRAW_FRAMEBUFFER
- als auch diegl.READ_FRAMEBUFFER
-Bindepunkte. Beim Referenzieren bezieht sichgl.FRAMEBUFFER
auf diegl.DRAW_FRAMEBUFFER
-Bindung attachment
-
Ein
GLenum
, das den Anhangspunkt für dietexture
spezifiziert. Mögliche Werte:gl.COLOR_ATTACHMENT0
: Verknüpft die Textur mit dem Farb-Puffer des Framebuffers.gl.DEPTH_ATTACHMENT
: Verknüpft die Textur mit dem Tiefen-Puffer des Framebuffers.gl.STENCIL_ATTACHMENT
: Verknüpft die Textur mit dem Schablonen-Puffer des Framebuffers.
Bei Verwendung eines WebGL 2-Kontexts sind zusätzlich folgende Werte verfügbar:
gl.DEPTH_STENCIL_ATTACHMENT
: Tiefen- und Schablonenpuffer.gl.COLOR_ATTACHMENT1 gl.COLOR_ATTACHMENT2 gl.COLOR_ATTACHMENT3 gl.COLOR_ATTACHMENT4 gl.COLOR_ATTACHMENT5 gl.COLOR_ATTACHMENT6 gl.COLOR_ATTACHMENT7 gl.COLOR_ATTACHMENT8 gl.COLOR_ATTACHMENT9 gl.COLOR_ATTACHMENT10 gl.COLOR_ATTACHMENT11 gl.COLOR_ATTACHMENT12 gl.COLOR_ATTACHMENT13 gl.COLOR_ATTACHMENT14 gl.COLOR_ATTACHMENT15
Bei Verwendung der
WEBGL_draw_buffers
-Erweiterung:ext.COLOR_ATTACHMENT0_WEBGL
(gleichgl.COLOR_ATTACHMENT0
)ext.COLOR_ATTACHMENT1_WEBGL ext.COLOR_ATTACHMENT2_WEBGL ext.COLOR_ATTACHMENT3_WEBGL ext.COLOR_ATTACHMENT4_WEBGL ext.COLOR_ATTACHMENT5_WEBGL ext.COLOR_ATTACHMENT6_WEBGL ext.COLOR_ATTACHMENT7_WEBGL ext.COLOR_ATTACHMENT8_WEBGL ext.COLOR_ATTACHMENT9_WEBGL ext.COLOR_ATTACHMENT10_WEBGL ext.COLOR_ATTACHMENT11_WEBGL ext.COLOR_ATTACHMENT12_WEBGL ext.COLOR_ATTACHMENT13_WEBGL ext.COLOR_ATTACHMENT14_WEBGL ext.COLOR_ATTACHMENT15_WEBGL
Bei Verwendung der
WEBGL_depth_texture
-Erweiterung:gl.DEPTH_STENCIL_ATTACHMENT
: Datenspeicherung von Tiefen- und Schablonenpuffer.
textarget
-
Ein
GLenum
, das das Texturziel angibt. Mögliche Werte:gl.TEXTURE_2D
: Ein 2D-Bild.gl.TEXTURE_CUBE_MAP_POSITIVE_X
: Bild für die positive X-Seite des Würfels.gl.TEXTURE_CUBE_MAP_NEGATIVE_X
: Bild für die negative X-Seite des Würfels.gl.TEXTURE_CUBE_MAP_POSITIVE_Y
: Bild für die positive Y-Seite des Würfels.gl.TEXTURE_CUBE_MAP_NEGATIVE_Y
: Bild für die negative Y-Seite des Würfels.gl.TEXTURE_CUBE_MAP_POSITIVE_Z
: Bild für die positive Z-Seite des Würfels.gl.TEXTURE_CUBE_MAP_NEGATIVE_Z
: Bild für die negative Z-Seite des Würfels.
texture
-
Ein
WebGLTexture
-Objekt, dessen Bild angefügt werden soll. level
-
Ein
GLint
, das die Mipmap-Ebene des anzufügenden Texturbildes spezifiziert. Muss 0 sein.
Rückgabewert
Keiner (undefined
).
Ausnahmen
-
Ein
gl.INVALID_ENUM
-Fehler wird ausgelöst, wenn:target
nichtgl.FRAMEBUFFER
ist.attachment
keiner der akzeptierten Anhangspunkte ist.textarget
keines der akzeptierten Texturziele ist.
-
Ein
gl.INVALID_VALUE
-Fehler wird ausgelöst, wennlevel
nicht 0 ist. -
Ein
gl.INVALID_OPERATION
-Fehler wird ausgelöst, wenntexture
nicht 0 oder der Name eines bestehenden Texturobjekts ist.
Beispiele
gl.framebufferTexture2D(
gl.FRAMEBUFFER,
gl.COLOR_ATTACHMENT0,
gl.TEXTURE_2D,
texture,
0,
);
Spezifikationen
Specification |
---|
WebGL Specification # 5.14.6 |