Pyrogenesis  trunk
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
OverlayRendererInternals Struct Reference
Collaboration diagram for OverlayRendererInternals:
Collaboration graph
[legend]

Public Types

typedef boost::unordered_map< QuadBatchKey, QuadBatchDataQuadBatchMap
 

Public Member Functions

 OverlayRendererInternals ()
 
 ~OverlayRendererInternals ()
 
void GenerateSphere ()
 
void Initialize ()
 Performs one-time setup. More...
 

Public Attributes

std::vector< SOverlayLine * > lines
 
std::vector< SOverlayTexturedLine * > texlines
 
std::vector< SOverlaySprite * > sprites
 
std::vector< SOverlayQuad * > quads
 
std::vector< SOverlaySphere * > spheres
 
QuadBatchMap quadBatchMap
 
VertexArray quadVertices
 
VertexArray::Attribute quadAttributePos
 
VertexArray::Attribute quadAttributeColor
 
VertexArray::Attribute quadAttributeUV
 
VertexIndexArray quadIndices
 
CShaderDefines defsOverlayLineNormal
 
CShaderDefines defsOverlayLineAlwaysVisible
 
CShaderDefines defsQuadOverlay
 
std::vector< float > sphereVertexes
 
std::vector< u16sphereIndexes
 

Static Public Attributes

static const size_t MAX_QUAD_OVERLAYS = 1024
 Maximum amount of quad overlays we support for rendering. More...
 

Member Typedef Documentation

Constructor & Destructor Documentation

OverlayRendererInternals::OverlayRendererInternals ( )
OverlayRendererInternals::~OverlayRendererInternals ( )
inline

Member Function Documentation

void OverlayRendererInternals::GenerateSphere ( )
void OverlayRendererInternals::Initialize ( )

Performs one-time setup.

Called from CRenderer::Open, after graphics capabilities have been detected. Note that no VBOs must be created before this is called, since the shader path and graphics capabilities are not guaranteed to be stable before this point.

Member Data Documentation

CShaderDefines OverlayRendererInternals::defsOverlayLineAlwaysVisible
CShaderDefines OverlayRendererInternals::defsOverlayLineNormal
CShaderDefines OverlayRendererInternals::defsQuadOverlay
std::vector<SOverlayLine*> OverlayRendererInternals::lines
const size_t OverlayRendererInternals::MAX_QUAD_OVERLAYS = 1024
static

Maximum amount of quad overlays we support for rendering.

This limit is set to be able to render all quads from a single dedicated VB without having to reallocate it, which is much faster in the typical case of rendering only a handful of quads. When modifying this value, you must take care for the new amount of quads to fit in a single VBO (which is not likely to be a problem).

VertexArray::Attribute OverlayRendererInternals::quadAttributeColor
VertexArray::Attribute OverlayRendererInternals::quadAttributePos
VertexArray::Attribute OverlayRendererInternals::quadAttributeUV
QuadBatchMap OverlayRendererInternals::quadBatchMap
VertexIndexArray OverlayRendererInternals::quadIndices
std::vector<SOverlayQuad*> OverlayRendererInternals::quads
VertexArray OverlayRendererInternals::quadVertices
std::vector<u16> OverlayRendererInternals::sphereIndexes
std::vector<SOverlaySphere*> OverlayRendererInternals::spheres
std::vector<float> OverlayRendererInternals::sphereVertexes
std::vector<SOverlaySprite*> OverlayRendererInternals::sprites
std::vector<SOverlayTexturedLine*> OverlayRendererInternals::texlines

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