|
OGRE
1.9.0
|
A TerrainMaterialGenerator which can cope with normal mapped, specular mapped terrain. More...
#include <OgreTerrainMaterialGeneratorA.h>

Classes | |
| class | SM2Profile |
| Shader model 2 profile target. More... | |
Public Types | |
| typedef vector< Profile * >::type | ProfileList |
| List of profiles - NB should be ordered in descending complexity. | |
Public Member Functions | |
| TerrainMaterialGeneratorA () | |
| virtual | ~TerrainMaterialGeneratorA () |
| Texture * | _getCompositeMapRTT () |
| void | _markChanged () |
| Internal method - indicates that a change has been made that would require material regeneration. | |
| virtual void | _renderCompositeMap (size_t size, const Rect &rect, const MaterialPtr &mat, const TexturePtr &destCompositeMap) |
| Helper method to render a composite map. | |
| virtual bool | canGenerateUsingDeclaration (const TerrainLayerDeclaration &decl) |
| Whether this generator can generate a material for a given declaration. | |
| virtual MaterialPtr | generate (const Terrain *terrain) |
| Generate a material for the given terrain using the active profile. | |
| virtual MaterialPtr | generateForCompositeMap (const Terrain *terrain) |
| Generate a material for the given composite map of the terrain using the active profile. | |
| Profile * | getActiveProfile () const |
| Get the active profile. | |
| unsigned long long int | getChangeCount () const |
| Returns the number of times the generator has undergone a change which would require materials to be regenerated. | |
| virtual unsigned int | getDebugLevel () const |
| Get the debug level of the material. | |
| virtual const TerrainLayerDeclaration & | getLayerDeclaration () const |
| Get the layer declaration that this material generator operates with. | |
| virtual uint8 | getMaxLayers (const Terrain *terrain) const |
| Get the maximum number of layers supported with the given terrain. | |
| virtual const ProfileList & | getProfiles () const |
| Get the list of profiles that this generator supports. | |
| virtual bool | isVertexCompressionSupported () const |
| Return whether this material generator supports using a compressed vertex format. | |
| void | operator delete (void *ptr) |
| void | operator delete (void *ptr) |
| void | operator delete (void *ptr, const char *, int, const char *) |
| void | operator delete (void *ptr, const char *, int, const char *) |
| void | operator delete (void *ptr, void *) |
| void | operator delete (void *ptr, void *) |
| void | operator delete[] (void *ptr) |
| void | operator delete[] (void *ptr) |
| void | operator delete[] (void *ptr, const char *, int, const char *) |
| void | operator delete[] (void *ptr, const char *, int, const char *) |
| void * | operator new (size_t sz) |
| void * | operator new (size_t sz) |
| 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, const char *file, int line, const char *func) |
| operator new, with debug line info | |
| void * | operator new (size_t sz, void *ptr) |
| placement operator new | |
| void * | operator new (size_t sz, void *ptr) |
| placement operator new | |
| void * | operator new[] (size_t sz) |
| void * | operator new[] (size_t sz) |
| 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, const char *file, int line, const char *func) |
| array operator new, with debug line info | |
| virtual void | requestOptions (Terrain *terrain) |
| Triggers the generator to request the options that it needs. | |
| virtual void | setActiveProfile (const String &name) |
| Set the active profile by name. | |
| virtual void | setActiveProfile (Profile *p) |
| Set the active Profile. | |
| virtual void | setDebugLevel (unsigned int dbg) |
| Set the debug level of the material. | |
| virtual void | setLightmapEnabled (bool enabled) |
| Whether to support a light map over the terrain in the shader, if it's present (default true). | |
| virtual void | updateCompositeMap (const Terrain *terrain, const Rect &rect) |
| Update the composite map for a terrain. | |
| virtual void | updateParams (const MaterialPtr &mat, const Terrain *terrain) |
| Update parameters for the given terrain using the active profile. | |
| virtual void | updateParamsForCompositeMap (const MaterialPtr &mat, const Terrain *terrain) |
| Update parameters for the given terrain composite map using the active profile. | |
Protected Attributes | |
| Profile * | mActiveProfile |
| unsigned long long int | mChangeCounter |
| Camera * | mCompositeMapCam |
| Light * | mCompositeMapLight |
| ManualObject * | mCompositeMapPlane |
| Texture * | mCompositeMapRTT |
| SceneManager * | mCompositeMapSM |
| unsigned int | mDebugLevel |
| TerrainLayerDeclaration | mLayerDecl |
| ProfileList | mProfiles |
A TerrainMaterialGenerator which can cope with normal mapped, specular mapped terrain.
Definition at line 53 of file OgreTerrainMaterialGeneratorA.h.
|
inherited |
List of profiles - NB should be ordered in descending complexity.
Definition at line 212 of file OgreTerrainMaterialGenerator.h.
| Ogre::TerrainMaterialGeneratorA::TerrainMaterialGeneratorA | ( | ) |
|
virtual |
|
inherited |
Definition at line 395 of file OgreTerrainMaterialGenerator.h.
References mCompositeMapRTT.
|
inherited |
Internal method - indicates that a change has been made that would require material regeneration.
Definition at line 255 of file OgreTerrainMaterialGenerator.h.
References mChangeCounter.
Referenced by setActiveProfile(), and setDebugLevel().
|
virtualinherited |
Helper method to render a composite map.
| size | The requested composite map size |
| rect | The region of the composite map to update, in image space |
| mat | The material to use to render the map |
| destCompositeMap | A TexturePtr for the composite map to be written into |
|
virtualinherited |
Whether this generator can generate a material for a given declaration.
By default this only returns true if the declaration is equal to the standard one returned from getLayerDeclaration, but if a subclass wants to be flexible to generate materials for other declarations too, it can specify here.
Definition at line 271 of file OgreTerrainMaterialGenerator.h.
References mLayerDecl.
|
virtualinherited |
Generate a material for the given terrain using the active profile.
Definition at line 295 of file OgreTerrainMaterialGenerator.h.
References Ogre::TerrainMaterialGenerator::Profile::generate(), and getActiveProfile().
|
virtualinherited |
Generate a material for the given composite map of the terrain using the active profile.
Definition at line 305 of file OgreTerrainMaterialGenerator.h.
References Ogre::TerrainMaterialGenerator::Profile::generateForCompositeMap(), and getActiveProfile().
|
inherited |
Get the active profile.
Definition at line 245 of file OgreTerrainMaterialGenerator.h.
References mActiveProfile, and mProfiles.
Referenced by generate(), generateForCompositeMap(), getMaxLayers(), isVertexCompressionSupported(), requestOptions(), setLightmapEnabled(), updateCompositeMap(), updateParams(), and updateParamsForCompositeMap().
|
inherited |
Returns the number of times the generator has undergone a change which would require materials to be regenerated.
Definition at line 260 of file OgreTerrainMaterialGenerator.h.
References mChangeCounter.
|
virtualinherited |
Get the debug level of the material.
Definition at line 384 of file OgreTerrainMaterialGenerator.h.
References mDebugLevel.
|
virtualinherited |
Get the layer declaration that this material generator operates with.
Definition at line 264 of file OgreTerrainMaterialGenerator.h.
References mLayerDecl.
|
virtualinherited |
Get the maximum number of layers supported with the given terrain.
Definition at line 325 of file OgreTerrainMaterialGenerator.h.
References getActiveProfile(), and Ogre::TerrainMaterialGenerator::Profile::getMaxLayers().
|
virtualinherited |
Get the list of profiles that this generator supports.
Definition at line 216 of file OgreTerrainMaterialGenerator.h.
References mProfiles.
|
virtualinherited |
Return whether this material generator supports using a compressed vertex format.
This is only possible when using shaders.
Definition at line 279 of file OgreTerrainMaterialGenerator.h.
References getActiveProfile().
|
inherited |
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
|
inherited |
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
|
inherited |
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
|
virtualinherited |
Triggers the generator to request the options that it needs.
Definition at line 286 of file OgreTerrainMaterialGenerator.h.
References getActiveProfile(), and Ogre::TerrainMaterialGenerator::Profile::requestOptions().
|
virtualinherited |
Set the active profile by name.
Definition at line 219 of file OgreTerrainMaterialGenerator.h.
References mActiveProfile, mProfiles, and setActiveProfile().
Referenced by setActiveProfile().
|
virtualinherited |
Set the active Profile.
Definition at line 236 of file OgreTerrainMaterialGenerator.h.
References _markChanged(), and mActiveProfile.
|
virtualinherited |
Set the debug level of the material.
Definition at line 375 of file OgreTerrainMaterialGenerator.h.
References _markChanged(), and mDebugLevel.
|
virtualinherited |
Whether to support a light map over the terrain in the shader, if it's present (default true).
Definition at line 316 of file OgreTerrainMaterialGenerator.h.
References getActiveProfile(), and Ogre::TerrainMaterialGenerator::Profile::setLightmapEnabled().
|
virtualinherited |
Update the composite map for a terrain.
The composite map for a terrain must match what the terrain should look like at distance. This method will only be called in the render thread so the generator is free to render into a texture to support this, so long as the results are blitted into the Terrain's own composite map afterwards.
Definition at line 340 of file OgreTerrainMaterialGenerator.h.
References getActiveProfile(), and Ogre::TerrainMaterialGenerator::Profile::updateCompositeMap().
|
virtualinherited |
Update parameters for the given terrain using the active profile.
Definition at line 352 of file OgreTerrainMaterialGenerator.h.
References getActiveProfile(), and Ogre::TerrainMaterialGenerator::Profile::updateParams().
|
virtualinherited |
Update parameters for the given terrain composite map using the active profile.
Definition at line 360 of file OgreTerrainMaterialGenerator.h.
References getActiveProfile(), and Ogre::TerrainMaterialGenerator::Profile::updateParamsForCompositeMap().
|
mutableprotectedinherited |
Definition at line 399 of file OgreTerrainMaterialGenerator.h.
Referenced by getActiveProfile(), setActiveProfile(), and setActiveProfile().
|
protectedinherited |
Definition at line 400 of file OgreTerrainMaterialGenerator.h.
Referenced by _markChanged(), and getChangeCount().
|
protectedinherited |
Definition at line 404 of file OgreTerrainMaterialGenerator.h.
|
protectedinherited |
Definition at line 407 of file OgreTerrainMaterialGenerator.h.
|
protectedinherited |
Definition at line 406 of file OgreTerrainMaterialGenerator.h.
|
protectedinherited |
Definition at line 405 of file OgreTerrainMaterialGenerator.h.
Referenced by _getCompositeMapRTT().
|
protectedinherited |
Definition at line 403 of file OgreTerrainMaterialGenerator.h.
|
protectedinherited |
Definition at line 402 of file OgreTerrainMaterialGenerator.h.
Referenced by getDebugLevel(), and setDebugLevel().
|
protectedinherited |
Definition at line 401 of file OgreTerrainMaterialGenerator.h.
Referenced by canGenerateUsingDeclaration(), and getLayerDeclaration().
|
protectedinherited |
Definition at line 398 of file OgreTerrainMaterialGenerator.h.
Referenced by getActiveProfile(), getProfiles(), and setActiveProfile().
1.13.2