Changeset 147 for trunk/VUT/Ogre/src


Ignore:
Timestamp:
06/22/05 18:35:55 (20 years ago)
Author:
mattausch
Message:

fixed average fps + shadow maps

File:
1 edited

Legend:

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

    r141 r147  
    223223        else 
    224224        {        
    225                 // we interleave identification and rendering of objects  
    226                 // in _renderVisibibleObjects 
    227  
     225                // if not the shadow pass we interleave identification  
     226                // and rendering of objects in _renderVisibibleObjects 
     227                if (mShadowTechnique == SHADOWTYPE_TEXTURE_MODULATIVE &&  
     228                        mIlluminationStage == IRS_RENDER_TO_TEXTURE) 
     229                { 
     230                        TerrainSceneManager::_findVisibleObjects(cam, onlyShadowCasters); 
     231                } 
    228232                // only shadow casters will be rendered in shadow texture pass 
    229                 mHierarchyInterface->SetOnlyShadowCasters(onlyShadowCasters); 
    230                 //InitVisibilityCulling(cam); 
     233                //mHierarchyInterface->SetOnlyShadowCasters(onlyShadowCasters); 
    231234        } 
    232235        //TerrainSceneManager::_findVisibleObjects(cam, onlyShadowCasters); 
     
    247250                mIlluminationStage = IRS_NONE; 
    248251         
     252                TerrainSceneManager::_renderVisibleObjects(); 
     253 
     254                mIlluminationStage = savedStage; 
     255        } 
     256        // normal rendering for shadow maps because of performance 
     257        else if (mShadowTechnique == SHADOWTYPE_TEXTURE_MODULATIVE &&  
     258                         mIlluminationStage == IRS_RENDER_TO_TEXTURE) 
     259        { 
    249260                TerrainSceneManager::_renderVisibleObjects(); 
    250261        } 
     
    313324                 
    314325        // set the new render level index afterwards => new level in the next frame  
    315         TerrainRenderable::setCurrentRenderLevelIndex( 
    316                 (TerrainRenderable::getCurrentRenderLevelIndex() + 1) % 10); 
     326        int levelIdx = (TerrainRenderable::getCurrentRenderLevelIndex() + 1) % 10; 
     327        TerrainRenderable::setCurrentRenderLevelIndex(levelIdx); 
    317328 
    318329        getRenderQueue()->clear(); 
Note: See TracChangeset for help on using the changeset viewer.