source: trunk/VUT/GtpVisibility/src/FrustumCullingManager.cpp @ 94

Revision 94, 880 bytes checked in by mattausch, 19 years ago (diff)
RevLine 
[59]1#include "FrustumCullingManager.h"
[94]2#include <OgreLogManager.h>
[59]3
4namespace GtpVisibility {
5
6//-----------------------------------------------------------------------
7void FrustumCullingManager::RenderScene()
8{
[87]9        InitFrame();
[94]10        Ogre::LogManager::getSingleton().logMessage("**** Frustum Culling ****\n");
[74]11        while (!mHierarchyInterface->GetQueue()->empty())
[59]12        {
13                HierarchyNode *node = mHierarchyInterface->GetQueue()->top();
14                mHierarchyInterface->GetQueue()->pop();
15               
16                // interesting for visualization purpose
17                mHierarchyInterface->SetNodeVisible(node, false);
18                mHierarchyInterface->SetLastVisited(node, mHierarchyInterface->GetFrameId());
19
[74]20                if (!mHierarchyInterface->CheckFrustumVisible(node))
[59]21                {
22                        mNumFrustumCulledNodes ++;
23                }
[74]24                else
25                {               
26                        mHierarchyInterface->SetNodeVisible(node, true);
[59]27                        mHierarchyInterface->TraverseNode(node);
28                }
29        }
30}
31
32} // namespace GtpVisibility
Note: See TracBrowser for help on using the repository browser.