Subject: Re: progress?

From: Dave Stampe-Psy+Eng <[email-masked]>
Date: Fri, 17 Jan 92 00:18:34 -0500

Well, I've been posting a few of the renderer progress reports to
sci.virtual-worlds.  Basically, we have a good C version going that
does 8.5 fps (500 poly world) on a 486/25.  Most of the speed comes
from using my polyblitter.  BTW, most of the reason for the speed limit
right now is C's "literal" interpertation of structure operations: I
could get it TWICE as fast if I assemblyized it completely.

Interestingly, integerization so far has resulted in only small speed
increases because of the floating-point speed of the 486.  Some
floating point operations are actually faster than the integer
equivalent!  But of course it works better in integer on a 386.

The reason for doing a prototype in C is to debug the code, then to
incrementally integerize the math.  This way you can find errors or
roundoff problems early, and fix them quickly.  I expect as least 
a 2:1 speed increase (5:1 in some areas of code) in going to full
assembler.

BTW, I just added cosine polygon lighting this evening.  Even on a
16 color screen (monochrome objects with colored background) it looks
fantastic.  And the speed cost is minimal: about 10 mS/frame.  It is
a big improvement over precolored polygons.  No shadows, but the 
highlights look great, especially on the dense poly objects we're
using for development.  The poly facets actually look right, and
enhance the depth effect.

Code will trickle out for this thing, but we can make a demo available
for FTP sometime, and some C code examples.  Have to see when, though: a few days maybe.

- Dave Stampe