Pyrogenesis  trunk
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
TerrainTextureOverlay Class Referenceabstract

Base class for texture-based terrain overlays, with an arbitrary number of texels per terrain tile, intended for debugging purposes. More...

#include <TerrainOverlay.h>

Inheritance diagram for TerrainTextureOverlay:
Inheritance graph
[legend]
Collaboration diagram for TerrainTextureOverlay:
Collaboration graph
[legend]

Public Member Functions

 TerrainTextureOverlay (float texelsPerTile, int priority=100)
 
virtual ~TerrainTextureOverlay ()
 
- Public Member Functions inherited from ITerrainOverlay
virtual ~ITerrainOverlay ()
 
virtual void RenderBeforeWater ()
 

Protected Member Functions

virtual void BuildTextureRGBA (u8 *data, size_t w, size_t h)=0
 Called each frame to generate the texture to render on the terrain. More...
 
SColor4ub GetColor (size_t idx, u8 alpha) const
 Returns an arbitrary color, for subclasses that want to distinguish different integers visually. More...
 
- Protected Member Functions inherited from ITerrainOverlay
 ITerrainOverlay (int priority)
 

Private Member Functions

void RenderAfterWater (int cullGroup)
 

Private Attributes

float m_TexelsPerTile
 
GLuint m_Texture
 
GLsizei m_TextureW
 
GLsizei m_TextureH
 

Additional Inherited Members

- Static Public Member Functions inherited from ITerrainOverlay
static void RenderOverlaysBeforeWater ()
 Draw all ITerrainOverlay objects that exist and that should be drawn before water. More...
 
static void RenderOverlaysAfterWater (int cullGroup)
 Draw all ITerrainOverlay objects that exist and that should be drawn after water. More...
 

Detailed Description

Base class for texture-based terrain overlays, with an arbitrary number of texels per terrain tile, intended for debugging purposes.

Subclasses must implement BuildTextureRGBA which will be called each frame.

Constructor & Destructor Documentation

TerrainTextureOverlay::TerrainTextureOverlay ( float  texelsPerTile,
int  priority = 100 
)
TerrainTextureOverlay::~TerrainTextureOverlay ( )
virtual

Member Function Documentation

virtual void TerrainTextureOverlay::BuildTextureRGBA ( u8 data,
size_t  w,
size_t  h 
)
protectedpure virtual

Called each frame to generate the texture to render on the terrain.

data is w*h*4 bytes, where w and h are the terrain size multiplied by texelsPerTile. data defaults to fully transparent, and should be filled with data in RGBA order.

Implemented in LongOverlay, AtlasOverlay, HierarchicalOverlay, and TerritoryOverlay.

SColor4ub TerrainTextureOverlay::GetColor ( size_t  idx,
u8  alpha 
) const
protected

Returns an arbitrary color, for subclasses that want to distinguish different integers visually.

void TerrainTextureOverlay::RenderAfterWater ( int  cullGroup)
privatevirtual

Reimplemented from ITerrainOverlay.

Member Data Documentation

float TerrainTextureOverlay::m_TexelsPerTile
private
GLuint TerrainTextureOverlay::m_Texture
private
GLsizei TerrainTextureOverlay::m_TextureH
private
GLsizei TerrainTextureOverlay::m_TextureW
private

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