Revision: 7094
          http://playerstage.svn.sourceforge.net/playerstage/?rev=7094&view=rev
Author:   natepak
Date:     2008-10-12 00:44:49 +0000 (Sun, 12 Oct 2008)

Log Message:
-----------
Windows now resize properly when using Ogre 1.6

Modified Paths:
--------------
    code/gazebo/trunk/server/rendering/OgreCreator.cc
    code/gazebo/trunk/server/rendering/UserCamera.cc

Modified: code/gazebo/trunk/server/rendering/OgreCreator.cc
===================================================================
--- code/gazebo/trunk/server/rendering/OgreCreator.cc   2008-10-10 16:18:50 UTC 
(rev 7093)
+++ code/gazebo/trunk/server/rendering/OgreCreator.cc   2008-10-12 00:44:49 UTC 
(rev 7094)
@@ -388,20 +388,18 @@
 
   Ogre::SceneNode* gridObjectNode = 
OgreAdaptor::Instance()->sceneMgr->getRootSceneNode()->createChildSceneNode("__OGRE_GRID_NODE__");
 
-  Ogre::MaterialPtr gridObjectMaterialX = 
Ogre::MaterialManager::getSingleton().create("__OGRE_GRID_MATERIAL_X__","debugger1");
-  gridObjectMaterialX->setReceiveShadows(true);
+  Ogre::MaterialPtr gridObjectMaterialX = 
Ogre::MaterialManager::getSingleton().create("__OGRE_GRID_MATERIAL_X__","General");
   gridObjectMaterialX->getTechnique(0)->setLightingEnabled(true);
-  gridObjectMaterialX->getTechnique(0)->getPass(0)->setDiffuse(0.2,0.2,0.2,0);
+  gridObjectMaterialX->getTechnique(0)->getPass(0)->setDiffuse(0.2,0.2,0.2,1);
   gridObjectMaterialX->getTechnique(0)->getPass(0)->setAmbient(0.2,0.2,0.2);
-  
gridObjectMaterialX->getTechnique(0)->getPass(0)->setSelfIllumination(0.0,0.0,0.0);
+  
//gridObjectMaterialX->getTechnique(0)->getPass(0)->setSelfIllumination(0.0,0.0,0.0);
   gridObjectMaterialX->setReceiveShadows(false);
 
-  Ogre::MaterialPtr gridObjectMaterialY = 
Ogre::MaterialManager::getSingleton().create("__OGRE_GRID_MATERIAL_Y__","debugger2");
-  gridObjectMaterialY->setReceiveShadows(true);
+  Ogre::MaterialPtr gridObjectMaterialY = 
Ogre::MaterialManager::getSingleton().create("__OGRE_GRID_MATERIAL_Y__","General");
   gridObjectMaterialY->getTechnique(0)->setLightingEnabled(true);
-  gridObjectMaterialY->getTechnique(0)->getPass(0)->setDiffuse(0.2,0.2,0.2,0);
+  gridObjectMaterialY->getTechnique(0)->getPass(0)->setDiffuse(0.2,0.2,0.2,1);
   gridObjectMaterialY->getTechnique(0)->getPass(0)->setAmbient(0.2,0.2,0.2);
-  
gridObjectMaterialY->getTechnique(0)->getPass(0)->setSelfIllumination(0.0,0.0,0.0);
+  
//gridObjectMaterialY->getTechnique(0)->getPass(0)->setSelfIllumination(0.0,0.0,0.0);
   gridObjectMaterialY->setReceiveShadows(false);
 
 
@@ -540,6 +538,7 @@
   // etc
   gridObject->end();
   gridObjectNode->attachObject(gridObject);
+  
 }
 
 
////////////////////////////////////////////////////////////////////////////////
@@ -571,9 +570,20 @@
   Ogre::NameValuePairList params;
   Ogre::RenderWindow *window = NULL;
 
-  params["parentWindowHandle"] = Ogre::StringConverter::toString(display) + 
":" + Ogre::StringConverter::toString(screen) + ":" + 
Ogre::StringConverter::toString(winId);
-  //params["FSAA"] = Ogre::StringConverter::toString(2);
+  /// Ogre 1.4 required this method to create windows
+  /*params["parentWindowHandle"] = Ogre::StringConverter::toString(display) + 
+    ":" + Ogre::StringConverter::toString(screen) + 
+    ":" + Ogre::StringConverter::toString(winId);
+    */
 
+  /// As of Ogre 1.6 this is the params method that makes a resizable window
+  params["externalWindowHandle"] =  Ogre::StringConverter::toString(display) + 
+    ":" + Ogre::StringConverter::toString(screen) + 
+    ":" + Ogre::StringConverter::toString(winId) + 
+    ":" + Ogre::StringConverter::toString(fl_visual);
+
+  params["FSAA"] = "2";
+
   std::ostringstream stream;
   stream << "OgreWindow(" << windowCounter++ << ")";
 

Modified: code/gazebo/trunk/server/rendering/UserCamera.cc
===================================================================
--- code/gazebo/trunk/server/rendering/UserCamera.cc    2008-10-10 16:18:50 UTC 
(rev 7093)
+++ code/gazebo/trunk/server/rendering/UserCamera.cc    2008-10-12 00:44:49 UTC 
(rev 7094)
@@ -98,14 +98,8 @@
 /// Resize the camera
 void UserCamera::Resize(unsigned int w, unsigned int h)
 {
-  //this->window->resize(w, h);
-  //this->viewport->setDimensions(0,0,1,1);
-  //this->SetAspectRatio( Ogre::Real(this->viewport->getActualWidth()) / 
Ogre::Real(this->viewport->getActualHeight()) );
-  //this->viewport->update();
-  //this->viewport->_updateDimensions();
-
-  this->window->windowMovedOrResized();
-  printf("Resize[%d %d] new[%d %d]\n", w, h, this->window->getWidth(), 
this->window->getHeight());
+  this->window->resize(w, h);
+  this->viewport->setDimensions(0,0,1,1);
 }
 
 
////////////////////////////////////////////////////////////////////////////////


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Playerstage-commit mailing list
Playerstage-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/playerstage-commit

Reply via email to