Mercator
|
Shader agregating surface data. More...
#include <TileShader.h>
Public Types | |
typedef std::map< int, Shader * > | Shaderstore |
STL map to store sparse array of Shader pointers. | |
![]() | |
typedef std::map< std::string, float > | Parameters |
STL map of parameter values for a shader constructor. | |
Public Member Functions | |
void | addShader (Shader *t, int id) |
Add a shader to those agregated by the tile shader. | |
virtual bool | checkIntersect (const Segment &) const |
Check whether this Shader has any effect on the given Segment. More... | |
virtual void | shade (Surface &) const |
Populate a Surface with data. | |
![]() | |
virtual | ~Shader () |
Destructor does nothing interesting. | |
bool | getColor () const |
Accessor for color flag. | |
bool | getAlpha () const |
Accessor for alpha flag. | |
Surface * | newSurface (const Segment &) const |
Create a new Surface which matches the requirements of this shader. More... | |
Private Attributes | |
Shaderstore | m_subShaders |
Store of shaders which are agregated by this shader. | |
Additional Inherited Members | |
![]() | |
Shader (bool color=false, bool alpha=true) | |
Protected constructor for classes which inherit from this one. More... | |
Shader agregating surface data.
Some applications require the terrain surface data be stored in a single buffer so specific locations can be queried to determine the type. Typically this is used on a server, where lots of surface data optimised for rendering is not required, but fast cheap queries about the surface at a specific point are required.
|
virtual |
Check whether this Shader has any effect on the given Segment.
Implements Mercator::Shader.
Referenced by addShader().