|
VisuTwin Canvas
C++ 3D Engine — Metal Backend
|
#include <scene/renderer/shadowRenderer.h>
Public Member Functions | |
| LightRenderData * | getLightRenderData (Light *light, Camera *camera, int face) |
| bool | needsShadowRendering (Light *light) |
| Camera * | prepareFace (Light *light, Camera *camera, int face) |
| void | setupRenderPass (RenderPass *renderPass, Camera *shadowCamera, bool clearRenderTarget) |
| ShadowRenderer (Renderer *renderer, LightTextureAtlas *lightTextureAtlas) | |
Static Public Member Functions | |
| static Camera * | createShadowCamera (ShadowType shadowType, LightType type, int face) |
Definition at line 16 of file shadowRenderer.h.
|
inline |
Definition at line 19 of file shadowRenderer.h.
|
static |
Definition at line 67 of file shadowRenderer.cpp.
References visutwin::canvas::LightCamera::create(), visutwin::canvas::ShadowTypeInfo::pcf, visutwin::canvas::Camera::setClearColor(), visutwin::canvas::Camera::setClearColorBuffer(), visutwin::canvas::Camera::setClearDepthBuffer(), visutwin::canvas::Camera::setClearStencilBuffer(), visutwin::canvas::shadowTypeInfo, and visutwin::canvas::ShadowTypeInfo::vsm.
Referenced by visutwin::canvas::LightRenderData::LightRenderData().
| LightRenderData * visutwin::canvas::ShadowRenderer::getLightRenderData | ( | Light * | light, |
| Camera * | camera, | ||
| int | face ) |
Definition at line 62 of file shadowRenderer.cpp.
References visutwin::canvas::Light::getRenderData(), visutwin::canvas::LIGHTTYPE_DIRECTIONAL, and visutwin::canvas::Light::type().
Referenced by prepareFace().
| bool visutwin::canvas::ShadowRenderer::needsShadowRendering | ( | Light * | light | ) |
Definition at line 13 of file shadowRenderer.cpp.
References visutwin::canvas::Light::castShadows(), visutwin::canvas::Light::enabled(), visutwin::canvas::Light::numShadowFaces(), visutwin::canvas::Light::setShadowUpdateMode(), visutwin::canvas::SHADOWUPDATE_NONE, visutwin::canvas::SHADOWUPDATE_THISFRAME, visutwin::canvas::Light::shadowUpdateMode(), and visutwin::canvas::Light::visibleThisFrame().
Definition at line 28 of file shadowRenderer.cpp.
References getLightRenderData(), visutwin::canvas::LIGHTTYPE_DIRECTIONAL, visutwin::canvas::ShadowMap::renderTargets(), visutwin::canvas::Camera::setRenderTarget(), visutwin::canvas::LightRenderData::shadowCamera, visutwin::canvas::Light::shadowMap(), and visutwin::canvas::Light::type().
Referenced by visutwin::canvas::RenderPassShadowLocalNonClustered::RenderPassShadowLocalNonClustered().
| void visutwin::canvas::ShadowRenderer::setupRenderPass | ( | RenderPass * | renderPass, |
| Camera * | shadowCamera, | ||
| bool | clearRenderTarget ) |
Definition at line 40 of file shadowRenderer.cpp.
References visutwin::canvas::Camera::clearColor(), visutwin::canvas::RenderPass::colorOps(), visutwin::canvas::RenderPass::depthStencilOps(), visutwin::canvas::RenderPass::init(), visutwin::canvas::Camera::renderTarget(), and visutwin::canvas::RenderPass::setRequiresCubemaps().
Referenced by visutwin::canvas::RenderPassShadowLocalNonClustered::RenderPassShadowLocalNonClustered().