Research & Development

Occlusion Systems

Posted on Nov 20, 2007, 1:00 pm
In a Tech presentation, Al Hastings (CTO) shared the details of both the static and dynamic occlusion systems that we used for both Resistance: Fall of Man and Ratchet and Clank Future: Tools of Destruction.
 
Our static occlusion system is basically a straightforward grid-based PVS which has the advantage of being:
 
Very fast to query at run-time - almost free
Relatively low memory footprint
Doesn't impose any restrictions on level construction techniques
  
But this method also comes with some disadvantages:
 
Labor intensive and time intensive process
Hard to keep it up-to-date during production
Can't handle moving geometry, deforming geometry, destructible geometry
Suffers from some over-inclusion (large ties are the biggest problem, compression error is a secondary problem)
Monolithic database (hard to stream, etc) 
 
Our dynamic occlusion system is another straightforward system. We pre-render the bounding volumes on the GPU to determine visibility. The advantages:
 
Relatively lightweight system (rendering the bounding volumes usually takes a fraction of a millisecond)
Works with any level design
Typically it manages to cull that vast majority of objects that should be culled.
  
And the disadvantages:
 
Basing occlusion on bounding volume visibility works poorly for some objects (long, thin mobys in particular)
One frame lag issues
Visibility spikes can occur after camera cuts and mode transitions
  
Check out Al's slides to find out more about how they're used and implemented in practice.
0

0 COMMENTS

SHARE
BE THE FIRST TO LIKE THIS     LIKE     COMMENT

LEAVE A COMMENT



You must be logged in to add a comment
LATEST ARTICLES