Ogre::TerrainMaterialGeneratorA::SM2Profile Class Reference

Shader model 2 profile target. More...

#include <OgreTerrainMaterialGeneratorA.h>

Inheritance diagram for Ogre::TerrainMaterialGeneratorA::SM2Profile:
Inheritance graph
[legend]

List of all members.

Classes

class  ShaderHelper
 Interface definition for helper class to generate shaders. More...
class  ShaderHelperCg
 Utility class to help with generating shaders for Cg / HLSL. More...
class  ShaderHelperGLSL
 Utility class to help with generating shaders for GLSL. More...
class  ShaderHelperGLSLES
 Utility class to help with generating shaders for GLSL ES. More...
class  ShaderHelperHLSL

Public Member Functions

 SM2Profile (TerrainMaterialGenerator *parent, const String &name, const String &desc)
 ~SM2Profile ()
MaterialPtr generate (const Terrain *terrain)
 Generate / resuse a material for the terrain.
MaterialPtr generateForCompositeMap (const Terrain *terrain)
 Generate / resuse a material for the terrain.
uint8 getMaxLayers (const Terrain *terrain) const
 Get the number of layers supported.
void updateParams (const MaterialPtr &mat, const Terrain *terrain)
 Update params for a terrain.
void updateParamsForCompositeMap (const MaterialPtr &mat, const Terrain *terrain)
 Update params for a terrain.
void requestOptions (Terrain *terrain)
 Request the options needed from the terrain.
bool isVertexCompressionSupported () const
 Compressed vertex format supported?
bool isLayerNormalMappingEnabled () const
 Whether to support normal mapping per layer in the shader (default true).
void setLayerNormalMappingEnabled (bool enabled)
 Whether to support normal mapping per layer in the shader (default true).
bool isLayerParallaxMappingEnabled () const
 Whether to support parallax mapping per layer in the shader (default true).
void setLayerParallaxMappingEnabled (bool enabled)
 Whether to support parallax mapping per layer in the shader (default true).
bool isLayerSpecularMappingEnabled () const
 Whether to support specular mapping per layer in the shader (default true).
void setLayerSpecularMappingEnabled (bool enabled)
 Whether to support specular mapping per layer in the shader (default true).
bool isGlobalColourMapEnabled () const
 Whether to support a global colour map over the terrain in the shader, if it's present (default true).
void setGlobalColourMapEnabled (bool enabled)
 Whether to support a global colour map over the terrain in the shader, if it's present (default true).
bool isLightmapEnabled () const
 Whether to support a light map over the terrain in the shader, if it's present (default true).
void setLightmapEnabled (bool enabled)
 Whether to support a light map over the terrain in the shader, if it's present (default true).
bool isCompositeMapEnabled () const
 Whether to use the composite map to provide a lower LOD technique in the distance (default true).
void setCompositeMapEnabled (bool enabled)
 Whether to use the composite map to provide a lower LOD technique in the distance (default true).
bool getReceiveDynamicShadowsEnabled () const
 Whether to support dynamic texture shadows received from other objects, on the terrain (default true).
void setReceiveDynamicShadowsEnabled (bool enabled)
 Whether to support dynamic texture shadows received from other objects, on the terrain (default true).
void setReceiveDynamicShadowsPSSM (PSSMShadowCameraSetup *pssmSettings)
 Whether to use PSSM support dynamic texture shadows, and if so the settings to use (default 0).
PSSMShadowCameraSetupgetReceiveDynamicShadowsPSSM () const
 Whether to use PSSM support dynamic texture shadows, and if so the settings to use (default 0).
void setReceiveDynamicShadowsDepth (bool enabled)
 Whether to use depth shadows (default false).
bool getReceiveDynamicShadowsDepth () const
 Whether to use depth shadows (default false).
void setReceiveDynamicShadowsLowLod (bool enabled)
 Whether to use shadows on low LOD material rendering (when using composite map) (default false).
bool getReceiveDynamicShadowsLowLod () const
 Whether to use shadows on low LOD material rendering (when using composite map) (default false).
bool _isSM3Available () const
 Internal.
bool _isSM4Available () const
TerrainMaterialGeneratorgetParent () const
 Get the generator which owns this profile.
const StringgetName () const
 Get the name of this profile.
const StringgetDescription () const
 Get the description of this profile.
