Added experimental implicit gyroscopic force implementation, one by Michael Ewert, and another by Cooper (from OpenDE)
Will also add Erin Catto's local implicit version from the GDC 2015 tutorial Added demo for btGeneric6DofSpring2Constraint, thanks to Gabor Puhr Add gfxBridge.autogenerateGraphicsObjects method for Bullet 2 demos in new framework (need to implement all Bullet 2 collision shape types...) Use 1,1,1 for local scaling in btStaticPlaneShape
This commit is contained in:
@@ -41,10 +41,11 @@ extern bool gDisableDeactivation;
|
||||
enum btRigidBodyFlags
|
||||
{
|
||||
BT_DISABLE_WORLD_GRAVITY = 1,
|
||||
///The BT_ENABLE_GYROPSCOPIC_FORCE can easily introduce instability
|
||||
///So generally it is best to not enable it.
|
||||
///If really needed, run at a high frequency like 1000 Hertz: ///See Demos/GyroscopicDemo for an example use
|
||||
BT_ENABLE_GYROPSCOPIC_FORCE = 2
|
||||
///BT_ENABLE_GYROPSCOPIC_FORCE flags is enabled by default in Bullet 2.83 and onwards.
|
||||
///See Demos/GyroscopicDemo and computeGyroscopicImpulseImplicit
|
||||
BT_ENABLE_GYROPSCOPIC_FORCE_EXPLICIT = 2,
|
||||
BT_ENABLE_GYROPSCOPIC_FORCE_IMPLICIT_COOPER=4,
|
||||
BT_ENABLE_GYROPSCOPIC_FORCE_IMPLICIT_EWERT=8
|
||||
};
|
||||
|
||||
|
||||
@@ -529,7 +530,13 @@ public:
|
||||
return m_rigidbodyFlags;
|
||||
}
|
||||
|
||||
btVector3 computeGyroscopicForce(btScalar maxGyroscopicForce) const;
|
||||
|
||||
|
||||
|
||||
btVector3 computeGyroscopicImpulseImplicit_Ewert(btScalar dt) const;
|
||||
btVector3 computeGyroscopicImpulseImplicit_Cooper(btScalar step) const;
|
||||
btVector3 computeGyroscopicForce(btScalar maxGyroscopicForce) const;//explicit version is best avoided, it gains energy
|
||||
btVector3 getLocalInertia() const;
|
||||
|
||||
///////////////////////////////////////////////
|
||||
|
||||
|
||||
Reference in New Issue
Block a user