RigsofRods
Soft-body Physics Simulation
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper Class Referenceabstract

Interface definition for helper class to generate shaders. More...

#include <OgreTerrainPSSMMaterialGenerator.h>

+ Inheritance diagram for Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper:
+ Collaboration diagram for Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper:

Public Member Functions

 ShaderHelper ()
 
virtual ~ShaderHelper ()
 
virtual HighLevelGpuProgramPtr generateVertexProgram (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt)
 
virtual HighLevelGpuProgramPtr generateFragmentProgram (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt)
 
virtual void updateParams (const SM2Profile *prof, const MaterialPtr &mat, const Terrain *terrain, bool compositeMap)
 

Protected Member Functions

virtual String getVertexProgramName (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt)
 
virtual String getFragmentProgramName (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt)
 
virtual HighLevelGpuProgramPtr createVertexProgram (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt)=0
 
virtual HighLevelGpuProgramPtr createFragmentProgram (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt)=0
 
virtual void generateVertexProgramSource (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, StringUtil::StrStreamType &outStream)
 
virtual void generateFragmentProgramSource (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, StringUtil::StrStreamType &outStream)
 
virtual void generateVpHeader (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, StringUtil::StrStreamType &outStream)=0
 
virtual void generateFpHeader (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, StringUtil::StrStreamType &outStream)=0
 
virtual void generateVpLayer (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, uint layer, StringUtil::StrStreamType &outStream)=0
 
virtual void generateFpLayer (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, uint layer, StringUtil::StrStreamType &outStream)=0
 
virtual void generateVpFooter (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, StringUtil::StrStreamType &outStream)=0
 
virtual void generateFpFooter (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, StringUtil::StrStreamType &outStream)=0
 
virtual void defaultVpParams (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, const HighLevelGpuProgramPtr &prog)
 
virtual void defaultFpParams (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, const HighLevelGpuProgramPtr &prog)
 
virtual void updateVpParams (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, const GpuProgramParametersSharedPtr &params)
 
virtual void updateFpParams (const SM2Profile *prof, const Terrain *terrain, TechniqueType tt, const GpuProgramParametersSharedPtr &params)
 

Static Protected Member Functions

static String getChannel (uint idx)
 

Protected Attributes

size_t mShadowSamplerStartHi
 
size_t mShadowSamplerStartLo
 

Detailed Description

Interface definition for helper class to generate shaders.

Definition at line 162 of file OgreTerrainPSSMMaterialGenerator.h.

Constructor & Destructor Documentation

◆ ShaderHelper()

Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::ShaderHelper ( )
inline

Definition at line 165 of file OgreTerrainPSSMMaterialGenerator.h.

◆ ~ShaderHelper()

virtual Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::~ShaderHelper ( )
inlinevirtual

Definition at line 169 of file OgreTerrainPSSMMaterialGenerator.h.

Member Function Documentation

◆ createFragmentProgram()

virtual HighLevelGpuProgramPtr Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::createFragmentProgram ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt 
)
protectedpure virtual

◆ createVertexProgram()

virtual HighLevelGpuProgramPtr Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::createVertexProgram ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt 
)
protectedpure virtual

◆ defaultFpParams()

void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::defaultFpParams ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
const HighLevelGpuProgramPtr &  prog 
)
protectedvirtual

Definition at line 560 of file OgreTerrainPSSMMaterialGenerator.cpp.

+ Here is the call graph for this function:

◆ defaultVpParams()

void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::defaultVpParams ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
const HighLevelGpuProgramPtr &  prog 
)
protectedvirtual

Definition at line 521 of file OgreTerrainPSSMMaterialGenerator.cpp.

+ Here is the call graph for this function:

◆ generateFpFooter()

virtual void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateFpFooter ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
StringUtil::StrStreamType &  outStream 
)
protectedpure virtual

◆ generateFpHeader()

virtual void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateFpHeader ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
StringUtil::StrStreamType &  outStream 
)
protectedpure virtual

◆ generateFpLayer()

virtual void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateFpLayer ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
uint  layer,
StringUtil::StrStreamType &  outStream 
)
protectedpure virtual

◆ generateFragmentProgram()

HighLevelGpuProgramPtr Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateFragmentProgram ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt 
)
virtual

Definition at line 465 of file OgreTerrainPSSMMaterialGenerator.cpp.

◆ generateFragmentProgramSource()

void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateFragmentProgramSource ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
StringUtil::StrStreamType &  outStream 
)
protectedvirtual

Definition at line 503 of file OgreTerrainPSSMMaterialGenerator.cpp.

+ Here is the call graph for this function:

◆ generateVertexProgram()

HighLevelGpuProgramPtr Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateVertexProgram ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt 
)
virtual

Definition at line 445 of file OgreTerrainPSSMMaterialGenerator.cpp.

◆ generateVertexProgramSource()

void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateVertexProgramSource ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
StringUtil::StrStreamType &  outStream 
)
protectedvirtual

Definition at line 485 of file OgreTerrainPSSMMaterialGenerator.cpp.

+ Here is the call graph for this function:

◆ generateVpFooter()

virtual void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateVpFooter ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
StringUtil::StrStreamType &  outStream 
)
protectedpure virtual

◆ generateVpHeader()

virtual void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateVpHeader ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
StringUtil::StrStreamType &  outStream 
)
protectedpure virtual

◆ generateVpLayer()

virtual void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::generateVpLayer ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
uint  layer,
StringUtil::StrStreamType &  outStream 
)
protectedpure virtual

◆ getChannel()

String Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::getChannel ( uint  idx)
staticprotected

Definition at line 667 of file OgreTerrainPSSMMaterialGenerator.cpp.

◆ getFragmentProgramName()

String Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::getFragmentProgramName ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt 
)
protectedvirtual

Definition at line 707 of file OgreTerrainPSSMMaterialGenerator.cpp.

◆ getVertexProgramName()

String Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::getVertexProgramName ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt 
)
protectedvirtual

Definition at line 685 of file OgreTerrainPSSMMaterialGenerator.cpp.

◆ updateFpParams()

void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::updateFpParams ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
const GpuProgramParametersSharedPtr &  params 
)
protectedvirtual

Definition at line 657 of file OgreTerrainPSSMMaterialGenerator.cpp.

◆ updateParams()

void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::updateParams ( const SM2Profile prof,
const MaterialPtr &  mat,
const Terrain *  terrain,
bool  compositeMap 
)
virtual

Definition at line 603 of file OgreTerrainPSSMMaterialGenerator.cpp.

+ Here is the call graph for this function:

◆ updateVpParams()

void Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::updateVpParams ( const SM2Profile prof,
const Terrain *  terrain,
TechniqueType  tt,
const GpuProgramParametersSharedPtr &  params 
)
protectedvirtual

Definition at line 629 of file OgreTerrainPSSMMaterialGenerator.cpp.

+ Here is the call graph for this function:

Field Documentation

◆ mShadowSamplerStartHi

size_t Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::mShadowSamplerStartHi
protected

Definition at line 195 of file OgreTerrainPSSMMaterialGenerator.h.

◆ mShadowSamplerStartLo

size_t Ogre::TerrainPSSMMaterialGenerator::SM2Profile::ShaderHelper::mShadowSamplerStartLo
protected

Definition at line 196 of file OgreTerrainPSSMMaterialGenerator.h.


The documentation for this class was generated from the following files: