Understanding Java 3D Graphics


Thanks to previous classes for providing the following information:

Understanding Alpha

AlphaMUmemoto - This program creates a number of random shapes and uses various Alpha functions to control their spin, path speed etc.

Understanding Collisions

CollisionJNakai - This program has a continual stream of spheres traveling across the screen and a number of random shapes spinning and traveling in various directions.  A message is printed each time a sphere collides with one of the shapes.

Understanding Light
      
LightJBuck - simple scene with directional light used to model the sun, ambient light used to model the moon, point light used to model a street light.   Phases affect the color of the moon.  See that effects of light are additive. 

LightODavis - simple scene with sphere used to show the effect of directional, point and ambient light on the color of the sphere.  Also shows the use of vectors for the directional and point light.

Understanding Fog

FogSJohnson - shows the use of linear and exponential fog.   The scene is a simple green pyramid.  User can specify the type of fog, color and exponent (for exponential fog).

Understanding Materials

MaterialJRichardson - This program shows the affect of 5 material attributes on the appearance of a sphere (specular color, ambient color, diffuse color, emissive color and shininess). Slider bars are provided so the user can test different attributes. 

Understanding Morph

MorphJBurford - A morph class changes the geometry of an object.  This demo shows a morph from a cube to a flat surface.

Understanding Text3D

Text3DCFarmer - Simple program that displays the word "Text" as Text3D

Understanding Textures

TextureNMushell - Shows how a gif can be wrapped around an object.  The demo includes a sphere and a world gif.


Understanding Transparency

TransparencyRVanDamme - This program shows the effects of transparency on a background image.


More Practice Programs


A few more websites of interest:

http://java3d.j3d.org/tutorials/index.html - nice applets
http://www.vrupl.evl.uic.edu/LabAccidents/java3d/
http://escience.anu.edu.au/lecture/cg/BehaviorInterpolator/printCG.en.html