Qu'est-ce qu'un polygone OpenGL®?
Un polygone Open Graphics Library® (OpenGL®) est un objet créé dans OpenGL® comportant plus de deux sommets. Essentiellement, tout objet qui n'est ni un point ni une ligne est considéré comme un polygone. OpenGL®, ainsi que la plupart des cartes graphiques, ont généralement des optimisations spéciales pour traiter principalement les triangles, ou polygones à trois côtés, car les triangles sont le type de polygone le plus simple pouvant être créé avec le moins de sommets et de côtés. Dans certains cas, OpenGL® peut gérer des quadrilatères ou des polygones à quatre côtés, principalement en mode de dessin bidimensionnel (2D). À l'exception d'un polygone OpenGL® convexe et simple, la plupart des formes comportant plus de trois sommets seront éventuellement décomposées en triangles selon un processus appelé tessellation, qui peut avoir des effets indésirables dramatiques sur une scène.
Le seul type de polygone OpenGL® pouvant être dessiné de manière native sans nécessiter de pavage est appelé simplement un polygone. Ce type de forme suit des règles très simples. Les côtés doivent être convexes, ce qui signifie qu'ils ne créent pas d'angles aux sommets inférieurs à 90 °. Aucune arête ne peut se croiser et deux lignes seulement peuvent se rencontrer à un sommet donné. Cela limite un simple polygone à une forme 2D autonome telle qu'un carré ou un octogone, car si elle était tridimensionnelle (3D), plus de deux lignes se rencontreraient à certains sommets.
Lors de la construction d'un polygone OpenGL® très complexe, il est souvent plus facile de créer l'objet dans un programme de modélisation 3D externe. Cela permet non seulement un environnement visuel plus pratique dans lequel construire un objet, mais offre également l'avantage de permettre au concepteur de contrôler la manière dont les formes sont dallées afin qu'elles ne posent pas de problèmes de rendu. Vous pouvez également créer un polygone de manière procédurale à l'aide d'algorithmes permettant de tracer les sommets selon un motif, comme pour créer un motif en hélice ou en spirale.
Chaque polygone OpenGL® a une face, la zone pleine à l’intérieur des lignes de la forme. Bien qu'il soit possible de modifier ce comportement, en général, chaque polygone n'est visible que lorsque sa face est dirigée vers la caméra de visualisation. Si un polygone fait face au mauvais sens, il peut devenir invisible, selon le mode de rendu.
Chaque polygone OpenGL® a également une valeur appelée normale. La normale sert à définir la direction de la surface du polygone. Même si le polygone est clairement à un certain angle et à une certaine position, la surface normale peut aider à créer des effets de texture spéciaux ou à imiter des propriétés physiques qui ne sont pas uniformes. Une normale pour un polygone OpenGL® peut être définie sur n'importe quelle valeur, même négative, bien que les résultats puissent être imprévisibles.