Changeset 145 for trunk/VUT/Ogre


Ignore:
Timestamp:
06/22/05 10:05:06 (20 years ago)
Author:
mattausch
Message:

fixed bug when canceling login
fixed visibility queries using occlusion queries

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/VUT/Ogre/src/OgrePlatformQueryManager.cpp

    r144 r145  
    130130                ++visQueryIt; 
    131131                 
    132                 // nodes with visibilty 0 in queue:  
    133                 // happens if node is intersected by near plane 
     132                // node with visibilty 0 in queue (e.g., if node is intersected by near plane) 
    134133                if (visiblePixels > 0) 
    135134                { 
     
    161160                if (visiblePixels > 0) 
    162161                {                         
    163                         visibleGeometry->push_back(GtpVisibility::MeshInfo(*geometryIt,  
    164                                 visiblePixels, projectedPixels)); 
     162                        visibleGeometry->push_back(GtpVisibility::MeshInfo(*geometryIt, visiblePixels,  
     163                                projectedPixels)); 
    165164                } 
    166165        } 
     
    209208        cam->setAspectRatio(1.0); 
    210209        cam->setFOVy(Radian(Math::HALF_PI)); 
    211  
    212         std::stringstream d; 
    213         d << "old camera: " + StringConverter::toString(savedCam->getDerivedPosition()) +  
    214                 " " + "O: " + StringConverter::toString(savedCam->getDerivedOrientation()); 
    215         LogManager::getSingleton().logMessage(d.str()); 
    216210 
    217211        int sign = -1; 
     
    230224                ComputeCameraVisibility(*cam, visibleNodes, visibleGeometry, relativeVisibility); 
    231225                 
    232                 //mViewport->getTarget()->update(); for(int j=0; j<10000000; j++)       printf("HAAHHAHAHAHAH"); 
     226                //mViewport->getTarget()->update(); for(int j=0; j<10000000; j++)       printf("wait"); 
    233227 
    234228                // permute directions 
     
    254248 
    255249        for (visibleNodesIt = visibleNodes->begin(); visibleNodesIt != visibleNodesIt_end;  
    256                 ++visibleNodesIt); 
     250                ++visibleNodesIt) 
    257251        { 
    258252                if (!nodeInfo || (nodeInfo->GetNode() != (*visibleNodesIt).GetNode())) 
     
    260254                        nodeInfo = &(*visibleNodesIt); 
    261255                } 
    262                 else 
    263                 { 
    264                         // add visibility 
    265                         nodeInfo->SetVisiblePixels(nodeInfo->GetVisiblePixels() +  
    266                                 (*visibleNodesIt).GetVisiblePixels()); 
    267                  
    268                         nodeInfo->SetProjectedPixels(nodeInfo->GetProjectedPixels() +  
    269                                 (*visibleNodesIt).GetProjectedPixels()); 
     256                else // add visibility 
     257                {                        
     258                        nodeInfo->AddVisibility(*visibleNodesIt); 
    270259                } 
    271260 
     
    283272        GtpVisibility::MeshInfo *geomInfo = NULL; 
    284273 
     274        int i=0; 
    285275        for (visibleGeomIt = visibleGeometry->begin(); visibleGeomIt != visibleGeomIt_end;  
    286                 ++visibleGeomIt); 
     276                ++visibleGeomIt) 
    287277        { 
    288278                if (!geomInfo || (geomInfo->GetMesh() != (*visibleGeomIt).GetMesh())) 
     
    290280                        geomInfo = &(*visibleGeomIt); 
    291281                } 
    292                 else // info points to equal mesh 
    293                 { 
    294                         // add visibility 
    295                         geomInfo->SetVisiblePixels(geomInfo->GetVisiblePixels() +  
    296                                 (*visibleGeomIt).GetVisiblePixels()); 
    297  
    298                         geomInfo->SetProjectedPixels(nodeInfo->GetProjectedPixels() +  
    299                                 (*visibleNodesIt).GetProjectedPixels()); 
     282                else // info points to same mesh, just add visibility 
     283                { 
     284                        geomInfo->AddVisibility(*visibleGeomIt); 
    300285                } 
    301286        } 
Note: See TracChangeset for help on using the changeset viewer.