Pyrogenesis  trunk
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
CDebugRenderer Class Reference

#include <DebugRenderer.h>

Collaboration diagram for CDebugRenderer:
Collaboration graph
[legend]

Classes

struct  ShaderTechniqueKey
 
struct  ShaderTechniqueKeyEqual
 
struct  ShaderTechniqueKeyHash
 

Public Member Functions

void Initialize ()
 
void DrawLine (const CVector3D &from, const CVector3D &to, const CColor &color, const float width, const bool depthTestEnabled=true)
 Render the line in world space. More...
 
void DrawLine (const std::vector< CVector3D > &line, const CColor &color, const float width, const bool depthTestEnabled=true)
 
void DrawCircle (const CVector3D &origin, const float radius, const CColor &color)
 Render the circle in world space oriented to the view camera. More...
 
void DrawCameraFrustum (const CCamera &camera, const CColor &color, int intermediates=0, bool wireframe=false)
 Render: Renders the camera's frustum in world space. More...
 
void DrawBoundingBox (const CBoundingBoxAligned &boundingBox, const CColor &color, bool wireframe=false)
 Render the surfaces of the bound box as triangles. More...
 
void DrawBoundingBox (const CBoundingBoxAligned &boundingBox, const CColor &color, const CMatrix3D &transform, bool wireframe=false)
 
void DrawBrush (const CBrush &brush, const CColor &color, bool wireframe=false)
 Render the surfaces of the brush as triangles. More...
 

Private Member Functions

const CShaderTechniquePtrGetShaderTechnique (const CStrIntern name, const CColor &color, const bool depthTestEnabled=true, const bool wireframe=false)
 

Private Attributes

std::unordered_map< ShaderTechniqueKey, CShaderTechniquePtr, ShaderTechniqueKeyHash, ShaderTechniqueKeyEqualm_ShaderTechniqueMapping
 
Renderer::Backend::IVertexInputLayoutm_VertexInputLayout = nullptr
 

Member Function Documentation

◆ DrawBoundingBox() [1/2]

void CDebugRenderer::DrawBoundingBox ( const CBoundingBoxAligned boundingBox,
const CColor color,
bool  wireframe = false 
)

Render the surfaces of the bound box as triangles.

◆ DrawBoundingBox() [2/2]

void CDebugRenderer::DrawBoundingBox ( const CBoundingBoxAligned boundingBox,
const CColor color,
const CMatrix3D transform,
bool  wireframe = false 
)

◆ DrawBrush()

void CDebugRenderer::DrawBrush ( const CBrush brush,
const CColor color,
bool  wireframe = false 
)

Render the surfaces of the brush as triangles.

◆ DrawCameraFrustum()

void CDebugRenderer::DrawCameraFrustum ( const CCamera camera,
const CColor color,
int  intermediates = 0,
bool  wireframe = false 
)

Render: Renders the camera's frustum in world space.

Parameters
intermediatesdetermines how many intermediate distance planes should be hinted at between the near and far planes

◆ DrawCircle()

void CDebugRenderer::DrawCircle ( const CVector3D origin,
const float  radius,
const CColor color 
)

Render the circle in world space oriented to the view camera.

◆ DrawLine() [1/2]

void CDebugRenderer::DrawLine ( const CVector3D from,
const CVector3D to,
const CColor color,
const float  width,
const bool  depthTestEnabled = true 
)

Render the line in world space.

◆ DrawLine() [2/2]

void CDebugRenderer::DrawLine ( const std::vector< CVector3D > &  line,
const CColor color,
const float  width,
const bool  depthTestEnabled = true 
)

◆ GetShaderTechnique()

const CShaderTechniquePtr & CDebugRenderer::GetShaderTechnique ( const CStrIntern  name,
const CColor color,
const bool  depthTestEnabled = true,
const bool  wireframe = false 
)
private

◆ Initialize()

void CDebugRenderer::Initialize ( )

Member Data Documentation

◆ m_ShaderTechniqueMapping

std::unordered_map<ShaderTechniqueKey, CShaderTechniquePtr, ShaderTechniqueKeyHash, ShaderTechniqueKeyEqual> CDebugRenderer::m_ShaderTechniqueMapping
private

◆ m_VertexInputLayout

Renderer::Backend::IVertexInputLayout* CDebugRenderer::m_VertexInputLayout = nullptr
private

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