WebGLRenderingContext: Methode pixelStorei()
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 WebGLRenderingContext.pixelStorei()
-Methode der WebGL-API legt die Pixel-Speichermodi fest.
Syntax
pixelStorei(pname, param)
Parameter
Rückgabewert
Keiner (undefined
).
Pixel-Speicherparameter
Parametername (für pname ) |
Beschreibung | Typ | Standardwert | Erlaubte Werte (für param ) |
Spezifiziert in |
---|---|---|---|---|---|
gl.PACK_ALIGNMENT |
Packen von Pixeldaten in den Speicher | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 4 | 1, 2, 4, 8 | OpenGL ES 2.0 |
gl.UNPACK_ALIGNMENT |
Entpacken von Pixeldaten aus dem Speicher. | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 4 | 1, 2, 4, 8 | OpenGL ES 2.0 |
gl.UNPACK_FLIP_Y_WEBGL |
Spiegeln der Quelldaten entlang der vertikalen Achse, wenn wahr. | [`GLboolean`](/de/docs/Web/API/WebGL_API/Types) | false | true, false | WebGL |
gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL |
Multipliziert den Alphakanal in die anderen Farbkanäle hinein | [`GLboolean`](/de/docs/Web/API/WebGL_API/Types) | false | true, false | WebGL |
gl.UNPACK_COLORSPACE_CONVERSION_WEBGL |
Standardfarbraumkonvertierung oder keine Farbraumkonvertierung. | [`GLenum`](/de/docs/Web/API/WebGL_API/Types) | gl.BROWSER_DEFAULT_WEBGL |
gl.BROWSER_DEFAULT_WEBGL , gl.NONE |
WebGL |
Bei Verwendung eines WebGL-2-Kontext sind zusätzlich die folgenden Werte verfügbar:
Konstante | Beschreibung | Typ | Standardwert | Erlaubte Werte (für param ) |
Spezifiziert in |
---|---|---|---|---|---|
gl.PACK_ROW_LENGTH |
Anzahl der Pixel in einer Zeile. | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
gl.PACK_SKIP_PIXELS |
Anzahl der Pixelpositionen, die übersprungen werden, bevor das erste Pixel in den Speicher geschrieben wird. | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
gl.PACK_SKIP_ROWS |
Anzahl der Pixelreihen, die übersprungen werden, bevor das erste Pixel in den Speicher geschrieben wird | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
gl.UNPACK_ROW_LENGTH |
Anzahl der Pixel in einer Zeile. | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
gl.UNPACK_IMAGE_HEIGHT |
Bildhöhe für das Lesen von Pixeldaten aus dem Speicher verwendet | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
gl.UNPACK_SKIP_PIXELS |
Anzahl der Pixelbilder, die übersprungen werden, bevor das erste Pixel aus dem Speicher gelesen wird | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
gl.UNPACK_SKIP_ROWS |
Anzahl der Pixelreihen, die übersprungen werden, bevor das erste Pixel aus dem Speicher gelesen wird | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
gl.UNPACK_SKIP_IMAGES |
Anzahl der Pixelbilder, die übersprungen werden, bevor das erste Pixel aus dem Speicher gelesen wird | [`GLint`](/de/docs/Web/API/WebGL_API/Types) | 0 | 0 bis Infinity |
OpenGL ES 3.0 |
Beispiele
Das Setzen des Pixel-Speichermodus wirkt sich auf die
WebGLRenderingContext.readPixels()
-Operationen aus, sowie auf das Entpacken
von Texturen mit den Methoden WebGLRenderingContext.texImage2D()
und
WebGLRenderingContext.texSubImage2D()
.
const tex = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, tex);
gl.pixelStorei(gl.PACK_ALIGNMENT, 4);
Um die Werte für das Packen und Entpacken von Pixeldaten zu überprüfen, können Sie dieselben
Pixel-Speicherparameter mit WebGLRenderingContext.getParameter()
abfragen.
gl.getParameter(gl.PACK_ALIGNMENT);
gl.getParameter(gl.UNPACK_ALIGNMENT);
Spezifikationen
Specification |
---|
WebGL Specification # 5.14.3 |
WebGL Specification # PIXEL_STORAGE_PARAMETERS |
WebGL 2.0 Specification # 3.7.2 |
Browser-Kompatibilität
BCD tables only load in the browser