hidden line removal

Tim Hall tjh at bucrf11.bu.edu
Mon Sep 17 08:33:12 AEST 1990


The torrid story...

I originally wrote an implementation of hidden line removal using
'lsetdepth' to do hidden lines.  By drawing the surface in the background
color and then changing the near/far values that get mapped into the
Z-buffer you can "move" the lines forward off the surface - this avoids
the in/out problem due to Z-buffer inprecision.  The result?  Ridicule
and shame for implementing a "wrong" algorithm.  So I went on to implement
Kurt Akeley's decal and hollow polygon algorithms (Iris Universe issue 11)
that is a slower but "correct" algorithm.  However, Kurt's methods
won't work on the PI.  Through the miracle of the net I got to ask Mr.
Akeley what a good method was on the PI.  The reply was the 'lsetdepth'
method.  Argh.  My life goes in circles.

The ugly problem...

Armed with this new recommendation I'm giving the 'lsetdepth' method
a second life.  The actual problem is how much do you change the
near/far mappings to get an acceptable image?  Too far apart and you
get the in/out problem, too close together and unwanted lines show
through.  Previously I just attached the near/far values to a dial 
and eyeballed it.  What I really need is a method to determine what
the change should be.  I can make an "intellegent guess" at what 
that method is and then fine tune it with trial and error, but this is
a non-sanctioned experiment and besides, sombody out there *must* have
already done the math.  Now you just have to share it with me!

Many thanks for any help.

--
-Tim Hall
tjh at bu-pub.bu.edu

The night is filled with the cries of dispossessed children in search
of paradise.  -Dead Can Dance



More information about the Comp.sys.sgi mailing list