From 50ec450e6483aebac88fa26ccad9fb455012c2f0 Mon Sep 17 00:00:00 2001 From: Kent Mein Date: Tue, 3 Dec 2002 15:52:47 +0000 Subject: [PATCH] Had to make the patch for casting a little more complicated. m_MotionState->getWorldOrientation((float)worldquat[1], (float)worldquat[2],(float)worldquat[3],(float)worldquat[0]); Is now: #ifdef dDOUBLE m_MotionState->getWorldOrientation((float)worldquat[1], (float)worldquat[2],(float)worldquat[3],(float)worldquat[0]); #else m_MotionState->getWorldOrientation(worldquat[1], worldquat[2],worldquat[3],worldquat[0]); #endif Kent -- mein@cs.umn.edu --- .../Physics/BlOde/OdePhysicsController.cpp | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/source/gameengine/Physics/BlOde/OdePhysicsController.cpp b/source/gameengine/Physics/BlOde/OdePhysicsController.cpp index e14f0c9d2f4..0686893f38c 100644 --- a/source/gameengine/Physics/BlOde/OdePhysicsController.cpp +++ b/source/gameengine/Physics/BlOde/OdePhysicsController.cpp @@ -261,8 +261,13 @@ bool ODEPhysicsController::SynchronizeMotionStates(float time) dQuaternion worldquat; float worldpos[3]; +#ifdef dDOUBLE m_MotionState->getWorldOrientation((float)worldquat[1], (float)worldquat[2],(float)worldquat[3],(float)worldquat[0]); +#else + m_MotionState->getWorldOrientation(worldquat[1], + worldquat[2],worldquat[3],worldquat[0]); +#endif m_MotionState->getWorldPosition(worldpos[0],worldpos[1],worldpos[2]); float scaling[3]; @@ -346,8 +351,13 @@ bool ODEPhysicsController::SynchronizeMotionStates(float time) dQuaternion worldquat; float worldpos[3]; +#ifdef dDOUBLE m_MotionState->getWorldOrientation((float)worldquat[1], (float)worldquat[2],(float)worldquat[3],(float)worldquat[0]); +#else + m_MotionState->getWorldOrientation(worldquat[1], + worldquat[2],worldquat[3],worldquat[0]); +#endif m_MotionState->getWorldPosition(worldpos[0],worldpos[1],worldpos[2]); float scaling[3]; @@ -470,7 +480,14 @@ void ODEPhysicsController::SetLinearVelocity(float lin_velX,float lin_velY,float dMatrix3 worldmat; dVector3 localvel; dQuaternion worldquat; - m_MotionState->getWorldOrientation(worldquat[1],worldquat[2],worldquat[3],worldquat[0]); + +#ifdef dDOUBLE + m_MotionState->getWorldOrientation((float)worldquat[1], + (float)worldquat[2], (float)worldquat[3],(float)worldquat[0]); +#else + m_MotionState->getWorldOrientation(worldquat[1],worldquat[2], + worldquat[3],worldquat[0]); +#endif dQtoR (worldquat, worldmat); dMULTIPLY0_331 (localvel,worldmat,vel);