#include <StkCSMScenerenderer.h>
|
bool | makeShadowMap (const STK::Camera &cam, const Viewport &vp, std::vector< std::shared_ptr< STK::GraphicsModel > > &models) |
|
void | updateFrustumPoints (CSMSceneRenderer::Frustum &f, const STK::Vector3f ¢er, const STK::Vector3f &view_dir, const STK::Vector3f &view_up) |
|
void | updateSplitDist (float nd, float fd) |
|
void | renderShadowMap (const STK::Camera &cam, const Viewport &vp, const Camera &shd_cam, const Viewport &shd_vp, std::vector< std::shared_ptr< STK::GraphicsModel > > &models) |
|
bool | initDepthFrameBuffer () |
|
void | calcShadowCam (int split_i, const STK::Matrix4x4f &mv) |
|
std::vector< std::shared_ptr< Uniform > > | bindShadowMap (const Camera &cam) |
|
void | drawModels (const Camera &cam, const STK::Viewport &vp, const std::vector< std::shared_ptr< STK::GraphicsModel > > &models, const std::vector< std::shared_ptr< Uniform > > uniforms) |
|
void | updateLightUniforms (const Camera &cam) |
|
|
bool | use_csm_shadows_ |
|
float | csm_splits_ [4] |
|
float | csm_split_weight_ |
|
float | csm_shd_near_ |
|
float | csm_shd_far_ |
|
int | csm_num_splits_ |
|
std::shared_ptr< STK::Camera > | shd_cam_ [4] |
|
STK::Matrix4x4f | shad_cpm_ [4] |
|
Frustum | f_ [4] |
|
float | far_bound_ [4] |
|
GLuint | depth_tex_ |
|
GLuint | dummy_depth_tex_ |
|
GLuint | depth_fb_ |
|
GLuint | shd_map_unit_ |
|
int | depth_map_size_ |
|
std::string | shadow_map_program_name_ |
|
std::string | shadow_map_tex_program_name_ |
|
std::shared_ptr< STK::ShaderProgram > | shadow_map_program_ |
|
std::shared_ptr< STK::ShaderProgram > | shadow_map_tex_program_ |
|
std::shared_ptr< STK::Uniform > | u_csm_num_splits_ |
|
std::shared_ptr< STK::Uniform > | u_csm_shadow_map_size_ |
|
std::shared_ptr< STK::Uniform > | u_csm_shadow_map_unit_ |
|
std::shared_ptr< STK::Uniform > | u_csm_far_bounds_ |
|
std::shared_ptr< STK::Uniform > | u_csm_proj_matrix0_ |
|
std::shared_ptr< STK::Uniform > | u_csm_proj_matrix1_ |
|
std::shared_ptr< STK::Uniform > | u_csm_proj_matrix2_ |
|
std::shared_ptr< STK::Uniform > | u_csm_proj_matrix3_ |
|
std::shared_ptr< ShaderProgramManager > | prg_mgr_ |
|
std::vector< std::shared_ptr< STK::GraphicsModel > > | models_ |
|
std::shared_ptr< STK::Light > | light_ |
|
std::vector< std::shared_ptr< STK::Uniform > > | global_uniforms_ |
|
std::shared_ptr< STK::Uniform > | u_light_dir_eye_ |
|
std::shared_ptr< STK::Uniform > | u_light_dir_world_ |
|
CSMSceneRenderer - Scene renderer with Cascading Shadow Maps
◆ getShadowMapUnit()
int STK::CSMSceneRenderer::getShadowMapUnit |
( |
| ) |
const |
|
inline |
Get shadow mapping texture unit ID. This is the texture unit used for the shadow mapping depth map.
◆ render()
void CSMSceneRenderer::render |
( |
const Camera & |
cam, |
|
|
const Viewport & |
vp |
|
) |
| |
|
virtual |
◆ setShadowMapProgramName()
void STK::CSMSceneRenderer::setShadowMapProgramName |
( |
const std::string & |
name | ) |
|
|
inline |
Set name of shader program to use during shadow map rendering. This shader is used during rendering to the depth map used for shadow mapping.
◆ setShadowMapTextureProgramName()
void STK::CSMSceneRenderer::setShadowMapTextureProgramName |
( |
const std::string & |
name | ) |
|
|
inline |
Set name of shader program to use during shadow map rendering. This shader is used during rendering textured meshes to the depth map used for shadow mapping.
◆ setShadowMapUnit()
void STK::CSMSceneRenderer::setShadowMapUnit |
( |
int |
unit | ) |
|
|
inline |
Set shadow mapping texture unit ID. This is the texture unit used for the shadow mapping depth map.
The documentation for this class was generated from the following files:
- Native/SilentToolkit/StkScene/StkCSMScenerenderer.h
- Native/SilentToolkit/StkScene/StkCSMSceneRenderer.cpp