Ignore:
Timestamp:
02/17/07 22:48:12 (18 years ago)
Author:
mattausch
Message:

worded on obj loading in Ogre

Location:
GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/include/OgreBoundingBoxConverter.h

    r2115 r2123  
    217217 
    218218                        // we are only interested in scene entities 
    219                         if (mo->getMovableType() != "Entity") 
     219                        if ((mo->getMovableType() != "Entity") && 
     220                                (mo->getMovableType() != "ManualObject")) 
    220221                                continue; 
    221222                         
     
    237238} 
    238239 
     240static void AddToObjects(EntityContainer *entites,  
     241                                                 GtpVisibilityPreprocessor::ObjectContainer &objects, 
     242                                                 const int id) 
     243{ 
     244        // TODO: can actually just put single objects into pvs with same id,  
     245        // this can be sorted out later!! 
     246#if 0 
     247        EntityContainer::const_iterator eit, eit_end = entryObjects.end(); 
     248 
     249        for (eit = entryObjects.begin(); eit != eit_end; ++ eit) 
     250        { 
     251                Entity *ent = *eit; 
     252 
     253        // warning: multiple ids possible 
     254                OgreMeshInstance *omi = new OgreMeshInstance(ent); 
     255                omi->SetId(id); 
     256                objects.push_back(omi); 
     257        } 
     258 
     259        delete entryObjects; 
     260 
     261#else 
     262 
     263        EngineIntersectable *entry = new EngineIntersectable(entites); 
     264 
     265        entry->SetId(id); 
     266        objects.push_back(entry); 
     267#endif 
     268} 
     269 
    239270#if USE_KD_PVS 
    240271//------------------------------------------------------------------------- 
     
    255286                        OgreTypeConverter::ConvertToOgre(pbox); 
    256287                 
    257                 EntityContainer entryObjects; 
     288                EntityContainer *entryObjects = new EntityContainer(); 
    258289 
    259290                // find all objects that intersect the bounding box 
    260                 FindIntersectingObjects(box, entryObjects); 
    261  
    262                 // TODO: can actually just put single objects into pvs with same id,  
    263                 // this can be sorted out later!! 
    264 #if 1 
    265                 EntityContainer::const_iterator eit, eit_end = entryObjects.end(); 
    266  
    267                 for (eit = entryObjects.begin(); eit != eit_end; ++ eit) 
    268                 { 
    269                         Entity *ent = *eit; 
    270  
    271             // warning: multiple ids possible 
    272                         OgreMeshInstance *omi = new OgreMeshInstance(ent); 
    273                         omi->SetId(id); 
    274                         objects.push_back(omi); 
    275                 } 
    276 #else 
    277                 EngineIntersectable *entry =  
    278                         new EngineIntersectable(entryObjects); 
    279  
    280                 entry->SetId(id); 
    281                 objects.push_back(entry); 
    282 #endif 
     291                FindIntersectingObjects(box, *entryObjects); 
     292 
     293                AddToObjects(entryObjects, objects, id); 
    283294        } 
    284295 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/include/OgreOcclusionCullingSceneManager.h

    r2119 r2123  
    1414#include "ViewCellsManager.h" 
    1515 
     16 
     17namespace GtpVisibilityPreprocessor { 
     18class Intersectable; 
     19} 
     20 
     21class ObjReader; 
     22 
    1623namespace Ogre { 
    1724 
     
    2431{ 
    2532public: 
    26         OcclusionCullingSceneManager(const String& name, GtpVisibility::VisibilityManager *visManager); 
     33        OcclusionCullingSceneManager(const String& name,  
     34                                                                 GtpVisibility::VisibilityManager *visManager); 
    2735        ~OcclusionCullingSceneManager(); 
    2836 
     
    7078        */ 
    7179        bool validatePassForRendering(Pass* pass); 
     80 
    7281#ifdef ITEM_BUFFER 
    7382        void RenderItemBuffer(RenderPriorityGroup* pGroup); 
    7483        void RenderSingleObjectForItemBuffer(Renderable *rend, Pass *pass); 
    7584#endif // ITEM_BUFFER 
     85 
    7686        void _renderQueueGroupObjects(RenderQueueGroup* pGroup, 
    77                 QueuedRenderableCollection::OrganisationMode om); 
    78  
    79         /** Override from SceneManager so that sub entities can be assigned an id for item buffer. 
     87                                                                  QueuedRenderableCollection::OrganisationMode om); 
     88 
     89        /** Override from SceneManager so that sub entities can be assigned  
     90                an id for item buffer. 
    8091        */ 
    8192        Entity* createEntity(const String& entityName, const String& meshName); 
     
    93104        void endFrame(); 
    94105 
    95         void renderAdditiveStencilShadowedQueueGroupObjects(RenderQueueGroup* pGroup, 
    96                 QueuedRenderableCollection::OrganisationMode om); 
    97         void renderModulativeStencilShadowedQueueGroupObjects(RenderQueueGroup* pGroup, 
    98                 QueuedRenderableCollection::OrganisationMode om); 
     106        void renderAdditiveStencilShadowedQueueGroupObjects( 
     107                                RenderQueueGroup* pGroup, 
     108                                QueuedRenderableCollection::OrganisationMode om); 
     109        void renderModulativeStencilShadowedQueueGroupObjects( 
     110                                RenderQueueGroup* pGroup, 
     111                                QueuedRenderableCollection::OrganisationMode om); 
    99112         
    100113        /** Override standard function so octree boxes are always of equal side length. 
     
    113126protected: 
    114127         
     128        void MailPvsObjects(); 
     129        void RenderPvsEntry(GtpVisibilityPreprocessor::Intersectable *obj); 
     130        void SetObjectVisible(GtpVisibilityPreprocessor::Intersectable *entry,  
     131                                                  const bool visible); 
     132        void ShowViewCellsGeometry(); 
     133 
    115134        /** Creates material for depth pass, e.g., a pass that only fills the depth buffer.  
    116135        */ 
     
    254273 
    255274        bool mShowTerrain; 
     275 
     276        ObjReader *mObjReader; 
    256277}; 
    257278 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/src/OgreBvHierarchySceneManager.cpp

    r2115 r2123  
    13541354        while (pit.HasMoreEntries()) 
    13551355        {                
    1356                 GtpVisibilityPreprocessor::ObjectPvsEntry entry = pit.Next(); 
    1357  
    1358                 if (entry.mObject) 
    1359                 { 
    1360                         OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(entry.mObject); 
     1356                GtpVisibilityPreprocessor::Intersectable *entry = pit.Next(); 
     1357 
     1358                if (entry) 
     1359                { 
     1360                        OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(entry); 
    13611361                        omi->GetEntity()->setVisible(load); 
    13621362                } 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/src/OgreKdTreeSceneManager.cpp

    r2115 r2123  
    13551355        while (pit.HasMoreEntries()) 
    13561356        {                
    1357                 GtpVisibilityPreprocessor::ObjectPvsEntry entry = pit.Next(); 
    1358  
    1359                 if (entry.mObject) 
    1360                 { 
    1361                         OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(entry.mObject); 
     1357                GtpVisibilityPreprocessor::Intersectable *entry = pit.Next(); 
     1358 
     1359                if (entry) 
     1360                { 
     1361                        OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(entry); 
    13621362                        omi->GetEntity()->setVisible(load); 
    13631363                } 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/src/OgreOcclusionCullingSceneManager.cpp

    r2122 r2123  
    7878        // TODO: set maxdepth to reasonable value 
    7979        mMaxDepth = 50; 
     80 
     81        mObjReader = new ObjReader(this); 
    8082} 
    8183//----------------------------------------------------------------------- 
     
    107109        CLEAR_CONTAINER(mObjects); 
    108110        OGRE_DELETE(mCurrentViewCell); 
     111 
     112        OGRE_DELETE(mObjReader); 
    109113} 
    110114//----------------------------------------------------------------------- 
     
    379383        selectPageSource(pageSourceName, optlist); 
    380384} 
     385 
     386 
     387void OcclusionCullingSceneManager::MailPvsObjects() 
     388{ 
     389        GtpVisibilityPreprocessor::ObjectPvsIterator pit =  
     390                        mCurrentViewCell->GetPvs().GetIterator(); 
     391 
     392        while (pit.HasMoreEntries()) 
     393        {                
     394                GtpVisibilityPreprocessor::Intersectable *obj = pit.Next(); 
     395 
     396                if (obj->Type() !=  
     397                        GtpVisibilityPreprocessor::Intersectable::ENGINE_INTERSECTABLE) 
     398                        continue; 
     399                         
     400                EngineIntersectable *oi = static_cast<EngineIntersectable *>(obj); 
     401 
     402                EntityContainer *entries = oi->GetItem(); 
     403                EntityContainer::const_iterator eit, eit_end = entries->end(); 
     404 
     405                for (eit = entries->begin(); eit != eit_end; ++ eit) 
     406                { 
     407                        (*eit)->setUserAny(Any((int)0)); 
     408                } 
     409        } 
     410} 
     411//----------------------------------------------------------------------- 
     412void OcclusionCullingSceneManager::ShowViewCellsGeometry() 
     413{/* 
     414        // show only current view cell 
     415        if (!mShowViewCells) 
     416        { 
     417                const int id = mCurrentViewCell->GetId(); 
     418 
     419                MovableMap::iterator fit = mViewCellsGeometry.find(id); 
     420 
     421                if ((fit != mViewCellsGeometry.end()) && (*fit).second) 
     422                        (*fit).second->_updateRenderQueue(getRenderQueue()); 
     423        } 
     424        else 
     425        { 
     426                MovableMap::const_iterator mit, mit_end = mViewCellsGeometry.end(); 
     427 
     428                for (mit = mViewCellsGeometry.begin(); mit != mit_end; ++ mit) 
     429                { 
     430                        if ((*mit).second) 
     431                                (*mit).second->_updateRenderQueue(getRenderQueue()); 
     432                }        
     433        }*/ 
     434} 
     435 
     436 
     437void OcclusionCullingSceneManager::RenderPvsEntry(GtpVisibilityPreprocessor::Intersectable *obj) 
     438{ 
     439        switch (obj->Type()) 
     440        {        
     441                case GtpVisibilityPreprocessor::Intersectable::OGRE_MESH_INSTANCE: 
     442                        { 
     443                                OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(obj); 
     444                                omi->GetEntity()->_updateRenderQueue(getRenderQueue()); 
     445                        } 
     446                        break; 
     447 
     448                case GtpVisibilityPreprocessor::Intersectable::ENGINE_INTERSECTABLE: 
     449                        { 
     450                                EngineIntersectable *oi = static_cast<EngineIntersectable *>(obj); 
     451 
     452                                EntityContainer *entries = oi->GetItem(); 
     453                                EntityContainer::const_iterator eit, eit_end = entries->end(); 
     454 
     455                                for (eit = entries->begin(); eit != eit_end; ++ eit) 
     456                                { 
     457                                        Entity *ent = *eit; 
     458                                        // mailing hack 
     459                                        Any newAny = ent->getUserAny(); 
     460                                        int flt = any_cast<int>(newAny); 
     461 
     462                                        if (any_cast<int>(newAny) == 0) 
     463                                        { 
     464                                                ent->setUserAny(Any((int)1)); 
     465                                                ent->_updateRenderQueue(getRenderQueue()); 
     466                                        } 
     467                                } 
     468                        } 
     469                        break; 
     470                default: 
     471                        break; 
     472        }        
     473} 
     474//----------------------------------------------------------------------- 
     475void OcclusionCullingSceneManager::SetObjectVisible(GtpVisibilityPreprocessor::Intersectable *entry,  
     476                                                                                                        const bool visible) 
     477{ 
     478        switch (entry->Type()) 
     479        { 
     480        case GtpVisibilityPreprocessor::Intersectable::OGRE_MESH_INSTANCE: 
     481                { 
     482                        OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(entry); 
     483                        omi->GetEntity()->setVisible(visible); 
     484                        //GtpVisibilityPreprocessor::Debug << "assigned id " << omi->GetId() << endl; 
     485                } 
     486                break; 
     487        case GtpVisibilityPreprocessor::Intersectable::ENGINE_INTERSECTABLE: 
     488                { 
     489                        EngineIntersectable *oi = static_cast<EngineIntersectable *>(entry); 
     490 
     491                        EntityContainer *entries = oi->GetItem(); 
     492                        EntityContainer::const_iterator eit, eit_end = entries->end(); 
     493                        for (eit = entries->begin(); eit != eit_end; ++ eit) 
     494                        { 
     495                                Entity *ent = *eit; 
     496                                ent->setVisible(visible); 
     497                        } 
     498                } 
     499                break; 
     500        default: 
     501                break; 
     502        } 
     503} 
    381504//----------------------------------------------------------------------- 
    382505void OcclusionCullingSceneManager::PrepareVisualization(Camera *cam) 
     
    404527 
    405528        // show current view cell geometry 
    406     if (mCurrentViewCell && mCurrentViewCell->GetMesh()) 
    407         {/* 
     529    if (mCurrentViewCell)// && mCurrentViewCell->GetMesh()) 
     530        { 
    408531                //const bool showSingleViewCell = true; 
    409532                if (mViewCellsGeometryLoaded) 
    410533                { 
    411                         if (!mShowViewCells) 
    412                         { 
    413                                 const int id = mCurrentViewCell->GetId(); 
    414  
    415                                 MovableMap::iterator fit = mViewCellsGeometry.find(id); 
    416  
    417                                 if ((fit != mViewCellsGeometry.end()) && (*fit).second) 
    418                                         (*fit).second->_updateRenderQueue(getRenderQueue()); 
    419                         } 
    420                         else 
    421                         { 
    422                                 MovableMap::const_iterator mit, mit_end = mViewCellsGeometry.end(); 
    423  
    424                                 for (mit = mViewCellsGeometry.begin(); mit != mit_end; ++ mit) 
    425                                 { 
    426                                         if ((*mit).second) 
    427                                                 (*mit).second->_updateRenderQueue(getRenderQueue()); 
    428                                 }        
    429                         } 
    430                 } 
    431                 */ 
     534                        ShowViewCellsGeometry(); 
     535                } 
     536                 
    432537                ////////// 
    433538                //-- set PVS of view cell visible 
    434539 
    435                 GtpVisibilityPreprocessor::ObjectPvsIterator pit = mCurrentViewCell->GetPvs().GetIterator(); 
     540                GtpVisibilityPreprocessor::ObjectPvsIterator pit =  
     541                        mCurrentViewCell->GetPvs().GetIterator(); 
     542 
     543                MailPvsObjects(); 
    436544 
    437545                while (pit.HasMoreEntries()) 
    438                 {                
    439                         GtpVisibilityPreprocessor::ObjectPvsEntry entry = pit.Next(); 
    440                         GtpVisibilityPreprocessor::Intersectable *obj = entry.mObject; 
    441  
    442                         OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(obj); 
    443                         omi->GetEntity()->_updateRenderQueue(getRenderQueue()); 
    444                 } 
    445                  
    446         } 
    447 /* 
     546                { 
     547                        RenderPvsEntry(pit.Next()); 
     548                }        
     549        } 
     550#if 0 
    448551   if (mRenderNodesForViz || mRenderNodesContentForViz) 
    449552        { 
     
    479582                        } 
    480583                } 
    481         }*/ 
     584        } 
     585#endif 
    482586} 
    483587//----------------------------------------------------------------------- 
     
    601705{ 
    602706        // $$matt temp: Remove this!! 
    603         if (1)  
     707        if (0)  
    604708        { 
    605709                getDestinationRenderSystem()->_setCullingMode(CULL_NONE); 
    606                 LogManager::getSingleton().logMessage("warning: culling mode"); 
     710                //LogManager::getSingleton().logMessage("warning: culling mode"); 
    607711        } 
    608712 
     
    13671471                GtpVisibilityPreprocessor::Intersectable *entry = *it; 
    13681472 
    1369                 OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(entry); 
    1370                 omi->GetEntity()->setVisible(visible); 
    1371                 //GtpVisibilityPreprocessor::Debug << "assigned id " << omi->GetId() << endl; 
     1473                SetObjectVisible(entry, visible); 
    13721474        } 
    13731475} 
     
    14211523        } 
    14221524                 
    1423         GtpVisibilityPreprocessor::ObjectPvsIterator pit = vc->GetPvs().GetIterator(); 
    1424  
    14251525        //////////// 
    14261526        //-- set PVS of view cell to visible 
     
    14291529        //LogManager::getSingleton().logMessage(d.str()); 
    14301530 
     1531        GtpVisibilityPreprocessor::ObjectPvsIterator pit = vc->GetPvs().GetIterator(); 
     1532 
    14311533        while (pit.HasMoreEntries()) 
    14321534        {                
    1433                 GtpVisibilityPreprocessor::ObjectPvsEntry entry = pit.Next(); 
    1434                 GtpVisibilityPreprocessor::Intersectable *obj = entry.mObject; 
     1535                GtpVisibilityPreprocessor::Intersectable *obj = pit.Next(); 
    14351536 
    14361537                // no associated geometry found 
    14371538                if (!obj) continue; 
    14381539         
    1439                 OgreMeshInstance *omi = static_cast<OgreMeshInstance *>(obj); 
    1440                 omi->GetEntity()->setVisible(load); 
     1540                SetObjectVisible(obj, load); 
    14411541        } 
    14421542} 
     
    17061806                                                                                                SceneNode *root) 
    17071807{ 
    1708         ObjReader objReader(this); 
    1709  
    17101808        Timer *timer = PlatformManager::getSingleton().createTimer(); 
    17111809        timer->reset(); 
    17121810 
    1713         if (!objReader.LoadFile(filename.c_str(), viewCellsFile, root)) 
     1811        if (!mObjReader->LoadFile(filename.c_str(), viewCellsFile, root)) 
    17141812        { 
    17151813                PlatformManager::getSingleton().destroyTimer(timer); 
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/src/Plugin_VisibilitySceneManager.vcproj

    r2122 r2123  
    2020                                Name="VCCLCompilerTool" 
    2121                                Optimization="0" 
    22                                 AdditionalIncludeDirectories="&quot;$(OGRE_PATH)\PlugIns\OctreeSceneManager\include&quot;;&quot;$(OGRE_PATH)\Samples\Common\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include\CEGUI&quot;;&quot;$(OGRE_PATH)\Samples\Common\CEGUIRenderer\include&quot;;&quot;$(OGRE_PATH)\OgreMain\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include&quot;;..\include;..\..\..\OnlineCullingCHC\include;..\..\..\Preprocessing\src" 
     22                                AdditionalIncludeDirectories="&quot;$(OGRE_PATH)\PlugIns\OctreeSceneManager\include&quot;;&quot;$(OGRE_PATH)\Samples\Common\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include\CEGUI&quot;;&quot;$(OGRE_PATH)\Samples\Common\CEGUIRenderer\include&quot;;&quot;$(OGRE_PATH)\OgreMain\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include&quot;;..\include;..\..\..\OnlineCullingCHC\include;..\..\..\Preprocessing\src;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\IVReader\include;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\ObjReader\include" 
    2323                                PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;PLUGIN_KD_TERRAIN_EXPORTS;GTP_VISIBILITY_MODIFIED_OGRE" 
    2424                                MinimalRebuild="TRUE" 
     
    3636                                Name="VCLinkerTool" 
    3737                                IgnoreImportLibrary="TRUE" 
    38                                 AdditionalDependencies="OgreMain_d.lib CEGUIBase_d.lib OgreGUIRenderer_d.lib Plugin_OctreeSceneManager.lib GtpVisibility.lib zdll.lib zziplibd.lib Preprocessor.lib devil.lib glut32.lib xerces-c_2D.lib OpenGL32.Lib glu32.lib cg.lib cgGL.lib glew32.lib" 
     38                                AdditionalDependencies="OgreMain_d.lib CEGUIBase_d.lib OgreGUIRenderer_d.lib Plugin_OctreeSceneManager.lib GtpVisibility.lib zdll.lib zziplibd.lib Preprocessor.lib devil.lib glut32.lib xerces-c_2D.lib OpenGL32.Lib glu32.lib cg.lib cgGL.lib glew32.lib IVReader.lib ObjReader.lib" 
    3939                                OutputFile="$(OutDir)/Plugin_VisibilitySceneManager.dll" 
    4040                                Version="0.99" 
    4141                                LinkIncremental="1" 
    4242                                SuppressStartupBanner="TRUE" 
    43                                 AdditionalLibraryDirectories="&quot;$(OGRE_PATH)\OgreMain\lib\$(ConfigurationName)&quot;;&quot;$(OGRE_PATH)\Dependencies\lib\$(ConfigurationName)&quot;;&quot;$(OGRE_PATH)\PlugIns\OctreeSceneManager\bin\$(ConfigurationName)&quot;;&quot;$(OGRE_PATH)\Samples\Common\CEGUIRenderer\lib&quot;;&quot;..\lib\$(ConfigurationName)&quot;;&quot;..\..\lib\$(ConfigurationName)&quot;;&quot;..\..\..\Preprocessing\lib\$(ConfigurationName)&quot;;..\..\..\Preprocessing\src\GL;..\..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;&quot;$(CG_LIB_PATH)&quot;" 
     43                                AdditionalLibraryDirectories="&quot;$(OGRE_PATH)\OgreMain\lib\$(ConfigurationName)&quot;;&quot;$(OGRE_PATH)\Dependencies\lib\$(ConfigurationName)&quot;;&quot;$(OGRE_PATH)\PlugIns\OctreeSceneManager\bin\$(ConfigurationName)&quot;;&quot;$(OGRE_PATH)\Samples\Common\CEGUIRenderer\lib&quot;;&quot;..\lib\$(ConfigurationName)&quot;;&quot;..\..\lib\$(ConfigurationName)&quot;;&quot;..\..\..\Preprocessing\lib\$(ConfigurationName)&quot;;..\..\..\Preprocessing\src\GL;..\..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;&quot;$(CG_LIB_PATH)&quot;;&quot;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\ObjReader\lib\$(ConfigurationName)&quot;;&quot;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\IVReader\lib\$(ConfigurationName)&quot;" 
    4444                                ModuleDefinitionFile="..\misc\OgreVisibilitySceneManager.def" 
    4545                                GenerateDebugInformation="TRUE" 
     
    8787                                OmitFramePointers="TRUE" 
    8888                                EnableFiberSafeOptimizations="TRUE" 
    89                                 OptimizeForProcessor="3" 
     89                                OptimizeForProcessor="0" 
    9090                                OptimizeForWindowsApplication="TRUE" 
    91                                 AdditionalIncludeDirectories="&quot;$(OGRE_PATH)\PlugIns\OctreeSceneManager\include&quot;;&quot;$(OGRE_PATH)\Samples\Common\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include\CEGUI&quot;;&quot;$(OGRE_PATH)\Samples\Common\CEGUIRenderer\include&quot;;&quot;$(OGRE_PATH)\OgreMain\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include&quot;;..\include;..\..\..\OnlineCullingCHC\include;..\..\..\Preprocessing\src;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\IVReader\include;..\..\..\Preprocessing\src\Timer;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\ObjReader\include" 
    92                                 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;PLUGIN_KD_TERRAIN_EXPORTS;GTP_VISIBILITY_MODIFIED_OGRE;GAMETOOLS_ILLUMINATION_MODULE1;USE_VERBOSE_PVS" 
     91                                AdditionalIncludeDirectories="&quot;$(OGRE_PATH)\PlugIns\OctreeSceneManager\include&quot;;&quot;$(OGRE_PATH)\Samples\Common\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include\CEGUI&quot;;&quot;$(OGRE_PATH)\Samples\Common\CEGUIRenderer\include&quot;;&quot;$(OGRE_PATH)\OgreMain\include&quot;;&quot;$(OGRE_PATH)\Dependencies\include&quot;;..\include;..\..\..\OnlineCullingCHC\include;..\..\..\Preprocessing\src;..\..\..\Preprocessing\src\Timer;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\IVReader\include;..\..\..\..\..\Lib\Vis\OnlineCullingCHC\ObjReader\include" 
     92                                PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;PLUGIN_KD_TERRAIN_EXPORTS;GTP_VISIBILITY_MODIFIED_OGRE;GAMETOOLS_ILLUMINATION_MODULE" 
    9393                                StringPooling="TRUE" 
    9494                                RuntimeLibrary="2" 
Note: See TracChangeset for help on using the changeset viewer.