Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKester Maddock <Christopher.Maddock.1@uni.massey.ac.nz>2004-04-08 15:34:50 +0400
committerKester Maddock <Christopher.Maddock.1@uni.massey.ac.nz>2004-04-08 15:34:50 +0400
commit5398f1ba77d25ff27a4e8275a1453e7ddb2f2f0d (patch)
tree7407e63eceef245cc430c344a1f1a7e543a68667 /source/gameengine/Ketsji/KX_SumoPhysicsController.cpp
parentfc080d30d6134becd0792e2236e33ff98e5b7e9b (diff)
Added resolveCombinedVelocities()
Fixed drot actuator. The rotation matrix was being mutilated by passing a float[9] instead of float[12].
Diffstat (limited to 'source/gameengine/Ketsji/KX_SumoPhysicsController.cpp')
-rw-r--r--source/gameengine/Ketsji/KX_SumoPhysicsController.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/source/gameengine/Ketsji/KX_SumoPhysicsController.cpp b/source/gameengine/Ketsji/KX_SumoPhysicsController.cpp
index 57986cd7b78..33ede321f02 100644
--- a/source/gameengine/Ketsji/KX_SumoPhysicsController.cpp
+++ b/source/gameengine/Ketsji/KX_SumoPhysicsController.cpp
@@ -24,17 +24,17 @@ void KX_SumoPhysicsController::RelativeTranslate(const MT_Vector3& dloc,bool loc
}
void KX_SumoPhysicsController::RelativeRotate(const MT_Matrix3x3& drot,bool local)
{
- double oldmat[12];
+ float oldmat[12];
drot.getValue(oldmat);
- float newmat[9];
+/* float newmat[9];
float *m = &newmat[0];
double *orgm = &oldmat[0];
*m++ = *orgm++;*m++ = *orgm++;*m++ = *orgm++;orgm++;
*m++ = *orgm++;*m++ = *orgm++;*m++ = *orgm++;orgm++;
- *m++ = *orgm++;*m++ = *orgm++;*m++ = *orgm++;orgm++;
+ *m++ = *orgm++;*m++ = *orgm++;*m++ = *orgm++;orgm++; */
- SumoPhysicsController::RelativeRotate(newmat,local);
+ SumoPhysicsController::RelativeRotate(oldmat,local);
}
void KX_SumoPhysicsController::SetLinearVelocity(const MT_Vector3& lin_vel,bool local)
@@ -62,6 +62,15 @@ MT_Vector3 KX_SumoPhysicsController::GetLinearVelocity()
return GetVelocity(MT_Point3(0,0,0));
}
+
+void KX_SumoPhysicsController::resolveCombinedVelocities(
+ const MT_Vector3 & lin_vel,
+ const MT_Vector3 & ang_vel
+ )
+{
+ SumoPhysicsController::resolveCombinedVelocities(lin_vel, ang_vel);
+}
+
void KX_SumoPhysicsController::ApplyTorque(const MT_Vector3& torque,bool local)
{
SumoPhysicsController::ApplyTorque(torque[0],torque[1],torque[2],local);