diff options
author | Erwin Coumans <blender@erwincoumans.com> | 2008-09-29 07:09:03 +0400 |
---|---|---|
committer | Erwin Coumans <blender@erwincoumans.com> | 2008-09-29 07:09:03 +0400 |
commit | 0b622fc07f1a19c4fbc72782f6000814b66b2088 (patch) | |
tree | a0cc270ca6238e42acb5845e1f735e07d9c55be8 /source/gameengine/Physics/Bullet | |
parent | 25fc47aaf2a7898b81eb4617a1cd877832d675c2 (diff) |
added anisotropic friction support for Bullet. Both for static and dynamic objects
Diffstat (limited to 'source/gameengine/Physics/Bullet')
-rw-r--r-- | source/gameengine/Physics/Bullet/CcdPhysicsController.cpp | 5 | ||||
-rw-r--r-- | source/gameengine/Physics/Bullet/CcdPhysicsController.h | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp b/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp index 166731459e7..8ec040e89ee 100644 --- a/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp +++ b/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp @@ -500,6 +500,11 @@ void CcdPhysicsController::CreateRigidbody() body->setAngularFactor(0.f); } } + if (m_object && m_cci.m_do_anisotropic) + { + m_object->setAnisotropicFriction(m_cci.m_anisotropicFriction); + } + } static void DeleteBulletShape(btCollisionShape* shape) diff --git a/source/gameengine/Physics/Bullet/CcdPhysicsController.h b/source/gameengine/Physics/Bullet/CcdPhysicsController.h index 1366764eb63..f001d6043cb 100644 --- a/source/gameengine/Physics/Bullet/CcdPhysicsController.h +++ b/source/gameengine/Physics/Bullet/CcdPhysicsController.h @@ -186,7 +186,9 @@ struct CcdConstructionInfo m_MotionState(0), m_shapeInfo(0), m_physicsEnv(0), - m_inertiaFactor(1.f) + m_inertiaFactor(1.f), + m_do_anisotropic(false), + m_anisotropicFriction(1.f,1.f,1.f) { } @@ -259,6 +261,9 @@ struct CcdConstructionInfo CcdPhysicsEnvironment* m_physicsEnv; //needed for self-replication float m_inertiaFactor;//tweak the inertia (hooked up to Blender 'formfactor' + bool m_do_anisotropic; + btVector3 m_anisotropicFriction; + }; |