Un billboard (littéralement "panneau") est une surface 2D simulant un objet 3D. Le principe des billboards est de toujours faire face à la caméra : ainsi quelque soit l'endroit d'où on les regarde, ils donneront toujours l'illusion d'être en 3D.
L'avantage est de réduire énormément la complexité de la scène, puisque l'on va pouvoir remplacer des objets potentiellement complexes par deux simples triangles texturés.
On peut utiliser les billboards pour représenter de la végétation, des particules, ou encore des objets très lointains pour lesquels on ne pourra que très difficilement déceler le trucage.
(trouver images arbres vue dessus, arbres vue 3D, particules)
Il existe plusieurs méthodes pour aligner les billboards avec la caméra.
La plus simple est d'utiliser une matrice de vue ne contenant que la position de la caméra pour rendre le billboard. Ainsi il ne sera pas affecté par la rotation de la vue courante. Cependant cette méthode peut ne pas toujours donner des résultats corrects.
Une seconde solution est de calculer "à la main" la matrice de transformation de chaque billboard. Pour cela il nous suffit de connaître les 3 axes formant sa base locale :
- Z est le vecteur allant de la caméra au billboard
- Y est le vecteur "up", généralement (0, 1, 0)
- X est le produit vectoriel de Y et Z
La matrice du billboard se construit ensuite en plaçant simplement X, Y et Z en tant que colonnes de la matrice.
Référence : http://www.flipcode.com/articles/art...llboards.shtml
Partager