Author Topic:   Deferring Priority Computation in ROAM
posted June 11, 2000 07:50 PM            
Has anyone implemented the Deferred Priority Computation algo described (albeit very briefly) in the ROAM white paper? Does anyone even understand it?



Bryan T
posted June 20, 2000 12:52 AM            

I've not implemented it, but here's an explanation in human readable form for ya:

After you have the split/merge optimizations in place, priority defferal is the next step. For split/merge, you end up recomputing thousands of prioritys each frame, which can be really expencive.

Instead, why not just recompute the prioritys of the triangles that are likely to need splitting or merging? So, keep a bin for each of the next dozen frames. In each bin, place the triangles who's priorities are within certain bounds.

The bounds of the priorities in each bin are based on the speed of the viewer, as well as the priorities of the triangles themselves. The faster the eye, the more triangles will go in the closest bin. A slow moving eye will not need to recompute as many triangles each frame.

The actual math to find these priority bounds is based on your split decision equation and the maximum speed the eye can move. I couldn't tell you much more, although I understand what they are refferring to, it is another level to actually derrive the equations.

Hope that gives you something to work with.