Ignore:
Timestamp:
01/18/07 09:27:37 (18 years ago)
Author:
szirmay
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderingRuns/OgreLightVolumeRenderingRun.cpp

    r1722 r1987  
    3131void OgreLightVolumeRenderingRun::createLightVolumeMap() 
    3232{ 
    33         TexturePtr texPtr = Ogre::TextureManager::getSingleton().createManual(name,  
     33        TexturePtr texPtr = Ogre::TextureManager::getSingleton().createManual(name + "NoBlur",  
    3434                                                                                                                                                "default", 
    3535                                                                                                                                                TEX_TYPE_2D, 
     
    5050         v->setBackgroundColour(ColourValue::White); 
    5151         rt->setAutoUpdated(false); 
     52         
     53 
     54 
     55     
     56         texPtr = Ogre::TextureManager::getSingleton().createManual(name,  
     57                                                                                                                                                "default", 
     58                                                                                                                                                TEX_TYPE_2D, 
     59                                                                                                                                                resolution, 
     60                                                                                                                                                resolution, 
     61                                                                                                                                                0,                                                                                                                                               
     62                                                                                                                                                0, 
     63                                                                                                                                                PF_FLOAT16_RGBA, 
     64                                                                                                                                                TU_RENDERTARGET); 
     65        lightVolumeTexture2 = texPtr.getPointer(); 
     66        hpb = (lightVolumeTexture2->getBuffer()).getPointer(); 
     67        rt = hpb->getRenderTarget(); 
     68        v = rt->addViewport(lightVolumeCamera); 
     69        v->setOverlaysEnabled(false); 
     70        v->setBackgroundColour(ColourValue::White); 
     71        rt->setAutoUpdated(false); 
     72        v->setClearEveryFrame(true); 
     73        SceneManager* sm = Root::getSingleton()._getCurrentSceneManager();  
     74        RenderQueue *rq = sm->getRenderQueue(); 
     75        sm->setFindVisibleObjects(false); 
     76        rq->clear();  
     77        v->update(); 
     78        sm->setFindVisibleObjects(true); 
     79        v->setClearEveryFrame(false); 
    5280 
    5381         if(textureDepth > 1) 
     
    107135                RenderTarget* rt = lightVolumeTexture->getBuffer().getPointer()->getRenderTarget(); 
    108136                rt->update(); 
     137                restoreMaterials(); 
     138 
     139                //do blending 
     140            rt = lightVolumeTexture2->getBuffer().getPointer()->getRenderTarget(); 
     141            Material*  mat = (Material*) MaterialManager::getSingleton().getByName("GameTools/BlurLightVolume").getPointer(); 
     142                mat->getTechnique(0)->getPass(0)->getTextureUnitState(0)->setTextureName(lightVolumeTexture->getName()); 
     143                renderFullscreenQuad("GameTools/BlurLightVolume", rt);           
     144 
     145 
     146        /*       
     147                static int framecount = 0; 
     148                String filename = "lightvolume"; 
     149                filename.append(this->name); 
     150                //filename.append(StringConverter::toString(framecount)); 
     151                filename.append(".bmp"); 
     152                if(framecount % 5 == 0) 
     153                        rt->writeContentsToFile(filename); 
     154                framecount++;*/ 
     155 
    109156        } 
    110157        else 
     
    130177                        lightVolumeTexture3D->getBuffer()->blitFromMemory(volumePB); 
    131178                } 
    132  
    133         } 
    134          
    135         restoreMaterials(); 
     179                restoreMaterials(); 
     180        } 
     181         
     182         
     183 
     184         
    136185 
    137186        /* 
     
    141190        lightVolumeTexture3D->getBuffer()->blitFromMemory(volumePB); 
    142191        */ 
    143         /* 
    144         static int framecount = 0; 
    145         String filename = "lightvolume"; 
    146         filename.append(this->name); 
    147         //filename.append(StringConverter::toString(framecount)); 
    148         filename.append(".bmp"); 
    149         if(framecount % 5 == 0) 
    150                 rt->writeContentsToFile(filename); 
    151         framecount++;*/ 
     192         
    152193         
    153194 
Note: See TracChangeset for help on using the changeset viewer.