MCPcopy Create free account
hub / github.com/GarageGames/Torque3D / ShadowMapPass

Method ShadowMapPass

Engine/source/lighting/shadowMap/shadowMapPass.cpp:66–127  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

64U32 ShadowMapPass::smRenderBudgetMs = 8;
65
66ShadowMapPass::ShadowMapPass(LightManager* lightManager, ShadowMapManager* shadowManager)
67{
68 mLightManager = lightManager;
69 mShadowManager = shadowManager;
70
71 // Setup our render pass managers
72
73 // Static
74 mShadowRPM = new ShadowRenderPassManager();
75 mShadowRPM->assignName( "ShadowRenderPassManager" );
76 mShadowRPM->registerObject();
77 Sim::getRootGroup()->addObject( mShadowRPM );
78 mShadowRPM->addManager( new RenderMeshMgr(RenderPassManager::RIT_Mesh, 0.3f, 0.3f) );
79 mShadowRPM->addManager( new RenderTerrainMgr( 0.5f, 0.5f ) );
80 mShadowRPM->addManager( new RenderImposterMgr( 0.6f, 0.6f ) );
81
82 // Dynamic
83 mDynamicShadowRPM = new DynamicShadowRenderPassManager();
84 mDynamicShadowRPM->assignName( "DynamicShadowRenderPassManager" );
85 mDynamicShadowRPM->registerObject();
86 Sim::getRootGroup()->addObject( mDynamicShadowRPM );
87 mDynamicShadowRPM->addManager( new RenderMeshMgr(RenderPassManager::RIT_Mesh, 0.3f, 0.3f) );
88 mDynamicShadowRPM->addManager( new RenderTerrainMgr( 0.5f, 0.5f ) );
89 mDynamicShadowRPM->addManager( new RenderImposterMgr( 0.6f, 0.6f ) );
90
91 mActiveLights = 0;
92 mPrevCamPos = Point3F::Zero;
93 mPrevCamRot = Point3F::Zero;
94 mTimer = PlatformTimer::create();
95
96 Con::addVariable( "$ShadowStats::activeMaps", TypeS32, &smActiveShadowMaps,
97 "The shadow stats showing the active number of shadow maps.\n"
98 "@ingroup AdvancedLighting\n" );
99
100 Con::addVariable( "$ShadowStats::updatedMaps", TypeS32, &smUpdatedShadowMaps,
101 "The shadow stats showing the number of shadow maps updated this frame.\n"
102 "@ingroup AdvancedLighting\n" );
103
104 Con::addVariable( "$ShadowStats::nearMaps", TypeS32, &smNearShadowMaps,
105 "The shadow stats showing the number of shadow maps that are close enough to be updated very frame.\n"
106 "@ingroup AdvancedLighting\n" );
107
108 Con::addVariable( "$ShadowStats::drawCalls", TypeS32, &smShadowMapsDrawCalls,
109 "The shadow stats showing the number of draw calls in shadow map renders for this frame.\n"
110 "@ingroup AdvancedLighting\n" );
111
112 Con::addVariable( "$ShadowStats::polyCount", TypeS32, &smShadowMapPolyCount,
113 "The shadow stats showing the number of triangles in shadow map renders for this frame.\n"
114 "@ingroup AdvancedLighting\n" );
115
116 Con::addVariable( "$ShadowStats::rtChanges", TypeS32, &smRenderTargetChanges,
117 "The shadow stats showing the number of render target changes for shadow maps in this frame.\n"
118 "@ingroup AdvancedLighting\n" );
119
120 Con::addVariable( "$ShadowStats::poolTexCount", TypeS32, &smShadowPoolTexturesCount,
121 "The shadow stats showing the number of shadow textures in the shadow texture pool.\n"
122 "@ingroup AdvancedLighting\n" );
123

Callers

nothing calls this directly

Calls 6

getRootGroupFunction · 0.85
addVariableFunction · 0.85
assignNameMethod · 0.80
addManagerMethod · 0.80
registerObjectMethod · 0.45
addObjectMethod · 0.45

Tested by

no test coverage detected