Submitted by , posted on 18 October 2000

Image Description, by

Here we have a couple of screenshots from the visibility algorithm that I am developing here at Davilex. The algorithm is a combination of an adaptive octree for spatial subdivision and a c-buffer for occlusion testing. About the shots: The first one (top left) shows the scene, rendered normally. The one in the top-right corner shows the c-buffer: 'Red' means occluded. Note that I don't just draw every single polygon in this buffer, but just the large occluders. Also note that I normally use a lower resolution c-buffer, but that doesn't look as good for an IOTD. :) The green lines are the boundaries of the adaptive octree nodes, the blue lines (hard to see) are the bounding boxes of the detail meshes. The two images on the bottom side of the image show the scene rendered in wireframe mode, with and without culling. This is a conservative culling algorithm; as soon as a part of a mesh is visible, it's drawn completely. This ensures minimal culling costs, resulting in optimal performance on today's hardware. For software rendering, you might want to try a slightly less conservative algorithm.

Jacco Bikker, a.k.a. 'The Phantom',
Davilex Software (

Image of the Day Gallery



Copyright 1999-2008 (C) FLIPCODE.COM and/or the original content author(s). All rights reserved.
Please read our Terms, Conditions, and Privacy information.