[Orxonox-commit 3759] r8439 - code/trunk/src/libraries/core

rgrieder at orxonox.net rgrieder at orxonox.net
Mon May 9 18:44:05 CEST 2011


Author: rgrieder
Date: 2011-05-09 18:44:05 +0200 (Mon, 09 May 2011)
New Revision: 8439

Modified:
   code/trunk/src/libraries/core/GUIManager.cc
Log:
Fixed overlay drawing issue with CEGUI 0.7 (thx Crazy Eddie!).
You should now be able to see the console again in the main menu. Have fun ;)

Modified: code/trunk/src/libraries/core/GUIManager.cc
===================================================================
--- code/trunk/src/libraries/core/GUIManager.cc	2011-05-09 16:24:21 UTC (rev 8438)
+++ code/trunk/src/libraries/core/GUIManager.cc	2011-05-09 16:44:05 UTC (rev 8439)
@@ -58,6 +58,8 @@
 #  include <RendererModules/Ogre/CEGUIOgreResourceProvider.h>
 #  include <OgreCamera.h>
 #  include <OgreRenderQueueListener.h>
+#  include <OgreRenderSystem.h>
+#  include <OgreRoot.h>
 #  include <OgreSceneManager.h>
 #endif
 
@@ -136,7 +138,15 @@
         void renderQueueStarted(Ogre::uint8 id, const Ogre::String& invocation, bool& skipThisQueue)
         {
             if (id == Ogre::RENDER_QUEUE_OVERLAY && invocation.empty())
+            {
                 CEGUI::System::getSingleton().renderGUI();
+
+                // Important workaround! (at least required by CEGUI 0.7.5)
+                // If we don't reset the scissor test, OGRE will only render overlays
+                // in the area where CEGUI last drew, which is usually nothing
+                // or a little box where the focused element is.
+                Ogre::Root::getSingleton().getRenderSystem()->setScissorTest(false);
+            }
         }
     };
 #endif




More information about the Orxonox-commit mailing list