Kochol Game Engine  0.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
kge::efx::XPSM Class Reference

#include <xpsm.h>

Inheritance diagram for kge::efx::XPSM:
kge::efx::ShadowMapProjection kge::efx::Effect

Public Member Functions

 XPSM (int ShadowMapSize, sn::SceneManager *pSmgr)
 Constructor.
 ~XPSM ()
 Destructor.
virtual bool Init ()
 Inits the XPSM.
void PreRender (float elapsedTime=0.0f)
 The works must to do before rendering the object.
void Render ()
 The works must to do after rendering the object.
void PostRenderEverything ()
 The works must to do after rendering all of the scene nodes.
- Public Member Functions inherited from kge::efx::ShadowMapProjection
 ShadowMapProjection (int ShadowMapSize, sn::SceneManager *pSmgr)
 Constructor.
virtual ~ShadowMapProjection ()
 Destructor.
virtual void AddNodes (sn::SceneNode *pNodes)
 Add nodes of mesh that effect influencing on it.
virtual const char * GetShaderCode ()
virtual math::MatrixGetMatrix ()
virtual void OnReset ()
 For internal use.
- Public Member Functions inherited from kge::efx::Effect
 Effect ()
 Constructor.
virtual ~Effect ()
 Destructor.

Public Attributes

float m_XPSM_Coef
float m_XPSM_Bias
float m_XPSM_ZBias
float m_XPSM_EpsilonW
- Public Attributes inherited from kge::efx::ShadowMapProjection
gfx::Texturem_pShadowMap
 The shadow map texture.
gfx::Colorf m_cShadowColor

Protected Member Functions

void BuildXPSMProjectionMatrix ()
 Builds XPSM Projection Matrix.
void TransformWithWClip (const std::vector< gfx::Vertex3 > &inVectors, std::vector< gfx::Vertex3 > &outVectors, const math::Matrix &transform, float wThreshold)
bool IntersectAABB2D (math::AABB &c, const math::AABB &a, const math::AABB &b)
- Protected Member Functions inherited from kge::efx::ShadowMapProjection
void AddMeshes (std::vector< MeshMatrix > &Alpha, std::vector< MeshMatrix > &NoAlpha, sn::SceneNode *mesh)

Protected Attributes

float m_fAspect
float m_zNear
float m_zFar
float m_ppNear
float m_ppFar
float m_fSlideBack
float m_fLSPSM_Nopt
float m_fCosGamma
math::Matrix m_LightViewProj
- Protected Attributes inherited from kge::efx::ShadowMapProjection
char * m_pShaderCode
sn::SceneManagerm_pSmgr
 The scene manager pointer.
sn::Cameram_pActiveCamera
sn::Cameram_pShadowCamera
gfx::Rendererm_pRen
gfx::Shaderm_pVertexShader
 The vertex shader for rendering shadow map.
gfx::Shaderm_pPixelShader
 The pixel shader for rendering shadow map.
gfx::Shaderm_pVertexShader2
 The vertex shader for rendering shadow map with alpha test.
gfx::Shaderm_pPixelShader2
 The pixel shader for rendering shadow map with alpha test.
gfx::Shaderm_pVertexShader3
 The vertex shader for rendering shadow map with instancing.
gfx::Shaderm_pVertexShader4
 The vertex shader for rendering shadow map with instancing & alpha test.
gfx::ShaderHandle m_shMatWVP
 Shader handle for world view projection matrix.
gfx::ShaderHandle m_shMatWVP2
gfx::ShaderHandle m_shMatWVP3
gfx::ShaderHandle m_shMatWVP4
gfx::ShaderInstancem_pShaderInstance
gfx::ShaderInstancem_pShaderInstance2
gfx::ShaderInstancem_pShaderInstance3
gfx::ShaderInstancem_pShaderInstance4
gfx::Materialm_pMaterial
 The shadow material.
gfx::Materialm_pMaterial2
gfx::Materialm_pMaterial3
gfx::Materialm_pMaterial4
core::RectI m_ViewPort
 The view port for rendering in shadow map.
math::Matrixm_pProj
math::Matrixm_pOrtho
math::Matrixm_pBiasMatrix
math::Matrixm_pBiasFinal
math::Matrixm_pFinal
math::Frustumm_pFrustum
int m_iShadowMapSize
- Protected Attributes inherited from kge::efx::Effect
std::vector< sn::SceneNode * > m_arrNodes

Detailed Description

Definition at line 10 of file xpsm.h.

Constructor & Destructor Documentation

kge::efx::XPSM::XPSM ( int  ShadowMapSize,
sn::SceneManager pSmgr 
)

Constructor.

kge::efx::XPSM::~XPSM ( )

Destructor.

Member Function Documentation

void kge::efx::XPSM::BuildXPSMProjectionMatrix ( )
protected

Builds XPSM Projection Matrix.

virtual bool kge::efx::XPSM::Init ( )
virtual

Inits the XPSM.

Reimplemented from kge::efx::ShadowMapProjection.

bool kge::efx::XPSM::IntersectAABB2D ( math::AABB c,
const math::AABB a,
const math::AABB b 
)
protected
void kge::efx::XPSM::PostRenderEverything ( )
virtual

The works must to do after rendering all of the scene nodes.

Reimplemented from kge::efx::ShadowMapProjection.

void kge::efx::XPSM::PreRender ( float  elapsedTime = 0.0f)
virtual

The works must to do before rendering the object.

Reimplemented from kge::efx::ShadowMapProjection.

void kge::efx::XPSM::Render ( )
virtual

The works must to do after rendering the object.

Reimplemented from kge::efx::ShadowMapProjection.

void kge::efx::XPSM::TransformWithWClip ( const std::vector< gfx::Vertex3 > &  inVectors,
std::vector< gfx::Vertex3 > &  outVectors,
const math::Matrix transform,
float  wThreshold 
)
protected

Member Data Documentation

float kge::efx::XPSM::m_fAspect
protected

Definition at line 39 of file xpsm.h.

float kge::efx::XPSM::m_fCosGamma
protected

Definition at line 39 of file xpsm.h.

float kge::efx::XPSM::m_fLSPSM_Nopt
protected

Definition at line 39 of file xpsm.h.

float kge::efx::XPSM::m_fSlideBack
protected

Definition at line 39 of file xpsm.h.

math::Matrix kge::efx::XPSM::m_LightViewProj
protected

Definition at line 41 of file xpsm.h.

float kge::efx::XPSM::m_ppFar
protected

Definition at line 39 of file xpsm.h.

float kge::efx::XPSM::m_ppNear
protected

Definition at line 39 of file xpsm.h.

float kge::efx::XPSM::m_XPSM_Bias

Definition at line 33 of file xpsm.h.

float kge::efx::XPSM::m_XPSM_Coef

Definition at line 32 of file xpsm.h.

float kge::efx::XPSM::m_XPSM_EpsilonW

Definition at line 35 of file xpsm.h.

float kge::efx::XPSM::m_XPSM_ZBias

Definition at line 34 of file xpsm.h.

float kge::efx::XPSM::m_zFar
protected

Definition at line 39 of file xpsm.h.

float kge::efx::XPSM::m_zNear
protected

Definition at line 39 of file xpsm.h.


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