5
\$\begingroup\$

I'm reading about efficient Frustum culling algorithms. I found an article about a smart method that first use the Frustum AABB (Axis Aligned Bounding Box) to eliminate most of the scene before check again against the actual frustum representing the camera.

I didn't do any performance test yet, but maybe somebody else did and can answer this question.

Let's say I'm using an Octree to quickly check again the camera bounding box. But I do not want to do a second pass again the camera planes. If I simply render everything so far, isn't that actually faster than do the second pass?

Assume object geometry is loaded into VRAM using hardware vertex buffers.

enter image description here

\$\endgroup\$
4
  • 2
    \$\begingroup\$ It all depends. If your shaders are expensive vs the cost of culling... So there's no universal answer. \$\endgroup\$ Sep 4, 2015 at 23:52
  • \$\begingroup\$ Is this OpenGL-related? \$\endgroup\$ Sep 6, 2015 at 7:26
  • \$\begingroup\$ @immibis It's for an OpenGL project that's why I tagged it as OpenGL but frustum culling is not OpenGL specific. Looking at the OpenGL pipeline graph, I think that the vertex shaders of all the rendered objects will run even if the objects won't be visible at the end, but the fragment shaders do not run for non visible geometry. \$\endgroup\$ Sep 6, 2015 at 21:00
  • \$\begingroup\$ Would be able to share the reference of that article you mention in your question? Thanks! \$\endgroup\$
    – MAnd
    Nov 17, 2015 at 1:13

1 Answer 1

5
\$\begingroup\$

Yes. There are times when it is needed still. Its really situational and depends on the details of your game and the other data structures you have in place. (And resolution of your Octtree and such)

It's just a another tool in the toolbox but is definitely still used commonly.

Just like you wouldn't hammer a screw in or hammer the ground for no reason, you should use it when it's useful, and don't use it when it's not (:

\$\endgroup\$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .