RealityEngine Graphics Kurt Akeley Silicon Graphics Computer Systems.
-
Upload
mikayla-ralls -
Category
Documents
-
view
223 -
download
5
Transcript of RealityEngine Graphics Kurt Akeley Silicon Graphics Computer Systems.
RealityEngine Graphics
Kurt Akeley
Silicon Graphics Computer Systems
Overview
• Introduction
• System Architecture
• Features
• Conclusions / Results
Introduction
• SGI created.
• High end graphics work station
• Hardware Solution
Introduction
• First Generation System– Made in the early 80s– Useful hardware was just becoming available
• Floating Point hardware• No Frame-buffer Memory• No ASICs
– Lack of Functionality other than transformation.
Introduction
• First Generation System– Target
• Transformation• Flat-Shaded Primitives
– Results• Very simple scenes
Introduction
• Second Generation Systems– Made in the late 80s– Useful hardware was available and affordable
• Frame buffers• ASICs
– Greater Functionality
Introduction
• Second Generation System– Target
• Interpolate Color and Depth• Good Performance• Solid or Wire frame images
– Results• More complex scenes
Introduction
• RealityEngine (Third Generation)– Made in the 90s
– Hardware is cheap
– More functionality
Introduction
• RealityEngine– Target
• ½ Million triangles• Filtered Textures• Antialiasing• 30Hz rendering for full screen• 800000 triangles per second
Architecture
• Overview
Geometry Board
Raster Memory Boards
Display Gen Board
Triangle Bus
System Bus
Architecture
• Geometry Board– Input FIFO
– Command Processor
– Geometry Engines
Command Processor
GE GE GE GE
Architecture
• Command Processor– Two kinds of Commands
• Frequent• Infrequent
– Breaks down commands
– Broadcasts commands to Geometry Engines
Architecture
• Geometry Engine– Transforms, Lights, Clips polygons
– Decomposes all polygons to triangles.
– Setups a plane equation in X,Y screen directions
Architecture
• Triangle Bus– Used to broadcast output from Geometry
Engines
– Huge in size to prevent bottlenecking.
Architecture
• Raster Memory Boards– 5 Fragment Generators
– 80 Image Engines
– Huge Framebuffer
FG FG FG FG FG
Architecture
• Fragment Generator– Fragments– Coverage Mask– Texture Controls– Color– Fog
Architecture
• Fragment Generator– Fragment Generation
• Uses Modified Pineda algorithm
– Coverage Mask Generation• Generates 8x8 Masks
Architecture
• Fragment Generator– Texture Control
• Based around the most center pixel in mask.
• LOD Fraction and the center pixels location determine texel location.
Architecture
• Fragment Generator– Blends texture color with fragment color
– Blends Fog
Architecture
• Image Engine– Each engine is responsible for X pixels.
– Reconstructs subpixel sample depth using XY slopes.
– Update the framebuffer.
Architecture
• Display Gen Board– Each Image Generator pass on color
– Board dithers 12 bits to 10 bits.
– Gamma Corrects
Features
• Antialiasing– Alpha
• Determine alpha scale factor for blending.
• Poor results with polygons
– Multisample• Two Mask Generation
Modes– Point Sampled
– Area Sampled
Features
• Texture Mapping– 2D Textures
• Mipmapped
– 3D Textures– LOD texture mapping– Filtering– Magnification
Features
• Stereo in a Window
• Fast Clipping– Expand the frustum– Scissor
Conclusions / Results
• Design Alternatives– Single-Pass Antialiasing
• Improve resolution through hardware
– Multisample Antialiasing• Brute Force vs. Finese
– Immediate Resolution of Multisample Color• Use fragment color most of the time.
Conclusions / Results
• Design Alternatives– Triangle Bus
– 12-bit Color vs 8-bit• Visual banding elimination• Degraded resolution
Conclusions / Results
• Results– Created a System that
could• 20-60 Hz display
system• Handle advanced
functionality
Conclusion
• RealityEngine • Current Pipeline
Application
Vertex Program
Rasterization
Fragment Program
Display