diff options
Diffstat (limited to 'source/gameengine/Converter/KX_BlenderSceneConverter.cpp')
-rw-r--r-- | source/gameengine/Converter/KX_BlenderSceneConverter.cpp | 155 |
1 files changed, 63 insertions, 92 deletions
diff --git a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp index 15100cc3a00..4f5804da9b6 100644 --- a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp +++ b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp @@ -34,7 +34,6 @@ #endif #ifdef WIN32 - #pragma warning (disable:4786) // suppress stl-MSVC debug info warning #endif @@ -171,120 +170,92 @@ void KX_BlenderSceneConverter::ConvertScene(const STR_String& scenename, class RAS_IRenderTools* rendertools, class RAS_ICanvas* canvas) { - //find out which physics engine - Scene *blenderscene = GetSceneForName2(m_maggie, scenename); +//find out which physics engine + Scene *blenderscene = GetSceneForName2(m_maggie, scenename); - e_PhysicsEngine physics_engine = UseSumo; + e_PhysicsEngine physics_engine = UseSumo; - if (blenderscene) + /* FIXME: Force physics engine = sumo. + This isn't really a problem - no other physics engines are available. + if (blenderscene) { - int i=0; + int i=0; - if (blenderscene->world) + if (blenderscene->world) { - - switch (blenderscene->world->physicsEngine) + switch (blenderscene->world->physicsEngine) { - - case 1: - { - physics_engine = UseNone; - break; - }; - case 2: - { - physics_engine = UseSumo; - break; - } - case 3: - { - physics_engine = UseODE; - break; - } + case 4: - { - physics_engine = UseDynamo; - break; - } - default: - { - physics_engine = UseODE; - } + { + physics_engine = UseODE; + break; + } + case 3: + { + physics_engine = UseDynamo; + break; + } + case 2: + { + physics_engine = UseSumo; + break; + }; + case 0: + { + physics_engine = UseNone; + } } + } } - - switch (physics_engine) +*/ + switch (physics_engine) { - case UseSumo: - { #ifdef USE_SUMO_SOLID - - PHY_IPhysicsEnvironment* physEnv = - new SumoPhysicsEnvironment(); -#else - physics_engine = UseNone; - - PHY_IPhysicsEnvironment* physEnv = - new DummyPhysicsEnvironment(); - + case UseSumo: + destinationscene ->SetPhysicsEnvironment(new SumoPhysicsEnvironment()); + break; #endif - destinationscene ->SetPhysicsEnvironment(physEnv); - break; - } - case UseODE: - { #ifdef USE_ODE - - PHY_IPhysicsEnvironment* physEnv = - new ODEPhysicsEnvironment(); -#else - PHY_IPhysicsEnvironment* physEnv = - new DummyPhysicsEnvironment(); - + case UseODE: + destinationscene ->SetPhysicsEnvironment(new ODEPhysicsEnvironment()); + break; #endif //USE_ODE - destinationscene ->SetPhysicsEnvironment(physEnv); - break; - } case UseDynamo: - { - } + { + } case UseNone: - { - }; + { + } default: - { - physics_engine = UseNone; - - PHY_IPhysicsEnvironment* physEnv = - new DummyPhysicsEnvironment(); - destinationscene ->SetPhysicsEnvironment(physEnv); - - } + physics_engine = UseNone; + destinationscene ->SetPhysicsEnvironment(new DummyPhysicsEnvironment()); + break; } - BL_ConvertBlenderObjects(m_maggie, - scenename, - destinationscene, - m_ketsjiEngine, - physics_engine, - dictobj, - keyinputdev, - rendertools, - canvas, - this, - m_alwaysUseExpandFraming - ); - - m_map_blender_to_gameactuator.clear(); - m_map_blender_to_gamecontroller.clear(); - - m_map_blender_to_gameobject.clear(); - m_map_mesh_to_gamemesh.clear(); - m_map_gameobject_to_blender.clear(); + BL_ConvertBlenderObjects(m_maggie, + scenename, + destinationscene, + m_ketsjiEngine, + physics_engine, + dictobj, + keyinputdev, + rendertools, + canvas, + this, + m_alwaysUseExpandFraming + ); + + m_map_blender_to_gameactuator.clear(); + m_map_blender_to_gamecontroller.clear(); + + m_map_blender_to_gameobject.clear(); + m_map_mesh_to_gamemesh.clear(); + m_map_gameobject_to_blender.clear(); } |