[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [39729] trunk/blender/source/gameengine/ Ketsji/KX_KetsjiEngine.cpp: BGE: Post drawing callbacks are now done per viewport instead of per scene.
Mitchell Stokes
mogurijin at gmail.com
Sat Aug 27 05:19:49 CEST 2011
Revision: 39729
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39729
Author: moguri
Date: 2011-08-27 03:19:46 +0000 (Sat, 27 Aug 2011)
Log Message:
-----------
BGE: Post drawing callbacks are now done per viewport instead of per scene. This is handy for things like having a different HUD for each player in a splitscreen game. To figure out what viewport you're drawing too, check the scene's active_camera.
Modified Paths:
--------------
trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
Modified: trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp 2011-08-27 03:13:54 UTC (rev 39728)
+++ trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp 2011-08-27 03:19:46 UTC (rev 39729)
@@ -862,6 +862,8 @@
{
if((*it)->GetViewport())
{
+ // Change the active camera so Python scripts can figure out what viewport they're in
+ scene->SetActiveCamera(*it);
if (scene->IsClearingZBuffer())
m_rasterizer->ClearDepthBuffer();
@@ -873,6 +875,10 @@
it++;
}
+
+ // Now change the camera back
+ scene->SetActiveCamera(cam);
+
PostRenderScene(scene);
}
@@ -1315,6 +1321,10 @@
if (scene->GetPhysicsEnvironment())
scene->GetPhysicsEnvironment()->debugDrawWorld();
+
+#ifdef WITH_PYTHON
+ scene->RunDrawingCallbacks(scene->GetPostDrawCB());
+#endif
}
void KX_KetsjiEngine::RenderFonts(KX_Scene* scene)
@@ -1336,9 +1346,6 @@
{
m_rendertools->MotionBlur(m_rasterizer);
scene->Render2DFilters(m_canvas);
-#ifdef WITH_PYTHON
- scene->RunDrawingCallbacks(scene->GetPostDrawCB());
-#endif
m_rasterizer->FlushDebugLines();
}
More information about the Bf-blender-cvs
mailing list