OpenGL éclairage est l'un des aspects les plus
complexes, et parfois moins bien compris, en trois dimensions de programmation
(3D) infographie. Il peut être utilisé pour ajouter la nécessaire et réaliste
touche finale à une scène rendue, mais il peut aussi être exigeant calcul et,
finalement, la confusion lorsque les effets ne sont pas facilement atteints.
Certains éléments, comme la définition des normales de surface, peuvent être
facilement compris en d'autres parties du modèle d'éclairage, tels que la
répartition des types de lumière différentes, peuvent nécessiter une étude plus
approfondie de saisir pleinement. Deux préoccupations sont habituellement présentes
lorsque vous travaillez avec éclairage OpenGL : la vitesse de rendu et de
qualité. Il ya quelques conseils qui peuvent vous aider à atteindre une
proportion acceptable des deux, mais un compromis entre la qualité et la
vitesse en fin de compte doivent être faits.
Un problème fréquemment rencontré, en
particulier pour ceux qui sont nouveaux à OpenGL éclairage, c'est que tous les sommets dans une
scène doit avoir sa normale à la surface définie. Sans les normales, le moteur
de rendu utilisera plutôt une constante unique, ils entraînent tout dans une
scène à paraître plat et sans ombre. Une astuce lors de la définition des
normales est d'utiliser des valeurs qui ne sont pas perpendiculaires à la
surface, mais plutôt face à une direction différente. Cela va changer la façon
dont la lumière est rendue à la surface et peuvent être utilisées pour créer
facilement des textures de bruit ou rocheux, un processus connu sous le bump
mapping.
Pour obtenir de bons effets, et
peut-être unique, dans une scène en utilisant OpenGL éclairage, il est nécessaire de bien
comprendre quelles sont les sources de lumière ambiante, spéculaire, diffuse et
émettant entraîner. Une scène pleine de brouillard peut être faite pour
paraître plus réaliste avec une haute valeur ambiante grise. De même, des
effets spéciaux tels que le feu ou les feux exposés peut être fait avec les
matières émettrices et de sources lumineuses. La superposition et la
combinaison des quatre modèles de base sont ce qui peut faire une scène plus
réaliste.
Il est important de comprendre que
l'éclairage OpenGL nécessite une grande
quantité de puissance de traitement pour chaque image rendue. Cela signifie que
l'optimisation d'une scène peut aider à obtenir un meilleur taux de trame. Il y
a des choses qui peuvent réduire le temps de rendu sont à utiliser aussi peu de
sources de lumière que possible, de minimiser la quantité de surfaces étant
éclairés, et d'éviter les algorithmes ou les extensions qui traitent le
framebuffer finale à plusieurs reprises. Déplacement de l'éclairage dans une
scène peut aussi avoir des effets néfastes sur la performance et devrait être
évitée lorsque la vitesse de rendu devient problématique.
Un dernier conseil sur l'utilisation
de l'éclairage OpenGL est de savoir
quand ne pas utiliser OpenGL éclairage.
Il peut être facile de penser à placer des objets et des lumières émettant dans
une scène à chaque point où l'on serait dans la réalité, mais cela peut
rapidement devenir impraticable. Au lieu de cela, de nombreuses tours
d'éclairage peuvent être fait par le biais d'illusions à l'aide des images de
texture bien faits qui ont déjà attiré l'éclairage sur la surface. De la même
manière, l'organisation de la géométrie d'une scène peut parfois éliminer le
besoin de multiples sources de lumière en déguisant certains problèmes ou en
permettant une source unique à l'intérieur d'un objet composé creux de briller
à travers plusieurs ouvertures prévues.
Ecrit par: Eugene P.
Edité par: Angela B.