1. Demo Package
Built-in Scenes
Three scenes are provided: The first consists of an icosahedron, a cube with a cut corner, and a soccer ball-like shape above a checkerboard, the second shows an egg shape, a banana shape and a piece of stemware, the third shows the famous Newell teapot as a demonstration of Bezier patches. The button labeled "NewScene" switches between them.
The first scene demonstrates the capability for quickly rendering simple scenes. The icosahedron and soccer ball have individually colored polygons when displayed with facets. They use global colors, however when smooth shaded.
The second scene demonstrates the approximation of curved surfaces using polygons. The images cannot be generated as quickly, but provide more interesting shapes. The piece of stemware is transparent, as can be seen when an antialiased rendition is requested ("NoJaggy" mode).
The third scene demonstrates rendition of directly defined curved surfaces. Line drawings show just the patch boundaries. Shaded images are rendered by successive subdivision of the patches. Subdivision is terminated when the resulting patches are supposedly indistinguishable from approximating polygons. The approximating polygons are then rendered.
Button Semantics
The menu buttons have the following meanings:
- Help - provides a miniscule amount of helpful information (suggestions for additional messages are welcome)
- NewScene - Selects one of the predefined scenes, whichever was least recently used.
- Lines - displays the current scene as a line drawing.
- Facets - displays the current scene with each polygon shaded in a constant color.
- Smooth - displays the current scene with curved surfaces simulated.
- Shiny - displays the current scene with curved surfaces simulated and highlights shown.
- Orbit - generates a sequence of double-buffered images on an elliptical path about the scene starting at the eyepoint used for the most recently generated image. It continues making images forever, not advisable for rendering modes which take more than a few seconds per frame.
- STOP - stops the current button action, useful for mistakes and to salve impatience.
- Movie - reads a sequence of AIS files from [Cyan] and displays them at a rate controlled by left mouse clicks, using large amounts of VM in the process.
- Gallery - reads a set of AIS files defined by [Cyan]<AIS>Crow>PrettyPictures.txt and displays them in response to mouse clicks, using even larger amounts of VM in the process.
- Jaggy - turns off anti-aliasing, jaggy images.
- NoJaggy - turns on anti-aliasing, no jaggies, best used with a 24-bit display. Use with the 8-bit display will force use of greyscale imagery.
- Reset - recovers from various problems, resets viewport to full screen, clears objects from scene, lighting unchanged.
All of the mouse buttons have the same effect for the menu buttons. Outside the menu buttons a left click returns an x-y position and a right click returns a height. A middle click will move the light source around in the same manner as a left click moves the eyepoint.
If a Movie action is running the x position is used to control the frame rate from approximately -30 fps at the left of the screen to approximately +30fps at the right.
If the Gallery is being viewed, a left click moves ahead to the next picture, a right click moves back to the previous one. No response indicates no more pictures available in the requested direction. Pictures are cached, so that they can be run through quickly, once they are all read in.
Otherwise a left or right click causes the last scene to be rendered again seen from a new vantage point as indicated by the mouse position. The available range of values gives a space of about -20 to +20 units in all three dimensions.