Changeset View
Changeset View
Standalone View
Standalone View
source/gameengine/Ketsji/KX_KetsjiEngine.cpp
| Show First 20 Lines • Show All 1,048 Lines • ▼ Show 20 Lines | void KX_KetsjiEngine::RenderShadowBuffers(KX_Scene *scene) | ||||
| for (i=0; i<lightlist->GetCount(); i++) { | for (i=0; i<lightlist->GetCount(); i++) { | ||||
| KX_GameObject *gameobj = (KX_GameObject*)lightlist->GetValue(i); | KX_GameObject *gameobj = (KX_GameObject*)lightlist->GetValue(i); | ||||
| KX_LightObject *light = (KX_LightObject*)gameobj; | KX_LightObject *light = (KX_LightObject*)gameobj; | ||||
| RAS_ILightObject *raslight = light->GetLightData(); | RAS_ILightObject *raslight = light->GetLightData(); | ||||
| raslight->Update(); | raslight->Update(); | ||||
| if (m_rasterizer->GetDrawingMode() == RAS_IRasterizer::KX_TEXTURED && raslight->HasShadowBuffer()) { | if (m_rasterizer->GetDrawingMode() == RAS_IRasterizer::KX_TEXTURED && raslight->HasShadowBuffer() && raslight->NeedShadowUpdate()) { | ||||
| /* make temporary camera */ | /* make temporary camera */ | ||||
| RAS_CameraData camdata = RAS_CameraData(); | RAS_CameraData camdata = RAS_CameraData(); | ||||
| KX_Camera *cam = new KX_Camera(scene, scene->m_callbacks, camdata, true, true); | KX_Camera *cam = new KX_Camera(scene, scene->m_callbacks, camdata, true, true); | ||||
| cam->SetName("__shadow__cam__"); | cam->SetName("__shadow__cam__"); | ||||
| MT_Transform camtrans; | MT_Transform camtrans; | ||||
| /* switch drawmode for speed */ | /* switch drawmode for speed */ | ||||
| ▲ Show 20 Lines • Show All 917 Lines • Show Last 20 Lines | |||||