[Orxonox-commit 643] r3175 - in branches/pch/src/orxonox/objects: . worldentities

rgrieder at orxonox.net rgrieder at orxonox.net
Mon Jun 15 10:22:00 CEST 2009


Author: rgrieder
Date: 2009-06-15 10:21:59 +0200 (Mon, 15 Jun 2009)
New Revision: 3175

Modified:
   branches/pch/src/orxonox/objects/Scene.cc
   branches/pch/src/orxonox/objects/worldentities/Planet.cc
Log:
Fixed dedicated (at least for presentation09.oxw).

Modified: branches/pch/src/orxonox/objects/Scene.cc
===================================================================
--- branches/pch/src/orxonox/objects/Scene.cc	2009-06-15 07:59:28 UTC (rev 3174)
+++ branches/pch/src/orxonox/objects/Scene.cc	2009-06-15 08:21:59 UTC (rev 3175)
@@ -58,7 +58,7 @@
 
         if (GameMode::showsGraphics())
         {
-            assert(Ogre::Root::getSingletonPtr())
+            assert(Ogre::Root::getSingletonPtr());
             this->sceneManager_ = Ogre::Root::getSingleton().createSceneManager(Ogre::ST_GENERIC);
             this->rootSceneNode_ = this->sceneManager_->getRootSceneNode();
         }

Modified: branches/pch/src/orxonox/objects/worldentities/Planet.cc
===================================================================
--- branches/pch/src/orxonox/objects/worldentities/Planet.cc	2009-06-15 07:59:28 UTC (rev 3174)
+++ branches/pch/src/orxonox/objects/worldentities/Planet.cc	2009-06-15 08:21:59 UTC (rev 3175)
@@ -69,18 +69,21 @@
         if(!this->isVisible())
             return;
 
-        Camera* activeCamera = CameraManager::getInstance().getActiveCamera();
-        if(activeCamera)
+        if (GameMode::showsGraphics())
         {
-            float distance = this->getPosition().distance( activeCamera->getWorldPosition() );
-            //             COUT(2) << distance << std::endl;
-            float planetRadius = this->getScale();
+            Camera* activeCamera = CameraManager::getInstance().getActiveCamera();
+            if(activeCamera)
+            {
+                float distance = this->getPosition().distance( activeCamera->getWorldPosition() );
+                //             COUT(2) << distance << std::endl;
+                float planetRadius = this->getScale();
 
-            float newScale = 2 * distance / sqrt(distance*distance - planetRadius*planetRadius);
-            float tempTest = newScale*(1+float(this->atmosphereSize)/float(this->imageSize));
-            newScale = tempTest;
+                float newScale = 2 * distance / sqrt(distance*distance - planetRadius*planetRadius);
+                float tempTest = newScale*(1+float(this->atmosphereSize)/float(this->imageSize));
+                newScale = tempTest;
 
-            this->billboard_.getBillboardSet()->setDefaultDimensions(newScale, newScale);
+                this->billboard_.getBillboardSet()->setDefaultDimensions(newScale, newScale);
+            }
         }
 
         SUPER(Planet, tick, dt);
@@ -144,11 +147,14 @@
     {
         SUPER(Planet, XMLPort, xmlelement, mode);
 
-        XMLPortParam(Planet, "atmosphere", setAtmosphere, getAtmosphere, xmlelement, mode).defaultValues("planet/Atmosphere");
-        XMLPortParam(Planet, "atmospheresize", setAtmosphereSize, getAtmosphereSize, xmlelement,mode);     
-        XMLPortParam(Planet, "imagesize", setImageSize, getImageSize, xmlelement,mode);         
-        XMLPortParam(Planet, "mesh", setMeshSource, getMeshSource, xmlelement, mode);
-        XMLPortParam(Planet, "shadow", setCastShadows, getCastShadows, xmlelement, mode).defaultValues(true);
+        if (GameMode::showsGraphics())
+        {
+            XMLPortParam(Planet, "atmosphere", setAtmosphere, getAtmosphere, xmlelement, mode).defaultValues("planet/Atmosphere");
+            XMLPortParam(Planet, "atmospheresize", setAtmosphereSize, getAtmosphereSize, xmlelement,mode);     
+            XMLPortParam(Planet, "imagesize", setImageSize, getImageSize, xmlelement,mode);         
+            XMLPortParam(Planet, "mesh", setMeshSource, getMeshSource, xmlelement, mode);
+            XMLPortParam(Planet, "shadow", setCastShadows, getCastShadows, xmlelement, mode).defaultValues(true);
+        }
     }
 
     void Planet::registerVariables()




More information about the Orxonox-commit mailing list