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:
authorErwin Coumans <blender@erwincoumans.com>2005-07-17 01:47:54 +0400
committerErwin Coumans <blender@erwincoumans.com>2005-07-17 01:47:54 +0400
commit2d73b31aff247a08c0706125fe6eb7f3e8d06b11 (patch)
treeba6efd3b020ab3917085c519706bec4285f84086 /source/gameengine/Ketsji/KX_BulletPhysicsController.cpp
parent3166974a674721ed28827d5851f978a156978a4d (diff)
preparation for bullet physics
Diffstat (limited to 'source/gameengine/Ketsji/KX_BulletPhysicsController.cpp')
-rw-r--r--source/gameengine/Ketsji/KX_BulletPhysicsController.cpp138
1 files changed, 138 insertions, 0 deletions
diff --git a/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp b/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp
new file mode 100644
index 00000000000..c9168622320
--- /dev/null
+++ b/source/gameengine/Ketsji/KX_BulletPhysicsController.cpp
@@ -0,0 +1,138 @@
+#include "KX_BulletPhysicsController.h"
+
+#include "Dynamics/RigidBody.h"
+
+KX_BulletPhysicsController::KX_BulletPhysicsController (const CcdConstructionInfo& ci, bool dyna)
+: KX_IPhysicsController(dyna,(PHY_IPhysicsController*)this),
+CcdPhysicsController(ci)
+{
+
+}
+
+KX_BulletPhysicsController::~KX_BulletPhysicsController ()
+{
+
+}
+
+void KX_BulletPhysicsController::resolveCombinedVelocities(float linvelX,float linvelY,float linvelZ,float angVelX,float angVelY,float angVelZ)
+{
+ CcdPhysicsController::resolveCombinedVelocities(linvelX,linvelY,linvelZ,angVelX,angVelY,angVelZ);
+
+}
+
+
+ ///////////////////////////////////
+ // KX_IPhysicsController interface
+ ////////////////////////////////////
+
+void KX_BulletPhysicsController::applyImpulse(const MT_Point3& attach, const MT_Vector3& impulse)
+{
+}
+
+void KX_BulletPhysicsController::SetObject (SG_IObject* object)
+{
+}
+
+void KX_BulletPhysicsController::RelativeTranslate(const MT_Vector3& dloc,bool local)
+{
+ CcdPhysicsController::RelativeTranslate(dloc[0],dloc[1],dloc[2],local);
+
+}
+void KX_BulletPhysicsController::RelativeRotate(const MT_Matrix3x3& drot,bool local)
+{
+}
+void KX_BulletPhysicsController::ApplyTorque(const MT_Vector3& torque,bool local)
+{
+}
+void KX_BulletPhysicsController::ApplyForce(const MT_Vector3& force,bool local)
+{
+}
+MT_Vector3 KX_BulletPhysicsController::GetLinearVelocity()
+{
+ assert(0);
+ return MT_Vector3(0.f,0.f,0.f);
+
+}
+MT_Vector3 KX_BulletPhysicsController::GetVelocity(const MT_Point3& pos)
+{
+ assert(0);
+ return MT_Vector3(0.f,0.f,0.f);
+
+}
+void KX_BulletPhysicsController::SetAngularVelocity(const MT_Vector3& ang_vel,bool local)
+{
+ CcdPhysicsController::SetAngularVelocity(ang_vel.x(),ang_vel.y(),ang_vel.z(),local);
+
+}
+void KX_BulletPhysicsController::SetLinearVelocity(const MT_Vector3& lin_vel,bool local)
+{
+ CcdPhysicsController::SetLinearVelocity(lin_vel.x(),lin_vel.y(),lin_vel.z(),local);
+}
+void KX_BulletPhysicsController::getOrientation(MT_Quaternion& orn)
+{
+}
+void KX_BulletPhysicsController::setOrientation(const MT_Quaternion& orn)
+{
+}
+void KX_BulletPhysicsController::setPosition(const MT_Point3& pos)
+{
+
+}
+void KX_BulletPhysicsController::setScaling(const MT_Vector3& scaling)
+{
+}
+MT_Scalar KX_BulletPhysicsController::GetMass()
+{
+
+ MT_Scalar invmass = GetRigidBody()->getInvMass();
+ if (invmass)
+ return 1.f/invmass;
+ return 0.f;
+
+}
+MT_Vector3 KX_BulletPhysicsController::getReactionForce()
+{
+ assert(0);
+ return MT_Vector3(0.f,0.f,0.f);
+}
+void KX_BulletPhysicsController::setRigidBody(bool rigid)
+{
+}
+
+void KX_BulletPhysicsController::SuspendDynamics()
+{
+}
+void KX_BulletPhysicsController::RestoreDynamics()
+{
+}
+
+SG_Controller* KX_BulletPhysicsController::GetReplica(class SG_Node* destnode)
+{
+ assert(0);
+ return 0;
+}
+
+
+
+void KX_BulletPhysicsController::SetSumoTransform(bool nondynaonly)
+{
+}
+
+// todo: remove next line !
+void KX_BulletPhysicsController::SetSimulatedTime(double time)
+{
+}
+
+// call from scene graph to update
+bool KX_BulletPhysicsController::Update(double time)
+{
+ return false;
+
+ // todo: check this code
+ //if (GetMass())
+ //{
+ // return false;//true;
+// }
+// return false;
+}
+