virtual void updateCompositeMap (const Terrain *terrain, const Rect &rect)
 Update the composite map for a terrain.
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
void * operator new (size_t sz)
void * operator new (size_t sz, void *ptr)
 placement operator new
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
void * operator new[] (size_t sz)
void operator delete (void *ptr)
void operator delete (void *ptr, void *)
void operator delete (void *ptr, const char *, int, const char *)
void operator delete[] (void *ptr)
void operator delete[] (void *ptr, const char *, int, const char *)

Protected Types

enum  TechniqueType { HIGH_LOD, LOW_LOD, RENDER_COMPOSITE_MAP }

Protected Member Functions

void addTechnique (const MaterialPtr &mat, const Terrain *terrain, TechniqueType tt)
bool isShadowingEnabled (TechniqueType tt, const Terrain *terrain) const

Protected Attributes

ShaderHelpermShaderGen
bool mLayerNormalMappingEnabled
bool mLayerParallaxMappingEnabled
bool mLayerSpecularMappingEnabled
bool mGlobalColourMapEnabled
bool mLightmapEnabled
bool mCompositeMapEnabled
bool mReceiveDynamicShadows
PSSMShadowCameraSetupmPSSM
bool mDepthShadows
bool mLowLodShadows
bool mSM3Available
bool mSM4Available
TerrainMaterialGeneratormParent
String mName
String mDesc

Detailed Description

Shader model 2 profile target.

Definition at line 61 of file OgreTerrainMaterialGeneratorA.h.


Member Enumeration Documentation

Enumerator:
HIGH_LOD 
LOW_LOD 
RENDER_COMPOSITE_MAP 

Definition at line 152 of file OgreTerrainMaterialGeneratorA.h.


Constructor & Destructor Documentation

Ogre::TerrainMaterialGeneratorA::SM2Profile::SM2Profile ( TerrainMaterialGenerator parent,
const String name,
const String desc 
)
Ogre::TerrainMaterialGeneratorA::SM2Profile::~SM2Profile (  ) 

Member Function Documentation

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::_isSM3Available (  )  const

Internal.

Definition at line 147 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::_isSM4Available (  )  const

Definition at line 148 of file OgreTerrainMaterialGeneratorA.h.

void Ogre::TerrainMaterialGeneratorA::SM2Profile::addTechnique ( const MaterialPtr mat,
const Terrain terrain,
TechniqueType  tt 
) [protected]
MaterialPtr Ogre::TerrainMaterialGeneratorA::SM2Profile::generate ( const Terrain terrain  )  [virtual]

Generate / resuse a material for the terrain.

Implements Ogre::TerrainMaterialGenerator::Profile.

MaterialPtr Ogre::TerrainMaterialGeneratorA::SM2Profile::generateForCompositeMap ( const Terrain terrain  )  [virtual]

Generate / resuse a material for the terrain.

Implements Ogre::TerrainMaterialGenerator::Profile.

const String& Ogre::TerrainMaterialGenerator::Profile::getDescription (  )  const [inherited]

Get the description of this profile.

Definition at line 178 of file OgreTerrainMaterialGenerator.h.

uint8 Ogre::TerrainMaterialGeneratorA::SM2Profile::getMaxLayers ( const Terrain terrain  )  const [virtual]

Get the number of layers supported.

Implements Ogre::TerrainMaterialGenerator::Profile.

const String& Ogre::TerrainMaterialGenerator::Profile::getName ( void   )  const [inherited]

Get the name of this profile.

Definition at line 176 of file OgreTerrainMaterialGenerator.h.

TerrainMaterialGenerator* Ogre::TerrainMaterialGenerator::Profile::getParent (  )  const [inherited]

Get the generator which owns this profile.

Definition at line 174 of file OgreTerrainMaterialGenerator.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::getReceiveDynamicShadowsDepth (  )  const

Whether to use depth shadows (default false).

Definition at line 138 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::getReceiveDynamicShadowsEnabled (  )  const

Whether to support dynamic texture shadows received from other objects, on the terrain (default true).

Definition at line 119 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::getReceiveDynamicShadowsLowLod (  )  const

Whether to use shadows on low LOD material rendering (when using composite map) (default false).

Definition at line 144 of file OgreTerrainMaterialGeneratorA.h.

PSSMShadowCameraSetup* Ogre::TerrainMaterialGeneratorA::SM2Profile::getReceiveDynamicShadowsPSSM (  )  const

Whether to use PSSM support dynamic texture shadows, and if so the settings to use (default 0).

Definition at line 132 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isCompositeMapEnabled (  )  const

Whether to use the composite map to provide a lower LOD technique in the distance (default true).

Definition at line 111 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isGlobalColourMapEnabled (  )  const

