Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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

js
// 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_sRGB Erweiterung:

  • ext.SRGB_EXT
  • ext.SRGB_ALPHA_EXT

Bei Verwendung eines WebGL2RenderingContext sind zusätzlich folgende Werte verfügbar:

  • gl.RED
  • gl.RED_INTEGER
  • gl.RG
  • gl.RG_INTEGER
  • gl.RGB_INTEGER
  • gl.RGBA_INTEGER
  • gl.DEPTH_COMPONENT
  • gl.DEPTH_STENCIL
type

Ein GLenum, das die Größe jedes ganzzahligen Elements in den Rohtexturdaten angibt. Für die Kombinationen von format und type siehe WebGLRenderingContext.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 TypedArray oder DataView, das die komprimierten Texturdaten enthält. Sein Typ muss dem type-Parameter entsprechen; siehe WebGLRenderingContext.texImage2D().

srcOffset Optional

(Nur WebGL 2) Ein ganzzahliger Wert, der den Index von srcData angibt, ab dem gelesen werden soll. Standardmäßig 0.

source

Wird aus einer DOM-Pixelquelle gelesen, die eine der folgenden sein kann:

Im WebGL 1 werden width und height immer 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 an gl.PIXEL_UNPACK_BUFFER gebunden ist.

Rückgabewert

Keiner (undefined).

Beispiele

js
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

Siehe auch