MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / renderWorld

Method renderWorld

Engine/source/gui/editor/guiShapeEdPreview.cpp:1396–1554  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1394}
1395
1396void GuiShapeEdPreview::renderWorld(const RectI &updateRect)
1397{
1398 if ( !mModel )
1399 return;
1400
1401 mSaveFrustum = GFX->getFrustum();
1402 mSaveFrustum.setFarDist( 100000.0f );
1403 GFX->setFrustum( mSaveFrustum );
1404 mSaveFrustum.setTransform( smCamMatrix );
1405
1406 mSaveProjection = GFX->getProjectionMatrix();
1407 mSaveWorldToScreenScale = GFX->getWorldToScreenScale();
1408
1409 FogData savedFogData = gClientSceneGraph->getFogData();
1410 gClientSceneGraph->setFogData( FogData() ); // no fog in preview window
1411
1412 SceneRenderState state
1413 (
1414 gClientSceneGraph,
1415 SPT_Diffuse,
1416 SceneCameraState( GFX->getViewport(), mSaveFrustum,
1417 GFX->getWorldMatrix(), GFX->getProjectionMatrix() )
1418 );
1419
1420 // Set up pass transforms
1421 RenderPassManager *renderPass = state.getRenderPass();
1422 renderPass->assignSharedXform( RenderPassManager::View, GFX->getWorldMatrix() );
1423 renderPass->assignSharedXform( RenderPassManager::Projection, GFX->getProjectionMatrix() );
1424
1425 // Set up our TS render state here.
1426 TSRenderState rdata;
1427 rdata.setSceneState(&state);
1428
1429 LIGHTMGR->unregisterAllLights();
1430 LIGHTMGR->setSpecialLight( LightManager::slSunLightType, mFakeSun );
1431
1432 // We might have some forward lit materials
1433 // so pass down a query to gather lights.
1434 LightQuery query;
1435 query.init( SphereF( Point3F::Zero, 1 ) );
1436 rdata.setLightQuery( &query );
1437
1438 // Update projected node points (for mouse picking)
1439 updateProjectedNodePoints();
1440
1441 // Determine time elapsed since last render (for animation playback)
1442 S32 time = Platform::getVirtualMilliseconds();
1443 S32 dt = time - mLastRenderTime;
1444 mLastRenderTime = time;
1445
1446 if ( mModel )
1447 {
1448 updateDetailLevel( &state );
1449
1450 // Render the grid
1451 renderGrid();
1452
1453 // Animate the model

Callers

nothing calls this directly

Calls 15

FogDataClass · 0.85
getFrustumMethod · 0.80
setFarDistMethod · 0.80
setFrustumMethod · 0.80
getProjectionMatrixMethod · 0.80
getWorldToScreenScaleMethod · 0.80
setFogDataMethod · 0.80
assignSharedXformMethod · 0.80
setSceneStateMethod · 0.80
setSpecialLightMethod · 0.80
setLightQueryMethod · 0.80
setFadeOverrideMethod · 0.80

Tested by

no test coverage detected