WebGLRenderingContext.viewport()

La méthode WebGLRenderingContext.viewport() de l'API WebGL définit le viewport, qui indique la transformation affine de x et de y, de coordonnées d'appareil normalisées en coordonnées de fenêtre.

Syntaxe

void gl.viewport(x, y, largeur, hauteur);

Paramètres

x
Un GLint indiquant la coordonnée horizontale du coin inférieur gauche de l'origine du viewport. Valeur par défaut : 0.
y
Un GLint indiquant la coordonnée verticale du coin inférieur gauche de l'origine du viewport. Valeur par défaut : 0.
largeur
Un Glsizei non négatif indiquant la largeur du viewport. Valeur par défaut : la largeur du canevas.
height
Un Glsizei non négatif indiquant la hauteur du viewport. Valeur par défaut : la hauteur du canevas.

Valeur retournée

Aucune.

Erreurs déclenchées

Si largeur ou hauteur est une valeur négative, une erreur gl.INVALID_VALUE est déclenchée.

Exemples

Lorsque vous créez un contexte WebGL pour la première fois, la taille de la fenêtre correspondra à celle du canevas. Toutefois, si vous redimensionnez le canevas, vous devrez indiquer au contexte de WebGL une nouvelle définition de viewport. Dans cette situation, vous pouvez utiliser gl.viewport.

gl.viewport(0, 0, canevas.width, canevas.height);

La largeur et la hauteur de la fenêtre sont limitées à une plage dépendante de l'implémentation. Pour obtenir cette plage, vous pouvez utiliser la constante MAX_VIEWPORT_DIMS, qui renvoie un Int32Array.

gl.getParameter(gl.MAX_VIEWPORT_DIMS);
// Par ex., Int32Array[16384, 16384]

Pour obtenir le viewport en cours, faites une requête sur la constante VIEWPORT.

gl.getParameter(gl.VIEWPORT);
// e.g. Int32Array[0, 0, 640, 480]

Spécifications

Spécification Statut Commentaire
WebGL 1.0
La définition de 'viewport' dans cette spécification.
Recommendation Définition initiale.
OpenGL ES 2.0
La définition de 'glViewport' dans cette spécification.
Standard Page man de l'API OpenGL.

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari pour iOSSamsung Internet
Support simpleChrome Support complet 9Edge Support complet 12Firefox Support complet 4IE Support complet 11Opera Support complet 12Safari Support complet 5.1WebView Android Support complet OuiChrome Android Support complet 25Edge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet 12Safari iOS Support complet 8.1Samsung Internet Android Support complet Oui

Légende

Support complet  
Support complet

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : NemoNobobyPersonne
Dernière mise à jour par : NemoNobobyPersonne,