Ignore:
Timestamp:
12/13/06 16:36:34 (18 years ago)
Author:
szirmay
Message:
 
Location:
GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques/OgreCausticCasterRenderTechnique.cpp

    r1725 r1886  
    132132                                                                                true, 
    133133                                                                                "", 
     134                                                                                false, 
    134135                                                                                "GameTools/DistanceShader", 
    135136                                                                                ILLUMRUN_DISTANCE_CUBEMAP); 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques/OgreColorCubeMapRenderTechnique.cpp

    r1725 r1886  
    1717                                                                                                                String environmentMaterial, 
    1818                                                                                                                int layer, 
     19                                                                                                                bool getMinMax, 
     20                                                                                                                bool attachToTexUnit, 
     21                                                                                                                String minVariableName, 
     22                                                                                                                String maxVariableName, 
    1923                                                                                                                Pass* pass, 
    2024                                                                                                                OgreRenderable* parentRenderable, 
    2125                                                                                                                OgreTechniqueGroup* parentTechniqueGroup) 
    22                                                                                                                         :OgreCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, texID, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, selfMaterial, environmentMaterial, layer, pass, parentRenderable, parentTechniqueGroup), 
     26                                                                                                                :OgreCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, texID, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, selfMaterial, environmentMaterial, layer, getMinMax, attachToTexUnit, minVariableName, maxVariableName, pass, parentRenderable, parentTechniqueGroup), 
    2327                                                                                                                        ColorCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, layer, parentRenderable, parentTechniqueGroup), 
    2428                                                                                                                        CubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, layer, parentRenderable, parentTechniqueGroup), 
     
    7579void OgreColorCubeMapRenderTechnique::colorCubeMapRunChanged(RenderingRun* run) 
    7680{ 
    77         OgreCubeMapRenderingRun* cuberun =(OgreCubeMapRenderingRun*) (run->asOgreRenderingRun()); 
     81        OgreCubeMapRenderTechnique::cubeMapRunChanged(run); 
     82        /*OgreCubeMapRenderingRun* cuberun =(OgreCubeMapRenderingRun*) (run->asOgreRenderingRun()); 
    7883        String cubemapname = cuberun->getCubeMapTextureName(); 
     84                 
     85        pass->getTextureUnitState(texID)->setTextureName(cubemapname);*/ 
    7986         
    80         pass->getTextureUnitState(texID)->setTextureName(cubemapname); 
    8187} 
    8288 
     
    113119                                                                                                        environmentMaterial, 
    114120                                                                                                        layer, 
     121                                                                                                        getMinMax, 
     122                                                                                                    attachToTexUnit, 
     123                                                                                                    minVariableName, 
     124                                                                                                    maxVariableName, 
    115125                                                                                                        pass, 
    116126                                                                                                        parentRenderable, 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques/OgreConvolvedCubeMapRenderTechnique.cpp

    r1725 r1886  
    1818                                                                                                                String selfMaterial, 
    1919                                                                                                                String environmentMaterial, 
     20                                                                                                                bool getMinMax, 
     21                                                                                                                bool attachToTexUnit, 
     22                                                                                                                String minVariableName, 
     23                                                                                                                String maxVariableName, 
    2024                                                                                                                Pass* pass, 
    2125                                                                                                                OgreRenderable* parentRenderable, 
    2226                                                                                                                OgreTechniqueGroup* parentTechniqueGroup) 
    2327                                                        : 
    24                                                         OgreCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, texID, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, selfMaterial, environmentMaterial, layer, pass, parentRenderable, parentTechniqueGroup), 
     28                                                        OgreCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, texID, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, selfMaterial, environmentMaterial, layer, getMinMax, attachToTexUnit, minVariableName, maxVariableName, pass, parentRenderable, parentTechniqueGroup), 
    2529                                                        CubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, layer, parentRenderable, parentTechniqueGroup), 
    2630                                                        ConvolvedCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, reducedCubeMapResolution, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, parentRenderable, parentTechniqueGroup), 
     
    127131                                                                                                selfMaterial, 
    128132                                                                                                environmentMaterial, 
     133                                                                                                getMinMax, 
     134                                                                                                attachToTexUnit, 
     135                                                                                                minVariableName, 
     136                                                                                                maxVariableName, 
    129137                                                                                                pass, 
    130138                                                                                                parentRenderable, 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques/OgreCubeMapRenderTechnique.cpp

    r1725 r1886  
    1717                                                                                                                String environmentMaterial, 
    1818                                                                                                                int layer, 
     19                                                                                                                bool getMinMax, 
     20                                                                                                                bool attachToTexUnit, 
     21                                                                                                                String minVariableName, 
     22                                                                                                                String maxVariableName, 
    1923                                                                                                                Pass* pass, 
    2024                                                                                                                OgreRenderable* parentRenderable, 
     
    2529                                                        RenderTechnique(parentRenderable, parentTechniqueGroup)  
    2630{        
     31        this->minVariableName = minVariableName; 
     32        this->maxVariableName = maxVariableName; 
     33        this->attachToTexUnit = attachToTexUnit; 
     34        this->getMinMax = getMinMax; 
     35 
    2736        this->texID = texID; 
    2837        this->selfMaterial = selfMaterial; 
     
    5059        String cubemapname = cuberun->getCubeMapTextureName(); 
    5160         
    52         pass->getTextureUnitState(texID)->setTextureName(cubemapname); 
     61        if(attachToTexUnit) 
     62                pass->getTextureUnitState(texID)->setTextureName(cubemapname); 
     63        if(getMinMax) 
     64        { 
     65                if(minVariableName != "") 
     66                        pass->getFragmentProgramParameters()->setNamedConstant(minVariableName, cuberun->getMin()); 
     67                if(maxVariableName != "") 
     68                        pass->getFragmentProgramParameters()->setNamedConstant(maxVariableName, cuberun->getMax()); 
     69        } 
    5370} 
    5471 
     
    6986                                                                                                selfMaterial, 
    7087                                                                                                environmentMaterial, 
     88                                                                                                getMinMax, 
    7189                                                                                                cubemapLayer); 
    7290} 
     
    169187                f->environmentMaterial =  params; 
    170188        } 
     189 
     190        void parseMinVarName(String& params, RenderTechniqueFactory* factory) 
     191        { 
     192                OgreCubeMapRenderTechniqueFactory* f = (OgreCubeMapRenderTechniqueFactory*) factory; 
     193                f->minVariableName =  params; 
     194        } 
     195        void parseMaxVarName(String& params, RenderTechniqueFactory* factory) 
     196        { 
     197                OgreCubeMapRenderTechniqueFactory* f = (OgreCubeMapRenderTechniqueFactory*) factory; 
     198                f->maxVariableName =  params; 
     199        } 
     200 
    171201        void parseLayer(String& params, RenderTechniqueFactory* factory) 
    172202        { 
    173203                OgreCubeMapRenderTechniqueFactory* f = (OgreCubeMapRenderTechniqueFactory*) factory; 
    174204                f->layer =  StringConverter::parseInt(params); 
     205        } 
     206 
     207        void parseGetMinMax(String& params, RenderTechniqueFactory* factory) 
     208        { 
     209                OgreCubeMapRenderTechniqueFactory* f = (OgreCubeMapRenderTechniqueFactory*) factory; 
     210                f->getMinMax =  StringConverter::parseBool(params); 
     211        } 
     212 
     213        void parseAttachTexUnit(String& params, RenderTechniqueFactory* factory) 
     214        { 
     215                OgreCubeMapRenderTechniqueFactory* f = (OgreCubeMapRenderTechniqueFactory*) factory; 
     216                f->attachToTexUnit =  StringConverter::parseBool(params); 
    175217        } 
    176218 
     
    196238        this->attributeParsers.insert(AttribParserList::value_type("env_material", (ILLUM_ATTRIBUTE_PARSER) parseEnvMaterial)); 
    197239        this->attributeParsers.insert(AttribParserList::value_type("layer", (ILLUM_ATTRIBUTE_PARSER) parseLayer)); 
     240        this->attributeParsers.insert(AttribParserList::value_type("get_minmax", (ILLUM_ATTRIBUTE_PARSER) parseGetMinMax)); 
     241        this->attributeParsers.insert(AttribParserList::value_type("attach_to_texture_unit", (ILLUM_ATTRIBUTE_PARSER) parseAttachTexUnit)); 
     242        this->attributeParsers.insert(AttribParserList::value_type("min_var_name", (ILLUM_ATTRIBUTE_PARSER) parseMinVarName)); 
     243        this->attributeParsers.insert(AttribParserList::value_type("max_var_name", (ILLUM_ATTRIBUTE_PARSER) parseMaxVarName)); 
    198244 
    199245} 
     
    215261        environmentMaterial = ""; 
    216262        layer = 0; 
     263        getMinMax = false; 
     264        attachToTexUnit = true; 
     265        minVariableName = ""; 
     266        maxVariableName = ""; 
     267 
    217268} 
    218269 
     
    241292                                                                                                environmentMaterial, 
    242293                                                                                                layer, 
     294                                                                                                getMinMax, 
     295                                                                                                attachToTexUnit, 
     296                                                                                                minVariableName, 
     297                                                                                                maxVariableName, 
    243298                                                                                                pass, 
    244299                                                                                                parentRenderable, 
  • GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques/OgreDistanceCubeMapRenderTechnique.cpp

    r1725 r1886  
    1717                                                                                                                String environmentMaterial, 
    1818                                                                                                                int layer, 
     19                                                                                                                bool getMinMax, 
     20                                                                                                                bool attachToTexUnit, 
     21                                                                                                                String minVariableName, 
     22                                                                                                                String maxVariableName, 
    1923                                                                                                                Pass* pass, 
    2024                                                                                                                OgreRenderable* parentRenderable, 
    2125                                                                                                                OgreTechniqueGroup* parentTechniqueGroup) 
    2226                                                        : 
    23                                                         OgreCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, texID, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, selfMaterial, environmentMaterial, layer, pass, parentRenderable, parentTechniqueGroup), 
     27                                                        OgreCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, texID, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, selfMaterial, environmentMaterial, layer, getMinMax, attachToTexUnit, minVariableName, maxVariableName, pass, parentRenderable, parentTechniqueGroup), 
    2428                                                        CubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, layer, parentRenderable, parentTechniqueGroup), 
    2529                                                        DistanceCubeMapRenderTechnique(startFrame, cubeMapUpdateInterval, cubeMapResolution, useDistCalc, useFaceAngleCalc, distTolerance, angleTolerance, updateAllFace, renderSelf, renderEnvironment, layer, parentRenderable, parentTechniqueGroup), 
     
    6973void OgreDistanceCubeMapRenderTechnique::distanceCubeMapRunChanged(RenderingRun* run) 
    7074{ 
    71         OgreCubeMapRenderingRun* cuberun =(OgreCubeMapRenderingRun*) (run->asOgreRenderingRun()); 
     75        OgreCubeMapRenderTechnique::cubeMapRunChanged(run); 
     76/*      OgreCubeMapRenderingRun* cuberun =(OgreCubeMapRenderingRun*) (run->asOgreRenderingRun()); 
    7277        String cubemapname = cuberun->getCubeMapTextureName(); 
    7378         
    74         pass->getTextureUnitState(texID)->setTextureName(cubemapname); 
     79        pass->getTextureUnitState(texID)->setTextureName(cubemapname);*/ 
    7580} 
    7681 
     
    118123                                                                                                environmentMaterial, 
    119124                                                                                                layer, 
     125                                                                                                getMinMax, 
     126                                                                                                attachToTexUnit, 
     127                                                                                                minVariableName, 
     128                                                                                                maxVariableName, 
    120129                                                                                                pass, 
    121130                                                                                                parentRenderable, 
Note: See TracChangeset for help on using the changeset viewer.