| Title Page | 

Morning
	Section 1 - Shapes, geometry, and appearance
	
	Section 2 - Animation, sensors, and geometry
	
Afternoon
		
			
		
			 
		
				
				Introducing animation 
			 
			
				
				 
			
			
				
				 116
			 
			
			
		
			 
		
				
				Animating transforms 
			 
			
				
				 
			
			
				
				 133
			 
			
			
		
			 
		
				
				Sensing viewer actions 
			 
			
				
				 
			
			
				
				 161
			 
			
			
		
			 
		
				
				Building shapes out of points, lines, and faces 
			 
			
				
				 
			
			
				
				 175
			 
			
			
		
			 
		
				
				Building elevation grids 
			 
			
				
				 
			
			
				
				 199
			 
			
			
		
			 
		
				
				Building extruded shapes 
			 
			
				
				 
			
			
				
				 208
			 
			
			
		
			 
		
				
				Controlling color on coordinate-based geometry 
			 
			
				
				 
			
			
				
				 221
			 
			
			
		
			 
		
				
				Controlling shading on coordinate-based geometry 
			 
			
				
				 
			
			
				
				 238
			 
			
			
	
			 
		
				
				Summary examples 
			 
			
				
				 
			
			
				
				 253
			 
			
	Section 3 - Textures, lights, and environment
	
		
			
		
			 
		
				
				Mapping textures 
			 
			
				
				 
			
			
				
				 259
			 
			
			
		
			 
		
				
				Controlling how textures are mapped 
			 
			
				
				 
			
			
				
				 276
			 
			
			
		
			 
		
				
				Lighting your world 
			 
			
				
				 
			
			
				
				 299
			 
			
			
		
			 
		
				
				Adding backgrounds 
			 
			
				
				 
			
			
				
				 311
			 
			
			
		
			 
		
				
				Adding fog 
			 
			
				
				 
			
			
				
				 325
			 
			
			
		
			 
		
				
				Adding sound 
			 
			
				
				 
			
			
				
				 333
			 
			
			
		
			 
		
				
				Controlling the viewpoint 
			 
			
				
				 
			
			
				
				 352
			 
			
			
		
			 
		
				
				Controlling navigation 
			 
			
				
				 
			
			
				
				 358
			 
			
			
		
			 
		
				
				Sensing the viewer 
			 
			
				
				 
			
			
				
				 366
			 
			
			
	
			 
		
				
				Summary examples 
			 
			
				
				 
			
			
				
				 382
			 
			
	Section 4 - Scripts and prototypes
	
		
			
		
			 
		
				
				Controlling detail 
			 
			
				
				 
			
			
				
				 387
			 
			
			
		
			 
		
				
				Introducing script use 
			 
			
				
				 
			
			
				
				 399
			 
			
			
		
			 
		
				
				Writing program scripts with JavaScript 
			 
			
				
				 
			
			
				
				 409
			 
			
			
		
			 
		
				
				Writing program scripts with Java 
			 
			
				
				 
			
			
				
				 435
			 
			
			
		
			 
		
				
				Accessing the browser from JavaScript and Java 
			 
			
				
				 
			
			
				
				 459
			 
			
			
		
			 
		
				
				Creating new node types 
			 
			
				
				 
			
			
				
				 471
			 
			
			
		
			 
		
				
				Providing information about your world 
			 
			
				
				 
			
			
				
				 491
			 
			
			
		
			 
		
				
				Summary examples 
			 
			
				
				 
			
			
				
				 494
			 
			
			
		
			 
		
				
				Miscellaneous extensions 
			 
			
				
				 
			
			
				
				 501
			 
			
			
			 
		
				
				Conclusion 
			 
			
				
				 
			
			
				
				 506