Revision: 1439
          http://rigsofrods.svn.sourceforge.net/rigsofrods/?rev=1439&view=rev
Author:   rorthomas
Date:     2010-07-13 20:37:47 +0000 (Tue, 13 Jul 2010)

Log Message:
-----------
fixed some stupid compilation bug introduced in last revision

Modified Paths:
--------------
    trunk/source/main/RoRFrameListener.cpp

Modified: trunk/source/main/RoRFrameListener.cpp
===================================================================
--- trunk/source/main/RoRFrameListener.cpp      2010-07-13 20:24:21 UTC (rev 
1438)
+++ trunk/source/main/RoRFrameListener.cpp      2010-07-13 20:37:47 UTC (rev 
1439)
@@ -4848,7 +4848,8 @@
                mCamera->getViewport()->setBackgroundColour(fadeColour);
        }
 
-//     MaterialPtr terMat = 
((TerrainSceneManager*)mSceneMgr)->getTerrainMaterial(); //can't do that
+       bool newTerrainMode = (SETTINGS.getSetting("new Terrain Mode") == 
"Yes");
+
        MaterialPtr terMat = 
(MaterialPtr)(MaterialManager::getSingleton().getByName("TerrainSceneManager/Terrain"));
        {
                // load configuration from STM (sizes)
@@ -4878,198 +4879,198 @@
                        bigMap->setWorldSize(mapsizex, mapsizez);
 #endif //MYGUI
 
-       bool newTerrainMode = (SETTINGS.getSetting("new Terrain Mode") == 
"Yes");
-       if(!newTerrainMode && !disableTetrrain)
-       {
-               // classic mode
-               mSceneMgr->setWorldGeometry(geom);
-       } else if (newTerrainMode && !disableTetrrain)
-       {
-               // new terrain mode
-               mRoot->destroySceneManager(mScene);
-               mScene = mRoot->createSceneManager(ST_GENERIC);
-               // XXX OLD TERRAIN
-               //if(!disableTetrrain)
-               //      mSceneMgr->setWorldGeometry(geom);
+               if(!newTerrainMode && !disableTetrrain)
+               {
+                       // classic mode
+                       mSceneMgr->setWorldGeometry(geom);
+               } else if (newTerrainMode && !disableTetrrain)
+               {
+                       // new terrain mode
+                       mRoot->destroySceneManager(mScene);
+                       mScene = mRoot->createSceneManager(ST_GENERIC);
+                       // XXX OLD TERRAIN
+                       //if(!disableTetrrain)
+                       //      mSceneMgr->setWorldGeometry(geom);
 
-               // new terrain
-               int pageSize = 
StringConverter::parseInt(cfg.getSetting("PageSize"));
-               int worldSize = 
StringConverter::parseInt(cfg.getSetting("PageWorldX"));
-               int pageMaxHeight = 
StringConverter::parseInt(cfg.getSetting("MaxHeight"));
+                       // new terrain
+                       int pageSize = 
StringConverter::parseInt(cfg.getSetting("PageSize"));
+                       int worldSize = 
StringConverter::parseInt(cfg.getSetting("PageWorldX"));
+                       int pageMaxHeight = 
StringConverter::parseInt(cfg.getSetting("MaxHeight"));
 
-               String TERRAIN_FILE_PREFIX  = String(geom); //"testTerrain";
-               String TERRAIN_FILE_SUFFIX  = "mapbin";
-               float TERRAIN_WORLD_SIZE    = worldSize; //1000.0f; // 
PageWorldX?
-               int TERRAIN_SIZE            = pageSize;
-               int TERRAIN_PAGE_MIN_X=0, TERRAIN_PAGE_MAX_X=0;
-               int TERRAIN_PAGE_MIN_Y=0, TERRAIN_PAGE_MAX_Y=0;
-               bool mTerrainsImported=false;
-               TerrainPaging* mTerrainPaging=0;
-               PageManager* mPageManager=0;
-               Light* l = 0;
+                       String TERRAIN_FILE_PREFIX  = String(geom); 
//"testTerrain";
+                       String TERRAIN_FILE_SUFFIX  = "mapbin";
+                       float TERRAIN_WORLD_SIZE    = worldSize; //1000.0f; // 
PageWorldX?
+                       int TERRAIN_SIZE            = pageSize;
+                       int TERRAIN_PAGE_MIN_X=0, TERRAIN_PAGE_MAX_X=0;
+                       int TERRAIN_PAGE_MIN_Y=0, TERRAIN_PAGE_MAX_Y=0;
+                       bool mTerrainsImported=false;
+                       TerrainPaging* mTerrainPaging=0;
+                       PageManager* mPageManager=0;
+                       Light* l = 0;
 
 #ifdef USE_CAELUM
-               if(!useCaelum)
+                       if(!useCaelum)
+                               l = mSceneMgr->getLight("MainLight");
+                       else
+                               l = SkyManager::getSingleton().getMainLight();
+#else // USE_CAELUM
                        l = mSceneMgr->getLight("MainLight");
-               else
-                       l = SkyManager::getSingleton().getMainLight();
-#else // USE_CAELUM
-               l = mSceneMgr->getLight("MainLight");
 #endif // USE_CAELUM
 
-               Vector3 mTerrainPos(0,0,0);
-               mTerrainGroup = OGRE_NEW TerrainGroup(mSceneMgr, 
Terrain::ALIGN_X_Z, TERRAIN_SIZE, TERRAIN_WORLD_SIZE);
-               mTerrainGroup->setFilenameConvention(TERRAIN_FILE_PREFIX, 
TERRAIN_FILE_SUFFIX);
-               mTerrainGroup->setOrigin(mTerrainPos);
+                       Vector3 mTerrainPos(0,0,0);
+                       mTerrainGroup = OGRE_NEW TerrainGroup(mSceneMgr, 
Terrain::ALIGN_X_Z, TERRAIN_SIZE, TERRAIN_WORLD_SIZE);
+                       
mTerrainGroup->setFilenameConvention(TERRAIN_FILE_PREFIX, TERRAIN_FILE_SUFFIX);
+                       mTerrainGroup->setOrigin(mTerrainPos);
 
-               new TerrainGlobalOptions();
-               // Configure global
-               TerrainGlobalOptions::getSingleton().setMaxPixelError(8);
-               // testing composite map
-               
TerrainGlobalOptions::getSingleton().setCompositeMapDistance(3000);
-               //mTerrainGlobals->setUseRayBoxDistanceCalculation(true);
-               
//mTerrainGlobals->getDefaultMaterialGenerator()->setDebugLevel(1);
-               //mTerrainGlobals->setLightMapSize(256);
+                       new TerrainGlobalOptions();
+                       // Configure global
+                       
TerrainGlobalOptions::getSingleton().setMaxPixelError(8);
+                       // testing composite map
+                       
TerrainGlobalOptions::getSingleton().setCompositeMapDistance(3000);
+                       
//mTerrainGlobals->setUseRayBoxDistanceCalculation(true);
+                       
//mTerrainGlobals->getDefaultMaterialGenerator()->setDebugLevel(1);
+                       //mTerrainGlobals->setLightMapSize(256);
 
-               //matProfile->setLightmapEnabled(false);
-               // Important to set these so that the terrain knows what to use 
for derived (non-realtime) data
-               if(l) 
TerrainGlobalOptions::getSingleton().setLightMapDirection(l->getDerivedDirection());
-               
TerrainGlobalOptions::getSingleton().setCompositeMapAmbient(mSceneMgr->getAmbientLight());
-               //mTerrainGlobals->setCompositeMapAmbient(ColourValue::Red);
-               if(l) 
TerrainGlobalOptions::getSingleton().setCompositeMapDiffuse(l->getDiffuseColour());
+                       //matProfile->setLightmapEnabled(false);
+                       // Important to set these so that the terrain knows 
what to use for derived (non-realtime) data
+                       if(l) 
TerrainGlobalOptions::getSingleton().setLightMapDirection(l->getDerivedDirection());
+                       
TerrainGlobalOptions::getSingleton().setCompositeMapAmbient(mSceneMgr->getAmbientLight());
+                       
//mTerrainGlobals->setCompositeMapAmbient(ColourValue::Red);
+                       if(l) 
TerrainGlobalOptions::getSingleton().setCompositeMapDiffuse(l->getDiffuseColour());
 
-               // Configure default import settings for if we use imported 
image
-               Terrain::ImportData& defaultimp = 
mTerrainGroup->getDefaultImportSettings();
-               defaultimp.terrainSize  = TERRAIN_SIZE;
-               defaultimp.worldSize    = TERRAIN_WORLD_SIZE;
+                       // Configure default import settings for if we use 
imported image
+                       Terrain::ImportData& defaultimp = 
mTerrainGroup->getDefaultImportSettings();
+                       defaultimp.terrainSize  = TERRAIN_SIZE;
+                       defaultimp.worldSize    = TERRAIN_WORLD_SIZE;
 
-               defaultimp.inputScale   = pageMaxHeight;
-               defaultimp.minBatchSize = 32;
-               defaultimp.maxBatchSize = 64;
-               // textures
-               defaultimp.layerList.resize(3);
-               defaultimp.layerList[0].worldSize = 10;
-               
defaultimp.layerList[0].textureNames.push_back("dirt_grayrocky_diffusespecular.dds");
-               
defaultimp.layerList[0].textureNames.push_back("dirt_grayrocky_normalheight.dds");
-               defaultimp.layerList[1].worldSize = 10;
-               
defaultimp.layerList[1].textureNames.push_back("grass_green-01_diffusespecular.dds");
-               
defaultimp.layerList[1].textureNames.push_back("grass_green-01_normalheight.dds");
-               defaultimp.layerList[2].worldSize = 20;
-               
defaultimp.layerList[2].textureNames.push_back("growth_weirdfungus-03_diffusespecular.dds");
-               
defaultimp.layerList[2].textureNames.push_back("growth_weirdfungus-03_normalheight.dds");
+                       defaultimp.inputScale   = pageMaxHeight;
+                       defaultimp.minBatchSize = 32;
+                       defaultimp.maxBatchSize = 64;
+                       // textures
+                       defaultimp.layerList.resize(3);
+                       defaultimp.layerList[0].worldSize = 10;
+                       
defaultimp.layerList[0].textureNames.push_back("dirt_grayrocky_diffusespecular.dds");
+                       
defaultimp.layerList[0].textureNames.push_back("dirt_grayrocky_normalheight.dds");
+                       defaultimp.layerList[1].worldSize = 10;
+                       
defaultimp.layerList[1].textureNames.push_back("grass_green-01_diffusespecular.dds");
+                       
defaultimp.layerList[1].textureNames.push_back("grass_green-01_normalheight.dds");
+                       defaultimp.layerList[2].worldSize = 20;
+                       
defaultimp.layerList[2].textureNames.push_back("growth_weirdfungus-03_diffusespecular.dds");
+                       
defaultimp.layerList[2].textureNames.push_back("growth_weirdfungus-03_normalheight.dds");
 
-               bool paging = false;
-               if(!paging)
-               {
-                       for (long x = TERRAIN_PAGE_MIN_X; x <= 
TERRAIN_PAGE_MAX_X; ++x)
+                       bool paging = false;
+                       if(!paging)
                        {
-                               for (long y = TERRAIN_PAGE_MIN_Y; y <= 
TERRAIN_PAGE_MAX_Y; ++y)
+                               for (long x = TERRAIN_PAGE_MIN_X; x <= 
TERRAIN_PAGE_MAX_X; ++x)
                                {
-                                       String filename = 
mTerrainGroup->generateFilename(x, y);
-                                       if 
(ResourceGroupManager::getSingleton().resourceExists(mTerrainGroup->getResourceGroup(),
 filename))
+                                       for (long y = TERRAIN_PAGE_MIN_Y; y <= 
TERRAIN_PAGE_MAX_Y; ++y)
                                        {
-                                               mTerrainGroup->defineTerrain(x, 
y);
-                                       }
-                                       else
-                                       {
-                                               String heightmapFilename = 
cfg.getSetting("Heightmap.image");
-                                               Image img;
-                                               
if(heightmapFilename.find(".raw") != String::npos)
+                                               String filename = 
mTerrainGroup->generateFilename(x, y);
+                                               if 
(ResourceGroupManager::getSingleton().resourceExists(mTerrainGroup->getResourceGroup(),
 filename))
                                                {
-                                                       int rawSize = 
StringConverter::parseInt(cfg.getSetting("Heightmap.raw.size"));
-                                                       int bpp = 
StringConverter::parseInt(cfg.getSetting("Heightmap.raw.bpp"));
-                                                       
-                                                       // load raw data
-                                                       DataStreamPtr stream = 
ResourceGroupManager::getSingleton().openResource(heightmapFilename);
-                                                       
LogManager::getSingleton().logMessage(" loading RAW image: " + 
StringConverter::toString(stream->size()) + " / " + 
StringConverter::toString(rawSize*rawSize*bpp));
-                                                       PixelFormat pformat = 
PF_L8;
-                                                       if(bpp == 2)
-                                                               pformat = 
PF_L16;
-                                                       img.loadRawData(stream, 
rawSize, rawSize, 1, pformat);
-                                               } else
+                                                       
mTerrainGroup->defineTerrain(x, y);
+                                               }
+                                               else
                                                {
-                                                       
img.load(heightmapFilename, ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
+                                                       String 
heightmapFilename = cfg.getSetting("Heightmap.image");
+                                                       Image img;
+                                                       
if(heightmapFilename.find(".raw") != String::npos)
+                                                       {
+                                                               int rawSize = 
StringConverter::parseInt(cfg.getSetting("Heightmap.raw.size"));
+                                                               int bpp = 
StringConverter::parseInt(cfg.getSetting("Heightmap.raw.bpp"));
+                                                               
+                                                               // load raw data
+                                                               DataStreamPtr 
stream = ResourceGroupManager::getSingleton().openResource(heightmapFilename);
+                                                               
LogManager::getSingleton().logMessage(" loading RAW image: " + 
StringConverter::toString(stream->size()) + " / " + 
StringConverter::toString(rawSize*rawSize*bpp));
+                                                               PixelFormat 
pformat = PF_L8;
+                                                               if(bpp == 2)
+                                                                       pformat 
= PF_L16;
+                                                               
img.loadRawData(stream, rawSize, rawSize, 1, pformat);
+                                                       } else
+                                                       {
+                                                               
img.load(heightmapFilename, ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
+                                                       }
+                                                       if (x % 2 != 0)
+                                                               
img.flipAroundY();
+                                                       if (y % 2 != 0)
+                                                               
img.flipAroundX();
+
+                                                       
mTerrainGroup->defineTerrain(x, y, &img);
+                                                       mTerrainsImported = 
true;
                                                }
-                                               if (x % 2 != 0)
-                                                       img.flipAroundY();
-                                               if (y % 2 != 0)
-                                                       img.flipAroundX();
-
-                                               mTerrainGroup->defineTerrain(x, 
y, &img);
-                                               mTerrainsImported = true;
                                        }
                                }
+                               // sync load since we want everything in place 
when we start
+                               mTerrainGroup->loadAllTerrains(true);
+                       } else
+                       {
+                               // paging, yeah!
+                               // Paging setup
+                               mPageManager = OGRE_NEW PageManager();
+                               // Since we're not loading any pages from .page 
files, we need a way just 
+                               // to say we've loaded them without them 
actually being loaded
+                               
mPageManager->setPageProvider(&mDummyPageProvider);
+                               mPageManager->addCamera(mCamera);
+                               mTerrainPaging = OGRE_NEW 
TerrainPaging(mPageManager);
+                               PagedWorld* world = mPageManager->createWorld();
+                               mTerrainPaging->createWorldSection(world, 
mTerrainGroup, TERRAIN_WORLD_SIZE, TERRAIN_WORLD_SIZE*1.2f, 
+                                       TERRAIN_PAGE_MIN_X, TERRAIN_PAGE_MIN_Y, 
+                                       TERRAIN_PAGE_MAX_X, TERRAIN_PAGE_MAX_Y);
                        }
-                       // sync load since we want everything in place when we 
start
-                       mTerrainGroup->loadAllTerrains(true);
-               } else
-               {
-                       // paging, yeah!
-                       // Paging setup
-                       mPageManager = OGRE_NEW PageManager();
-                       // Since we're not loading any pages from .page files, 
we need a way just 
-                       // to say we've loaded them without them actually being 
loaded
-                       mPageManager->setPageProvider(&mDummyPageProvider);
-                       mPageManager->addCamera(mCamera);
-                       mTerrainPaging = OGRE_NEW TerrainPaging(mPageManager);
-                       PagedWorld* world = mPageManager->createWorld();
-                       mTerrainPaging->createWorldSection(world, 
mTerrainGroup, TERRAIN_WORLD_SIZE, TERRAIN_WORLD_SIZE*1.2f, 
-                               TERRAIN_PAGE_MIN_X, TERRAIN_PAGE_MIN_Y, 
-                               TERRAIN_PAGE_MAX_X, TERRAIN_PAGE_MAX_Y);
-               }
 
-               if (mTerrainsImported)
-               {
-                       TerrainGroup::TerrainIterator ti = 
mTerrainGroup->getTerrainIterator();
-                       while(ti.hasMoreElements())
+                       if (mTerrainsImported)
                        {
-                               Terrain* terrain = ti.getNext()->instance;
-                               TerrainLayerBlendMap* blendMap0 = 
terrain->getLayerBlendMap(1);
-                               TerrainLayerBlendMap* blendMap1 = 
terrain->getLayerBlendMap(2);
-                               Real minHeight0 = 5;
-                               Real fadeDist0 = 40;
-                               Real minHeight1 = 10;
-                               Real fadeDist1 = 15;
-                               float* pBlend1 = blendMap1->getBlendPointer();
-                               for (Ogre::uint16 y = 0; y < 
terrain->getLayerBlendMapSize(); ++y)
+                               TerrainGroup::TerrainIterator ti = 
mTerrainGroup->getTerrainIterator();
+                               while(ti.hasMoreElements())
                                {
-                                       for (Ogre::uint16 x = 0; x < 
terrain->getLayerBlendMapSize(); ++x)
+                                       Terrain* terrain = 
ti.getNext()->instance;
+                                       TerrainLayerBlendMap* blendMap0 = 
terrain->getLayerBlendMap(1);
+                                       TerrainLayerBlendMap* blendMap1 = 
terrain->getLayerBlendMap(2);
+                                       Real minHeight0 = 5;
+                                       Real fadeDist0 = 40;
+                                       Real minHeight1 = 10;
+                                       Real fadeDist1 = 15;
+                                       float* pBlend1 = 
blendMap1->getBlendPointer();
+                                       for (Ogre::uint16 y = 0; y < 
terrain->getLayerBlendMapSize(); ++y)
                                        {
-                                               Real tx, ty;
+                                               for (Ogre::uint16 x = 0; x < 
terrain->getLayerBlendMapSize(); ++x)
+                                               {
+                                                       Real tx, ty;
 
-                                               
blendMap0->convertImageToTerrainSpace(x, y, &tx, &ty);
-                                               Real height = 
terrain->getHeightAtTerrainPosition(tx, ty);
-                                               Real val = (height - 
minHeight0) / fadeDist0;
-                                               val = Math::Clamp(val, (Real)0, 
(Real)1);
-                                               //*pBlend0++ = val;
+                                                       
blendMap0->convertImageToTerrainSpace(x, y, &tx, &ty);
+                                                       Real height = 
terrain->getHeightAtTerrainPosition(tx, ty);
+                                                       Real val = (height - 
minHeight0) / fadeDist0;
+                                                       val = Math::Clamp(val, 
(Real)0, (Real)1);
+                                                       //*pBlend0++ = val;
 
-                                               val = (height - minHeight1) / 
fadeDist1;
-                                               val = Math::Clamp(val, (Real)0, 
(Real)1);
-                                               *pBlend1++ = val;
+                                                       val = (height - 
minHeight1) / fadeDist1;
+                                                       val = Math::Clamp(val, 
(Real)0, (Real)1);
+                                                       *pBlend1++ = val;
 
 
+                                               }
                                        }
-                               }
-                               blendMap0->dirty();
-                               blendMap1->dirty();
-                               //blendMap0->loadImage("blendmap1.png", 
ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
-                               blendMap0->update();
-                               blendMap1->update();
+                                       blendMap0->dirty();
+                                       blendMap1->dirty();
+                                       //blendMap0->loadImage("blendmap1.png", 
ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
+                                       blendMap0->update();
+                                       blendMap1->update();
 
-                               // set up a colour map
-                               /*
-                               if (!terrain->getGlobalColourMapEnabled())
-                               {
-                                       
terrain->setGlobalColourMapEnabled(true);
-                                       Image colourMap;
-                                       colourMap.load("testcolourmap.jpg", 
ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
-                                       
terrain->getGlobalColourMap()->loadImage(colourMap);
+                                       // set up a colour map
+                                       /*
+                                       if 
(!terrain->getGlobalColourMapEnabled())
+                                       {
+                                               
terrain->setGlobalColourMapEnabled(true);
+                                               Image colourMap;
+                                               
colourMap.load("testcolourmap.jpg", 
ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
+                                               
terrain->getGlobalColourMap()->loadImage(colourMap);
+                                       }
+                                       */
                                }
-                               */
                        }
+
+                       mTerrainGroup->freeTemporaryResources();
                }
-
-               mTerrainGroup->freeTemporaryResources();
        }
 
 
@@ -5351,7 +5352,7 @@
 #ifdef USE_HYDRAX
       w = new HydraxWater(WATER_BASIC, mCamera, mSceneMgr, mWindow, waterline, 
&mapsizex, &mapsizez, usewaves);
 #endif
-    }
+       }
     else if(!useHydrax)
                {
                        if (SETTINGS.getSetting("Water effects")=="None")


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 Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Rigsofrods-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rigsofrods-devel

Reply via email to