Changeset 1688


Ignore:
Timestamp:
10/27/06 17:37:24 (18 years ago)
Author:
szirmay
Message:
 
Location:
GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/include/RenderTechniques/OgreCausticCasterRenderTechnique.h

    r1351 r1688  
    4545                                                        float attenuation, 
    4646                                                        bool useTriangles, 
     47                                                        bool blurCauCubeMap, 
    4748                                                        Pass* pass, 
    4849                                                        OgreRenderable* parentRenderable, 
     
    5859                @return name of the caustic cubemap texture 
    5960        */ 
    60         String& getCausticCubeMapName(); 
     61        const String& getCausticCubeMapName(); 
    6162        float getAttenuation(){return attenuation;} 
    6263 
     
    7778        float attenuation; 
    7879        bool useTriangles; 
     80        bool blurCauCubeMap; 
    7981         
    8082        //inherited 
     
    118120        bool useDistance; 
    119121        bool useTriangles; 
     122        bool blurCauCubeMap; 
    120123         
    121124 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/include/RenderingRuns/OgreCausticCubeMapRenderingRun.h

    r1351 r1688  
    4242                                                                 bool updateAllFace, 
    4343                                                                 float attenuation, 
    44                                                                  bool useTriangles 
     44                                                                 bool useTriangles, 
     45                                                                 bool blurMap 
    4546                                                                 ); 
    4647        /** 
    4748                @brief returns the name of the resulting caustic cubemap texture 
    4849        */ 
    49         String& getCausticCubeMapTextureName(){return name;} 
     50        const String& getCausticCubeMapTextureName() 
     51        { 
     52                if(blurMap) 
     53                        return bluredCausticCubemapTexture->getName(); 
     54                else 
     55                        return name; 
     56        } 
    5057 
    5158        //inherited 
     
    7986        Texture* causticCubemapTexture; 
    8087        /** 
     88                @brief a pointer to the blurred cubemap texture that was created by this run 
     89        */ 
     90        Texture* bluredCausticCubemapTexture; 
     91        /** 
    8192                @brief the name of the material that should be used when rendering the caustic cubemap 
    8293        */ 
     
    8495        float attenuation; 
    8596        bool useTriangles; 
     97        bool blurMap; 
    8698         
    8799        //inherited 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/include/RenderingRuns/OgreDepthShadowMapRenderingRun.h

    r1670 r1688  
    4242                @brief returns the depth shadow map texture created by this run 
    4343        */ 
    44         String getDepthMapTextureName(); 
     44        const String& getDepthMapTextureName(); 
    4545         
    4646        /** 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques/OgreCausticCasterRenderTechnique.cpp

    r1351 r1688  
    1717                                                                                                                                float attenuation, 
    1818                                                                                                                                bool useTriangles, 
     19                                                                                                                                bool blurCauCubeMap, 
    1920                                                                                                                                Pass* pass, 
    2021                                                                                                                                OgreRenderable* parentRenderable, 
     
    2728        this->useTriangles = useTriangles; 
    2829        this->photonMapMaterialName = photonMapMaterialName; 
     30        this->blurCauCubeMap = blurCauCubeMap; 
    2931         
    3032        String newMaterialName = causticMapMaterialName + parentRenderable->getName() + "_clone"; 
     
    109111                                                                                                updateAllFace, 
    110112                                                                                                attenuation, 
    111                                                                                                 useTriangles 
     113                                                                                                useTriangles, 
     114                                                                                                blurCauCubeMap 
    112115                                                                                                ); 
    113116 
     
    130133} 
    131134 
    132 String& OgreCausticCasterRenderTechnique::getCausticCubeMapName() 
     135const String& OgreCausticCasterRenderTechnique::getCausticCubeMapName() 
    133136{ 
    134137        return ((OgreCausticCubeMapRenderingRun*) sharedRuns->getRun(ILLUMRUN_CAUSTIC_CUBEMAP)->asOgreRenderingRun())-> 
     
    203206                OgreCausticCasterRenderTechniqueFactory* f = (OgreCausticCasterRenderTechniqueFactory*) factory; 
    204207                f->useTriangles =  StringConverter::parseBool(params); 
     208        } 
     209 
     210        void parseBlurCauCubeMap(String& params, RenderTechniqueFactory* factory) 
     211        { 
     212                OgreCausticCasterRenderTechniqueFactory* f = (OgreCausticCasterRenderTechniqueFactory*) factory; 
     213                f->blurCauCubeMap =  StringConverter::parseBool(params); 
    205214        } 
    206215} 
     
    226235        this->attributeParsers.insert(AttribParserList::value_type("attenuation", (ILLUM_ATTRIBUTE_PARSER) parseAttenuation)); 
    227236        this->attributeParsers.insert(AttribParserList::value_type("use_triangles", (ILLUM_ATTRIBUTE_PARSER) parseUseTriangles)); 
     237        this->attributeParsers.insert(AttribParserList::value_type("blur_caustic_cubemap", (ILLUM_ATTRIBUTE_PARSER) parseBlurCauCubeMap)); 
    228238         
    229239} 
     
    247257        updateAllFace = false; 
    248258        useTriangles = false; 
     259        blurCauCubeMap = false; 
    249260 
    250261        parseParams(params); 
     
    262273                                                                                                attenuation, 
    263274                                                                                                useTriangles, 
     275                                                                                                blurCauCubeMap, 
    264276                                                                                                pass, 
    265277                                                                                                parentRenderable, 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderingRuns/OgreCausticCubeMapRenderingRun.cpp

    r1351 r1688  
    1414                                                                                                                   bool updateAllFace, 
    1515                                                                                                                   float attenuation, 
    16                                                                                                                    bool useTriangles) 
     16                                                                                                                   bool useTriangles, 
     17                                                                                                                   bool blurMap) 
    1718                :CausticCubeMapRenderingRun(startFrame, updateInterval, resolution, updateAllFace) 
    1819                , OgreRenderingRun(startFrame, updateInterval) 
     
    2526        this->materialName =  materialName; 
    2627        this->photonMapTexId = photonMapTexId; 
     28        this->blurMap = blurMap; 
    2729 
    2830        spriteSetName = name + String("_pixelSpriteSet"); 
     
    3436{ 
    3537        causticCubemapTexture = createCubeRenderTexture(name,  
     38                                                                                                Vector3(0,0,0), 
     39                                                                                                resolution, 
     40                                                                                                PF_FLOAT16_RGBA, 
     41                                                                                                0); 
     42 
     43        if(blurMap) 
     44                bluredCausticCubemapTexture = createCubeRenderTexture(name + "_BLURED",  
    3645                                                                                                Vector3(0,0,0), 
    3746                                                                                                resolution, 
     
    7281                renderFullscreenGrid(materialName, rt, tex->getWidth(), tex->getHeight()); 
    7382 
     83        if(blurMap) 
     84        { 
     85                rt = bluredCausticCubemapTexture->getBuffer(facenum, 0).getPointer()->getRenderTarget(); 
     86                Material*  mat = (Material*) MaterialManager::getSingleton().getByName("GameTools/BlurCubeFace").getPointer(); 
     87                mat->getTechnique(0)->getPass(0)->getTextureUnitState(0)->setTextureName(causticCubemapTexture->getName()); 
     88                mat->getTechnique(0)->getPass(0)->getFragmentProgramParameters()->setNamedConstant("face", facenum); 
     89                renderFullscreenQuad("GameTools/BlurCubeFace", rt); 
     90        } 
     91 
    7492        //rt->writeContentsToFile("caucube" + this->name + StringConverter::toString(facenum) + ".dds"); 
    7593} 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderingRuns/OgreDepthShadowMapRenderingRun.cpp

    r1670 r1688  
    105105        //depthMapTexture->(); 
    106106} 
    107 String OgreDepthShadowMapRenderingRun::getDepthMapTextureName() 
     107 
     108const String& OgreDepthShadowMapRenderingRun::getDepthMapTextureName() 
    108109{ 
    109110                if(OgreIlluminationManager::getSingleton().getBlurShadowMap()) 
Note: See TracChangeset for help on using the changeset viewer.