WebGLRenderingContext: texSubImage2D() Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die texSubImage2D() Methode des WebGLRenderingContext-Interfaces der WebGL API spezifiziert ein zweidimensionales Teilrechteck für ein Texturbild.
Syntax
// WebGL 1:
texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, srcData)
texSubImage2D(target, level, xoffset, yoffset, format, type, source)
// Additionally available in WebGL 2:
texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, srcData, srcOffset)
texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, source)
texSubImage2D(target, level, xoffset, yoffset, width, height, format, type, offset)
Parameter
target-
Ein
GLenum, das den Bindungspunkt (Target) der aktiven Textur angibt. Mögliche Werte:gl.TEXTURE_2D: Eine zweidimensionale Textur.gl.TEXTURE_CUBE_MAP_POSITIVE_X: Positive X-Fläche für eine Würfelkartentextur.gl.TEXTURE_CUBE_MAP_NEGATIVE_X: Negative X-Fläche für eine Würfelkartentextur.gl.TEXTURE_CUBE_MAP_POSITIVE_Y: Positive Y-Fläche für eine Würfelkartentextur.gl.TEXTURE_CUBE_MAP_NEGATIVE_Y: Negative Y-Fläche für eine Würfelkartentextur.gl.TEXTURE_CUBE_MAP_POSITIVE_Z: Positive Z-Fläche für eine Würfelkartentextur.gl.TEXTURE_CUBE_MAP_NEGATIVE_Z: Negative Z-Fläche für eine Würfelkartentextur.
level-
Ein
GLint, das das Detailniveau angibt. Level 0 ist das Basisbildniveau und Level n ist das n-te Mipmap-Reduktionsniveau. xoffset-
Ein
GLint, das die x-Koordinate des unteren linken Texels einer rechteckigen Unterregion der Textur mit einer bestimmten Breite und Höhe angibt. yoffset-
Ein
GLint, das die y-Koordinate des unteren linken Texels einer rechteckigen Unterregion der Textur mit einer bestimmten Breite und Höhe angibt. width-
Ein
GLsizei, das die Breite der Textur in Texeln angibt. height-
Ein
GLsizei, das die Höhe der Textur in Texeln angibt. format-
Ein
GLenum, das angibt, wie jedes ganzzahlige Element in den Rohtexturdaten als Farbkomponenten interpretiert werden soll. Mögliche Werte:gl.ALPHA: Verwirft die roten, grünen und blauen Komponenten und liest die Alphakomponente.gl.RGB: Verwirft die Alphakomponenten und liest die roten, grünen und blauen Komponenten.gl.RGBA: Rote, grüne, blaue und alpha-Komponenten werden aus dem Farb-Puffer gelesen.gl.LUMINANCE: Jede Farbkomponente ist eine Luminanz-Komponente, alpha ist 1.0.gl.LUMINANCE_ALPHA: Jede Komponente ist eine Luminanz/Alpha-Komponente.
Bei Verwendung der
EXT_sRGBErweiterung:ext.SRGB_EXText.SRGB_ALPHA_EXT
Bei Verwendung eines
WebGL2RenderingContextsind zusätzlich folgende Werte verfügbar:gl.REDgl.RED_INTEGERgl.RGgl.RG_INTEGERgl.RGB_INTEGERgl.RGBA_INTEGERgl.DEPTH_COMPONENTgl.DEPTH_STENCIL
type-
Ein
GLenum, das die Größe jedes ganzzahligen Elements in den Rohtexturdaten angibt. Für die Kombinationen vonformatundtypesieheWebGLRenderingContext.texImage2D().
Die Texturquelle kann auf drei Arten bereitgestellt werden: aus einem ArrayBuffer (möglicherweise geteilt) unter Verwendung von srcData und srcOffset; von einer DOM-Pixel-source; oder im WebGL 2 von gl.PIXEL_UNPACK_BUFFER unter Verwendung von offset.
srcData-
Ein
TypedArrayoderDataView, das die komprimierten Texturdaten enthält. Sein Typ muss demtype-Parameter entsprechen; sieheWebGLRenderingContext.texImage2D(). srcOffsetOptional-
(Nur WebGL 2) Ein ganzzahliger Wert, der den Index von
srcDataangibt, ab dem gelesen werden soll. Standardmäßig0. source-
Wird aus einer DOM-Pixelquelle gelesen, die eine der folgenden sein kann:
ImageBitmapImageDataHTMLImageElementHTMLCanvasElementHTMLVideoElementOffscreenCanvasVideoFrame
Im WebGL 1 werden
widthundheightimmer aus der Quelle abgeleitet. Im WebGL 2 können sie auch explizit angegeben werden. offset-
(Nur WebGL 2) Ein
GLintptr, der die Startadresse im Puffer angibt, der angl.PIXEL_UNPACK_BUFFERgebunden ist.
Rückgabewert
Keiner (undefined).
Beispiele
gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, 0, gl.RGBA, gl.UNSIGNED_BYTE, image);
Spezifikationen
| Specification |
|---|
| WebGL Specification> # TEXSUBIMAGE2D> |
| WebGL 2.0 Specification> # 3.7.6> |
Browser-Kompatibilität
Loading…
Siehe auch
WebGLRenderingContext.createTexture()WebGLRenderingContext.bindTexture()WebGLRenderingContext.texImage2D()WebGLRenderingContext.compressedTexImage2D()WebGLRenderingContext.copyTexImage2D()WebGLRenderingContext.getTexParameter()OES_texture_floatOES_texture_half_floatEXT_sRGBEXT_texture_norm16