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

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