Comment créer un monde virtuel?

 

Programmation VRML

Comment programmer en VRML?

  1. 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.
     

  2. 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: