occlusion culling using octrees

occlusion culling using octrees

Post by Michael Ada » Wed, 29 Jan 2003 08:01:55



hi all ogl guys out there.
my problem:
i am rendering a world using octrees.
i have frustrum culling, but the framerates are to low.
my idea: only render visible parts.
but, how can i determinate the visibility
by using this octree ?
or how to modyfy the octree for this
occlusion culling ?

thanks for your answers

michael

 
 
 

occlusion culling using octrees

Post by Jason Heye » Wed, 29 Jan 2003 09:07:50



Quote:> hi all ogl guys out there.
> my problem:
> i am rendering a world using octrees.
> i have frustrum culling, but the framerates are to low.
> my idea: only render visible parts.
> but, how can i determinate the visibility
> by using this octree ?
> or how to modyfy the octree for this
> occlusion culling ?

> thanks for your answers

I don't have any good answers to your questions but my own approach to
visibility determination is to calculate the PVS (Potentially Visible Set)
for each cell of the octree. To make that job easier I partition the octree
into a series of quadtrees first. Each quadtree represents a two-dimensional
world with solid and empty cells. I calculate the PVS for each empty cell,
which is essentially a two-dimensional problem. Once the PVS is complete you
can extract visibility information from each cell at run-time. First you
locate the cell in which the camera is located. Once you know what cell
you're in you can extract the visibility information for that cell. That
information will tell you what cells are visible from that cell. Then you
only draw the cells that are visible.

To try and explain an algorithm for calculating PVS here is futile. All I
can suggest is that you try to simplify the problem by dealing with
two-dimensional quadtree slices of octree. But even then you may have no
success. It is probably best that you do some research on computational
geometry first before you attempt to crack this problem.

 
 
 

occlusion culling using octrees

Post by Roger Crawfi » Wed, 29 Jan 2003 10:04:12


First, traverse your octree in a front-to-back order.  On modern hardware,
the heirarchical z-buffer will reject triangles at a time before they are
shaded and rasterized. With the new occlusion testing, you can
*periodically* render the front faces of the octree cube and query whether
it is visible (turn off the color and z-buffer setting for this). If it is
still not fast enough, you can just not draw the farther away parts of the
octree, or amp the fog up such that nothing is visible far away.

Roger


Quote:> hi all ogl guys out there.
> my problem:
> i am rendering a world using octrees.
> i have frustrum culling, but the framerates are to low.
> my idea: only render visible parts.
> but, how can i determinate the visibility
> by using this octree ?
> or how to modyfy the octree for this
> occlusion culling ?

> thanks for your answers

> michael

 
 
 

1. Terrain textures, octrees and occlusion culling?

Hi!
I finally got all the light stuff in my terrain engine to work
correctley and now I want to add some textures. My question is weather I
should use one texture for the whole terrain or should I use alot of
smaller textures for different parts?

I'm also having trouble deciding which technique to use for visability
determination. Octrees work fine when you want to do view
frustum-culling and collision detection. Occlusion culling on the other
hand work very well with terrian engines.
This is what I've conclude from information on the web. What do you
think?

Thanks!
/Michael Andersson

2. digital camera animation

3. Hardware Support for Occlusion Culling?

4. Texture mapping help needed...

5. Where to get Occlusion Culling Tutorials?

6. 3DS file format info

7. Occlusion culling source?

8. reset gnuplot?

9. occlusion culling

10. Help w/ occlusion culling/portal algorithm

11. Visibility algorithms/Occlusion culling in dense polyhedral environments.

12. Occlusion Culling

13. Elision, Culling, Clipping, and Occlusion