George Kyriazis (kyriazis++at++mistral.esd.sgi.com)
Wed, 7 Feb 1996 21:26:08 -0800 (PST)
It actually has two aspects, which, when combined provide the desired
result. Performance figures are included below.
1. Certain "cheap" texturing paths are optimized. This is basically
the following combinations:
2-d textures
no texture borders
min/mag filters: GL_NEAREST / GL_NEAREST (no mip-mapping)
repeat/clamp modes: GL_REPEAT (both s&t directions)
glTexEnv modes: GL_REPLACE_EXT is fastest (no lighting).
GL_MODULATE is fast, but not top speed.
GL_PERSPECTIVE_CORRECTION_HINT should NOT be set to GL_NICEST
(This way a divide is avoided per pixel).
GL_RGB and GL_RGBA textures are accelerated
(blending supported for RGBA textures)
depth buffering is supported.
no stencil.
no scissoring when depth buffer is enabled.
Just this optimization gives you upto 2Mpxls/sec depth-buffered throughput,
which is about 5-10x performance increase, but it's not enough..
2. An OpenGL SGIX (machine dependent) extension is added that allows
rasterization to be performed at a level courser than 1-pixel. This
way, the (software) rasterizer performs less work. This "zoom"
factor can be altered on a frame-by-frame basis.
Traditional (non-textured) rendering suffers a hit using this mode
(because of the hardware support existing for flat/gouraud polygons).
Only when the zoom factor is >= 3 you get performance higher than
traditional rasterization.
For textured polygons, using the above settings, you can get pixel
throughputs which can reach about 20Mpxls/sec, with a decreased
visual quality, of course.
For simple scenes, you CAN get fully-textured real-time 30Hz.
The above also applies for the just-announced R5000 Indy. The R5Ks
provides the highest texture performance, followed by R4400s, and then
by R4600s.
--george
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:52:22 PDT