WebGLRenderingContext: viewport() Methode
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 WebGLRenderingContext.viewport()
-Methode der WebGL-API legt den Viewport fest, der die affine Transformation von x und y von normalisierten Gerätekoordinaten zu Fensterkoordinaten spezifiziert.
Syntax
viewport(x, y, width, height)
Parameter
x
-
Ein
GLint
, der die horizontale Koordinate für die linke untere Ecke des Viewport-Ursprungs angibt. Standardwert: 0. y
-
Ein
GLint
, der die vertikale Koordinate für die linke untere Ecke des Viewport-Ursprungs angibt. Standardwert: 0. width
-
Ein nicht-negativer
GLsizei
, der die Breite des Viewports angibt. Standardwert: Breite des Canvas. height
-
Ein nicht-negativer
GLsizei
, der die Höhe des Viewports angibt. Standardwert: Höhe des Canvas.
Rückgabewert
Kein (undefined
).
Ausnahmen
Falls entweder width oder height einen negativen Wert hat, wird ein
gl.INVALID_VALUE
-Fehler geworfen.
Beispiele
Wenn Sie zuerst einen WebGL-Kontext erstellen, entspricht die Größe des Viewports der Größe des Canvas. Wenn Sie jedoch die Größe des Canvas ändern, müssen Sie dem WebGL-Kontext eine neue Viewport-Einstellung mitteilen. In dieser Situation können Sie gl.viewport
verwenden.
gl.viewport(0, 0, canvas.width, canvas.height);
Die Breite und Höhe des Viewports werden auf einen bereichsabhängigen Wert begrenzt, der von der Implementierung abhängt. Um diesen Bereich zu erhalten, können Sie die Konstante MAX_VIEWPORT_DIMS
verwenden, die ein Int32Array
zurückgibt.
gl.getParameter(gl.MAX_VIEWPORT_DIMS);
// e.g. Int32Array[16384, 16384]
Um den aktuellen Viewport zu erhalten, fragen Sie die Konstante VIEWPORT
ab.
gl.getParameter(gl.VIEWPORT);
// e.g. Int32Array[0, 0, 640, 480]
Spezifikationen
Specification |
---|
WebGL Specification # 5.14.4 |
Browser-Kompatibilität
BCD tables only load in the browser