Performer 2.0 class sample source

HUB | Up | Download | Pheedbak | Tree | Topic | A-Z | Search | Hot | New


Performer Course ~/src directory

DESCRIPTION

Programs in this directory are used as sample source code in lecture/lab
or as sample solutions to lab activites.

NOTE

Many of the programs expect to load models from /usr/share/Performer/{data,friends}. Spare copies of these models have been provided under ../{pf_data,pf_friends} and the programs will look in these directories, too, to find the models. If these programs fail because neither set is available, you will get an error message like the one below:

        PF Warning/Resource(2):        file church.flt not loaded.
        PF Fatal/Usage:                Failed to read church.flt

	PROGRAMS	DESCRIPTIONS
	========	================
Basics
----------------
	basic.c         Simple programs to view a model.
	
	spin.c      	Viewer program that makes model spin.
	
	basicWin.c	Rewrite of basic.c. Adds better windowing 
			behavior and allocates items from shared arena.
	
	../labs/sim.c	Simple fly program.
	
	eskyFly.c	Adds an earth/sky model to sim.c to give the 
			appearance of a flying over (flat) terrain.


Modeling Xforms
----------------
	dcsFly.c	Basic eskyFly.c program w/ 2 indep. models each 
			controlled by a DCS node.
	
	orbitFly.c	Remake of dcsFly.c w/ 3 dependent models. 
			Uses SCS nodes for fixed displacements and DCS
			nodes for ones that change over time.
	
	pathFly.c	eskyFly.c program using a simple city.  Two 
			objects: the esprit car and the blimp, follow 
			their own paths during the simulation using 
			pfuPath.  Try the <v> key to ride along on 
			one of these vehicles.

Graphics State
----------------
	fogFly.c	Simple modification to pathFly.c to add global 
			fog to the scene.
	

Creating Geometry
-----------------
	geomFly.c	Adds simple quads (to be used later as 
			billboards) via libpr and pyramids (as road 
			pylons) via libpfdu calls to pathFly.c.
	
	texFly.c	Adds tree texture to quads in geomFly.c.


More Nodes
------------------	
	bboardFly.c	Converts trees in texFly.c to billboards so 
			that trees do not look flat
	
	textFly.c	Adds 3D text to bboardFly.c
	
	cloneFly.c	Uses cloning to copy a dynamic crane model 
			added to bboardFly.c. The 2 cranes move 
			independently even though one is a copy and 
			shares the same geometry.
	
	lpsFly.c	Adds light point states as road lights to 
			cloneFly.c.
	
	
	morphFly.c	Adds a simple morph node that distorts a quad
			to cloneFly.c.


Traversals & Callbacks
----------------------	
	chanGrpFly.c	Divides cloneFly.c into 3 dep. channels 
			(left view, front view, right view).
	
	driving.c	Converts fly model used in cloneFly.c to a 
			driving model and adds collision detection with 
			objects and added terrain.
	
	lightchange.c	Modifies cloneFly.c so that lit objects can 
			toggled their lighting status with the <l> key.
		   	Uses draw callback to make the change.
			Also preloads textures at start-up.
	
	channels.c	Simultaneously displays normal and car view 
			from cloneFly.c in two independent channels. 
			The car front is removed from the car channel 
			via a node mask.

	firefly.c	Uses picking to highlight objects in the scene
 			from cloneFly.c. To pick an object, use the 
			spacebar while pointing to an object. The <w> 
			allows you to to cycle between highlighing, 
			wireframe, or fire as the result of picking.
	
	appFly.c	Uses app callback to make text from textFly.c 
			spin.
	
	dbFly.c 	Uses database process to dynamically add and 
			remove models from cloneFly.c's scene graph.
			Keys <1>-<4> add models. Keys <6>-<9> remove 
			them.
	

Performance & Stats
--------------------
	statsFly.c	Adds statistics collection and display to 
			cloneFly.c.  Use the <s> key to toggle stats 
			display and the <p> key to cycle through 
			phase control.



Files of interest from "src/exampleCode/performer/pf2.0class/src" directory

Documentation

Reference


Select any combo of files you'd like to send yourself a compressed tar image of. Executables/scripts are indicated with a trailing `*' character. (Depending upon the browser, it may be necessary to hold down the Ctrl key to select/deselect disjoint items.) a compressed tar image of the above-selected items.
OR, ...
a compressed tar image of the entire src directory.

Copyright © 1996, Silicon Graphics, Inc.