Frustum Culling?

This topic is 4848 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

Recommended Posts

I'm doing some reading in frustum culling techniques, and I started to wounder witch component I should do the culling on.. Should I Do i on each separate polygon, a combination of polygons, or on a perobject level? By the way, the game i'm developing is a hockey game.. / Christoffer Nyberg

Share on other sites
I'd do it on a per-object level. Prehaps storing some sort of collision hull information for each object, a bounding box or sphere for which the object is contained within, then you'll need to do a test to see if the object is partially or fully within the view frustrum based on its position and its bounding volume.

Richard.

Share on other sites
The problem is that i don't have that many object, One gigantic mesh for the hole arena base, on for the ice, two for the goals.. and then the animated characters plus the puck. And it's the arenaBase that is 30.000 triangles that needs the most culling :).

Share on other sites
You don't want to cull on a per-triangle basis, and breaking down an object would only make sense if 1) the object is large and likely to have an extremely large number of triangles outside the frustum and 2) you can draw a subset of the object at low cost.

Generally culling on only a bounding volume is more than sufficient. If you have more than a few objects you will also want to cull multiple objects at a time. Look into Quadtrees, octrees, etc for more infomration on this.

Share on other sites
Quote:
 Original post by Chris_NThe problem is that i don't have that many object, One gigantic mesh for the hole arena base, on for the ice, two for the goals.. and then the animated characters plus the puck. And it's the arenaBase that is 30.000 triangles that needs the most culling :).

Break the object down into multiple meshes then, and cull each one seperately.

Share on other sites
Ahhh, cool... I think you'll need some sort of system to split this up into chunks, which you can then test with the view frustrum.

check out the section titled "Cell-based occlusion culling"...

Richard.

Share on other sites
I do frustum clipping at an object level using a bounding sphere, then an axis-aligned BB. After that, clipping is done for each poly in view space against the screen edges. You will probably get better performance if you break the arena into smaller pieces and treat each as an object.

Share on other sites
Ok, will split the arena base into chunkable( if that is a word), objects and then try some culling... thanks for the answers.

Share on other sites
...something like:

- an octree
- a kd-tree / aabb tree

Divide the geometry into a tree structure and use your frustrum to cull branches of the tree.

You can decide whether you want to cut the triangles (unique nodes) or to leave the triangles intact (overlapping nodes).

1. 1
Rutin
47
2. 2
3. 3
4. 4
5. 5

• 10
• 27
• 20
• 9
• 20
• Forum Statistics

• Total Topics
633405
• Total Posts
3011681
• Who's Online (See full list)

There are no registered users currently online

×