Whether to support a global colour map over the terrain in the shader, if it's present (default true).

Definition at line 95 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isLayerNormalMappingEnabled (  )  const

Whether to support normal mapping per layer in the shader (default true).

Definition at line 76 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isLayerParallaxMappingEnabled (  )  const

Whether to support parallax mapping per layer in the shader (default true).

Definition at line 82 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isLayerSpecularMappingEnabled (  )  const

Whether to support specular mapping per layer in the shader (default true).

Definition at line 88 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isLightmapEnabled (  )  const

Whether to support a light map over the terrain in the shader, if it's present (default true).

Definition at line 103 of file OgreTerrainMaterialGeneratorA.h.

bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isShadowingEnabled ( TechniqueType  tt,
const Terrain terrain 
) const [protected]
bool Ogre::TerrainMaterialGeneratorA::SM2Profile::isVertexCompressionSupported (  )  const [virtual]

Compressed vertex format supported?

Implements Ogre::TerrainMaterialGenerator::Profile.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 107 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
void *   
) [inherited]

Definition at line 101 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr  )  [inherited]

Definition at line 95 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 118 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr  )  [inherited]

Definition at line 112 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
void *  ptr 
) [inherited]

placement operator new

Definition at line 78 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz  )  [inherited]

Definition at line 72 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

operator new, with debug line info

Definition at line 67 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz  )  [inherited]

Definition at line 90 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

array operator new, with debug line info

Definition at line 85 of file OgreMemoryAllocatedObject.h.

void Ogre::TerrainMaterialGeneratorA::SM2Profile::requestOptions ( Terrain terrain  )  [virtual]

Request the options needed from the terrain.

Implements Ogre::TerrainMaterialGenerator::Profile.

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setCompositeMapEnabled ( bool  enabled  ) 

Whether to use the composite map to provide a lower LOD technique in the distance (default true).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setGlobalColourMapEnabled ( bool  enabled  ) 

Whether to support a global colour map over the terrain in the shader, if it's present (default true).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setLayerNormalMappingEnabled ( bool  enabled  ) 

Whether to support normal mapping per layer in the shader (default true).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setLayerParallaxMappingEnabled ( bool  enabled  ) 

Whether to support parallax mapping per layer in the shader (default true).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setLayerSpecularMappingEnabled ( bool  enabled  ) 

Whether to support specular mapping per layer in the shader (default true).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setLightmapEnabled ( bool  enabled  ) 

Whether to support a light map over the terrain in the shader, if it's present (default true).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setReceiveDynamicShadowsDepth ( bool  enabled  ) 

Whether to use depth shadows (default false).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setReceiveDynamicShadowsEnabled ( bool  enabled  ) 

Whether to support dynamic texture shadows received from other objects, on the terrain (default true).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setReceiveDynamicShadowsLowLod ( bool  enabled  ) 

Whether to use shadows on low LOD material rendering (when using composite map) (default false).

void Ogre::TerrainMaterialGeneratorA::SM2Profile::setReceiveDynamicShadowsPSSM ( PSSMShadowCameraSetup pssmSettings  ) 

Whether to use PSSM support dynamic texture shadows, and if so the settings to use (default 0).

virtual void Ogre::TerrainMaterialGenerator::Profile::updateCompositeMap ( const Terrain terrain,
const Rect rect 
) [virtual, inherited]

Update the composite map for a terrain.

Referenced by Ogre::TerrainMaterialGenerator::updateCompositeMap().

void Ogre::TerrainMaterialGeneratorA::SM2Profile::updateParams ( const MaterialPtr mat,
const Terrain terrain 
) [virtual]

Update params for a terrain.

Implements Ogre::TerrainMaterialGenerator::Profile.

void Ogre::TerrainMaterialGeneratorA::SM2Profile::updateParamsForCompositeMap ( const MaterialPtr mat,
const Terrain terrain 
) [virtual]

Update params for a terrain.

Implements Ogre::TerrainMaterialGenerator::Profile.


Member Data Documentation

Definition at line 253 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 256 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 166 of file OgreTerrainMaterialGenerator.h.

Definition at line 251 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 248 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 249 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 250 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 252 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 257 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 165 of file OgreTerrainMaterialGenerator.h.

Definition at line 164 of file OgreTerrainMaterialGenerator.h.

Definition at line 255 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 254 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 247 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 258 of file OgreTerrainMaterialGeneratorA.h.

Definition at line 259 of file OgreTerrainMaterialGeneratorA.h.


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

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 23:42:11 2012