![]() |
![]() |
![]() |
Membre de ClickFR, Reseau francophone Paie-Par-Click |
![]() |
![]() |
Simuler un refletL'objectif est de simuler le reflet d'objets sur une surface plane, parallèle au sol. Cette astuce vous permettra de simuler soit le reflet sur une surface d'eau, soit un parquet brillant, par exemple. |
![]() |
Dans un logiciel de calcul d'image de synthèse, le reflet est calculé avec la technologie du lancé de rayon. Pour connaître le couleur d'un point sur une surface réfléchissante, on lance un rayon qui part de l'utilisateur (du point de vue), on le fait " rebondir " sur la surface réfléchissante (exactement comme le fonctionnement d'un miroir) et on voit sur quel objet ce rayon tombe. |
![]() |
Dans un environnement temps réel, on ne peut pas se permettre de se demander, pour chaque point d'une surface, quelle va être sa couleur. On doit donc utiliser des stratagèmes pour simuler un reflet.
Sur une surface donnée, on utilise souvent l'environment mapping. Cette technique permet d'appliquer une texture sur une surface en fonction de l'angle de rotation de l'objet par rapport à l'utilisateur. La texture semble ne pas bouger alors que l'objet, lui bouge par rapport à l'utilisateur, ce qui donne une impression de reflet.
Vous pouvez voir un exemple de cette techno à la page "Pourquoi choisir Blaxxun Contact".
Ce n'est pas de cette technologie que nous allons aborder aujourd'hui.
Un reflet, c'est en fait une symétrie exacte par rapport au plan de la surface réfléchissante. Quand vous vous regardez dans miroir, vous avez bien l'impression (avec un peu d'imagination) qu'un autre vous (symétrique, l'œil droit est à la place du gauche etc.) se trouve derrière le miroir ? Alors en 3D, pourquoi ne pas effectivement modéliser cet autre vous symétrique, et le placer derrière ce fameux miroir, afin de simuler le reflet ?
Pour simuler un reflet, l'idée est donc de modéliser une scène symétrique par rapport au plan de la surface réfléchissante, et de rendre cette surface transparente, afin de voir " de l'autre coté du miroir ".
Nous allons prendre des formes qui possèdent déjà un axe de symétrie central (une sphère et un cône). Ce sont des objets simples à refléter, car la symétrie d'une sphère par rapport à un plan est une sphère et la symétrie d'un cône est un cône tourné à 180° (tête en bas).
Donc nous plaçons notre cône et notre sphère sur la scène |
|
Nous y ajoutons leur symétrie |
|
L'éclairage est un problème, car il doit être lui aussi symétrique.
Nous avons utilisé des DirectionnalLight.
Nous en avons placé en une pour les objets du haut, et une
dans la symétrie, pour les objets du bas.
Les DirectionnalLights ne s'appliquent qu'à leur groupe d'objet, tant mieux
dans la lumière de la scène ne doit pas perturber la lumière du reflet.
Entre ces deux groupes d'objets, ajoutons une surface avec une texture d'eau, non pas réfléchissante mais transparente, afin d'apercevoir la symétrie. L'illusion est parfaite, le cône et la sphère semblent de refléter sur la texture. |
|
Pour finir, il faut cacher la symétrie, ici, nous avons ajouté un sol qui borde l'eau. |
|
Lorsqu'un objet possède au moins un plan de symétrie, vous pourrez toujours en sortir en opérant des rotations pour créer la symétrie (voir à droite, la lampe de bureau). Pour des objets plus irréguliers (une habitation, par exemple), vous devrez modéliser leur symétrie, en plus de l'objet normal. |
|
L'application d'une texture rend souvent l'objet dissymétrique. Attention donc de bien réappliquer vos textures sur la symétrie de vos objets.
The abbey a été un monde sélectionné le 27/08/2001 comme monde de la semaine, il utilise la technique que nous vous avons proposée. Ce monde est très réussi. |
|
Récupérer tous les fichiers d'exemple.
Accueil de VRML Worlds | CHAT 3D | Autres technologies Web3D |
Des textures | Apprendre le VRML | Autres mondes multi-user |
Les objets du chat | Outils pour le VRML | Autres sites 3D |