Ignore:
Timestamp:
05/06/05 01:39:32 (19 years ago)
Author:
mattausch
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/VUT/GtpVisibility/src/CoherentHierarchicalCullingManager.cpp

    r85 r86  
    11#include "CoherentHierarchicalCullingManager.h" 
    2 //#include <windows.h> 
     2#include <windows.h> 
    33 
    44namespace GtpVisibility { 
     
    88{ 
    99        mNumFrustumCulledNodes = mNumQueryCulledNodes = 0; 
    10         //OutputDebugString("Coherent Culling\n"); 
     10//      OutputDebugString("Coherent Culling\n"); 
    1111 
    1212        QueryQueue queryQueue; 
    13          
     13        unsigned int visiblePixels = 0; 
     14        bool isAvailable = false; 
     15 
    1416        //-- PART 1: process finished occlusion queries 
    1517        while (!mHierarchyInterface->GetQueue()->empty() || !queryQueue.empty()) 
    1618        { 
    1719                while (!queryQueue.empty() &&  
    18                            (queryQueue.front().second->ResultAvailable() || mHierarchyInterface->GetQueue()->empty())) 
     20                           queryQueue.front().second->GetQueryResult(visiblePixels,  
     21                                                                        mHierarchyInterface->GetQueue()->empty())) 
    1922                { 
    2023                        HierarchyNode *node = queryQueue.front().first; 
    21                                          
    22                         // wait until result available 
    23                         unsigned int visiblePixels = queryQueue.front().second->GetQueryResult(); 
    24                          
     24                                                 
    2525                        queryQueue.pop(); 
    2626 
     
    6767                                 
    6868                                // identify nodes that we cannot skip queries for 
    69                                 bool mustQuery = !wasVisible || mHierarchyInterface->HasGeometry(node) || mHierarchyInterface->IsLeaf(node); 
     69                                bool mustQuery = !wasVisible || mHierarchyInterface->HasGeometry(node) ||  
     70                                        mHierarchyInterface->IsLeaf(node); 
    7071 
    7172                                // reset node's visibility classification  
     
    7879                                if (mustQuery) 
    7980                                { 
    80                                         queryQueue.push(QueryPair(node, mHierarchyInterface->IssueOcclusionQuery(node))); 
     81                                        queryQueue.push(QueryPair(node,  
     82                                                mHierarchyInterface->IssueOcclusionQuery(node, wasVisible))); 
    8183                                } 
    8284                                         
Note: See TracChangeset for help on using the changeset viewer.