Revision: 1593
          http://rigsofrods.svn.sourceforge.net/rigsofrods/?rev=1593&view=rev
Author:   rorthomas
Date:     2011-01-22 19:33:12 +0000 (Sat, 22 Jan 2011)

Log Message:
-----------
improved decals a bit

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

Modified: trunk/source/main/RoRFrameListener.cpp
===================================================================
--- trunk/source/main/RoRFrameListener.cpp      2011-01-22 18:32:14 UTC (rev 
1592)
+++ trunk/source/main/RoRFrameListener.cpp      2011-01-22 19:33:12 UTC (rev 
1593)
@@ -5545,12 +5545,14 @@
        int r2oldmode=0;
 
 
-       bool decalSplineMode = false;
+       // decal vars start
+       bool decalSplineMode = false, debug_spline=false;
        Ogre::SimpleSpline *spline = 0;
        Ogre::String splinemat = "", spline_export_fn = "";
        float spline_width = 5;
        int spline_segments_x = 10, spline_segments_y = 10;
        float splinetex_u = 1, splinetex_v = 1, ground_offset=0.001f;
+       // decal vars end
 
        int lastprogress = -1;
        while (!ds->eof())
@@ -5581,13 +5583,16 @@
                        if (!strncmp(line,"end_spline_decal", 16))
                        {
                                // realize spline decal now
-                               addTerrainSplineDecal(spline, spline_width, 
Vector2(spline_segments_x,spline_segments_y), Vector2(splinetex_u, 
splinetex_v), splinemat, ground_offset, spline_export_fn);
+                               addTerrainSplineDecal(spline, spline_width, 
Vector2(spline_segments_x,spline_segments_y), Vector2(splinetex_u, 
splinetex_v), splinemat, ground_offset, spline_export_fn, debug_spline);
                                decalSplineMode = false;
                                continue;
                        }
 
-                       if (!strncmp("point", line, 5))
+                       if (!strncmp("debug", line, 5))
                        {
+                               debug_spline = true;
+                       } else if (!strncmp("point", line, 5))
+                       {
                                float x=0,y=0,z=0;
                                int res = sscanf(line, "point %f, %f, %f", &x, 
&y, &z);
                                spline->addPoint(Vector3(x, y, z));
@@ -8085,9 +8090,10 @@
        return res;
 }
 
-int RoRFrameListener::addTerrainSplineDecal(Ogre::SimpleSpline *spline, float 
width, Ogre::Vector2 numSeg, Ogre::Vector2 uvSeg, Ogre::String materialname, 
float ground_offset, Ogre::String export_fn)
+int RoRFrameListener::addTerrainSplineDecal(Ogre::SimpleSpline *spline, float 
width, Ogre::Vector2 numSeg, Ogre::Vector2 uvSeg, Ogre::String materialname, 
float ground_offset, Ogre::String export_fn, bool debug)
 {
        // debug spline line
+       if(debug)
        {
                Ogre::ManualObject *mo_spline = mSceneMgr->createManualObject();
                SceneNode *mo_spline_node = 
terrain_decals_snode->createChildSceneNode();
@@ -8284,7 +8290,7 @@
        offset+=numSeg.y+1;
 
        mo->end();
-       //mo->setBoundingBox(*aab);
+       mo->setBoundingBox(*aab);
        // some optimizations
        mo->setCastShadows(false);
        mo->setDynamic(false);
@@ -8308,7 +8314,7 @@
        mo_node->attachObject(ent);
 
        mo_node->setVisible(true);
-       mo_node->showBoundingBox(true);
+       //mo_node->showBoundingBox(true);
        mo_node->setPosition(Vector3::ZERO); //(position.x, 0, position.z));
 
 

Modified: trunk/source/main/RoRFrameListener.h
===================================================================
--- trunk/source/main/RoRFrameListener.h        2011-01-22 18:32:14 UTC (rev 
1592)
+++ trunk/source/main/RoRFrameListener.h        2011-01-22 19:33:12 UTC (rev 
1593)
@@ -382,7 +382,7 @@
 
        // TERRAIN DECALS START
        int addTerrainDecal(Ogre::Vector3 position, Ogre::Vector2 size, 
Ogre::Vector2 numSeg, Ogre::Real rotation, Ogre::String materialname, 
Ogre::String normalname);
-       int addTerrainSplineDecal(Ogre::SimpleSpline *spline, float width, 
Ogre::Vector2 numSeg, Ogre::Vector2 uvSeg, Ogre::String materialname, float 
ground_offset, Ogre::String export_fn);
+       int addTerrainSplineDecal(Ogre::SimpleSpline *spline, float width, 
Ogre::Vector2 numSeg, Ogre::Vector2 uvSeg, Ogre::String materialname, float 
ground_offset, Ogre::String export_fn, bool debug);
        int finishTerrainDecal();
        StaticGeometry *terrain_decals_sg;
        SceneNode *terrain_decals_snode;


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

------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires 
February 28th, so secure your free ArcSight Logger TODAY! 
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Rigsofrods-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rigsofrods-devel

Reply via email to