![]() |
||
|
| |||
Traduction par Ap0 du document original sur http://www.java3d.orgCopyright © 2001 Greg Hopkins Eclairer votre monde
import com.sun.j3d.utils.geometry.*; import com.sun.j3d.utils.universe.*; import javax.media.j3d.*; import javax.vecmath.*; public class Ball { public Ball() { // Créer l’univers SimpleUniverse universe = new SimpleUniverse(); // Créer une structure contenant les objets BranchGroup group = new BranchGroup(); // Créer une sphère et l’ajouter au groupe d’objets Sphere sphere = new Sphere(0.5f); group.addChild(sphere); // Créer une lumière rouge éclairant à 100 m depuis l’origine Color3f light1Color = new Color3f(1.8f, 0.1f, 0.1f); BoundingSphere bounds = new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0); Vector3f light1Direction = new Vector3f(4.0f, -7.0f, -12.0f); DirectionalLight light1 = new DirectionalLight(light1Color, light1Direction); light1.setInfluencingBounds(bounds); group.addChild(light1); // Regarder vers la sphère pour lui faire face universe.getViewingPlatform().setNominalViewingTransform(); // Ajouter les groupe d’objets à l’univers universe.addBranchGraph(group); } public static void main(String[] args) { new Ball(); } } La sphère que nous venons de créer est blanche, par défaut mais aaparaît rouge grâce à l’éclairage coloré. Puisque c’est une lumière directionnelle (DirectionalLight), nous avons aussi à spécifier à quelle distance cette lumière va éclairer et dans quelle direction. Dans cet exemple, la lumière éclaire jusqu’à 100 m et ce vers la droite, inclinée vers le bas et vers l’intérieur de l’écran (ceci est défini par les vecteurs : : 4.0 à droite, -7.0 en bas, et -12.0 vers l’intérieur de l’écran, en profondeur). Vous pouvez également créer une lumière ambiante (AmbientLight) pour créer un éclairage sans direction à spécifier ou bien un SpotLight si vous désirez vous focaliser sur un endroit précis de la scène. La combinaison d’une forte source lumineuse directionnelle et d’une lumière ambiante plus faible donnera une impression plus naturelle et réaliste de votre scène. Les lumières dans Java 3D ne produisent pas d’ombres, ce serait beaucoup trop long à calculer. |
|
6 internaute(s) sur Web3d-fr
|
Copyright Web3d-fr 2001-2004
|
| Création de mondes VRML/X3D | |
| Autres technos Web3d | |
| Outils et logiciels | |
| 3D multi-utilisateurs | |
| Articles et informations | |
| Ressources gratuites | |
| Autres sites et portails 3D | |
| Trouver un emploi | |
|
| |