Comment créer un monde virtuel?
Programmation VRML
Comment programmer en VRML?
- Il faut en premier lieu créer un fichier d'extension .wrl. Afin de visualiser le résultat du fichier, il faut télécharger un
plug-in correspond à votre navigateur internet pour que le programme soit interprété par le navigateur. Vous trouverez à cette adresse les
plug-in existant:
Pour windows : Blaxxun, Cortona, Cosmo
Pour Linux : FreeWRL, VRMLView
Pour Mac : Cosmo mac
La représentation virtuelle s'affiche alors à l'écran lorsque vous double-cliquez sur le fichier. Vous pouvez alors par l'intermédiaire de la souris et du clavier changer l'angle de vue, se déplacer autour ou/et à l'intérieur de l'entité représentée, intéragir avec les différents objets présents.
Structure d'un fichier:
Structure d'un noeud: Nom_du_noeud { Type_de_champ Type_de_valeur Nom_du_paramètre Valeur_par_défaut}
Tous les éléments sont créer dans des noeuds qui comportent des champs et des paramètres. Entre autre, on peut donner une taille à un objet,
qui s'exprime selon trois composantes X= la largeur Y= La hauteur Z= la Profondeur. On peut définir des couleurs selon trois composantes :
Rouge, Vert, Bleu, chaque valeur va de 0 à 1. La valeur (0 0 0) correspond au noir et (1 1 1) au blanc.
Exemple de code: #En_tête du fichier #VRML V2.0 utf8 # On définit le fond de la scène Background { skyColor 0 0.1 0.4 } # On donne quelques informations générales de navigation NavigationInfo { avatarSize [ 0.25, 1.6, 0.25 ] } # On définit le point de départ de l'avatar Viewpoint { position 0 1.6 0 } # On ajoute un lumière directionnelle # Elle représente le soleil, elle éclaire de manière uniforme # tous les objets de la scène selon une direction. DirectionalLight { intensity 0.7 # L'intensité va de 0 (pas d'intensité) à 1 (Intensité maximale) direction 0 -1 0 # direction est le vecteur qui définit l'orientation de la lumière } # On définit le sol Transform { # Shape = définition d'une forme children Shape { # On va définir l'apparence de la forme : # Ici, sa texture appearance Appearance { texture ImageTexture { url "maps/herbe.jpg" } } geometry IndexedFaceSet { # On va définir une liste de points dans l'espace # Les points sont définit pour les composantes X Y Z et # séparés par des virgules coord Coordinate { point [ -500 0 0, 0 0 500, 500 0 0, 0 0 -500 ] } # on va définir une liste de faces qui relient les points # Pour chaque face, la liste de points se terminent par un -1 coordIndex [ 0, 1, 2, 3, -1 ] # en fait, on a défini un carré ... le sol } } children Billboard { children Shape { appearance Appearance { texture ImageTexture { url "maps/tree/arbre005.gif" } } geometry IndexedFaceSet { coord Coordinate { point [ -2.5 0 0, 2.5 0 0, 2.5 5 0, -2.5 5 0 ] } coordIndex [ 0, 1, 2, 3, -1 ] texCoord TextureCoordinate { point [ 0 0,1 0,1 1,0 1 ] } texCoordIndex [ 0, 1, 2, 3, -1 ] } } axisOfRotation 0 1 0 } } Télécharger des fichiers .wrl ici
Création d'objets avec Blender
Blender
Blender est un outil trés puissant, assez difficile et long à pendre en main. Mais il existe de nombreux tutoriaux qui explique étape par étape comment créer un personnage 3D ou encore les étapes pour faire une petite animation 3D.
Vous pouvez voir ci-dessous le personnage de Hell Boy créé sous Blender:
- http://www.blender.org/development/coding-guides/
- http://jmsoler.free.fr/didacticiel/blender/tutor/index.htm
Vous trouverez à l'adresse suivante des tuto: