16 #ifndef BT_KINEMATIC_CHARACTER_CONTROLLER_H 17 #define BT_KINEMATIC_CHARACTER_CONTROLLER_H 123 preStep(collisionWorld);
124 playerStep(collisionWorld, deltaTime);
139 virtual void setWalkDirection(
const btVector3& walkDirection);
146 virtual void setVelocityForTimeInterval(
const btVector3& velocity,
149 virtual void setAngularVelocity(
const btVector3& velocity);
150 virtual const btVector3& getAngularVelocity()
const;
152 virtual void setLinearVelocity(
const btVector3& velocity);
153 virtual btVector3 getLinearVelocity()
const;
168 void setFallSpeed(
btScalar fallSpeed);
170 void setJumpSpeed(
btScalar jumpSpeed);
172 void setMaxJumpHeight(
btScalar maxJumpHeight);
173 bool canJump()
const;
179 void setGravity(
const btVector3& gravity);
184 void setMaxSlope(
btScalar slopeRadians);
187 void setMaxPenetrationDepth(
btScalar d);
188 btScalar getMaxPenetrationDepth()
const;
193 m_useGhostObjectSweepTest = useGhostObjectSweepTest;
196 bool onGround()
const;
197 void setUpInterpolate(
bool value);
200 #endif // BT_KINEMATIC_CHARACTER_CONTROLLER_H
const btVector3 & getUp()
btPairCachingGhostObject * m_ghostObject
btScalar getLinearDamping() const
void setUseGhostSweepTest(bool useGhostObjectSweepTest)
btScalar m_velocityTimeInterval
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
void applyImpulse(const btVector3 &v)
The btCollisionShape class provides an interface for collision shapes that can be shared among btColl...
btScalar m_maxSlopeRadians
btCollisionDispatcher supports algorithms that handle ConvexConvex and ConvexConcave collision pairs...
btVector3 m_normalizedDirection
btScalar m_maxSlopeCosine
void setLinearDamping(btScalar d)
The btConvexShape is an abstract shape interface, implemented by all convex shapes such as btBoxShape...
btScalar m_verticalVelocity
btScalar m_maxPenetrationDepth
btScalar getStepHeight() const
void setAngularDamping(btScalar d)
btVector3 m_touchingNormal
btScalar m_currentStepOffset
bool m_useGhostObjectSweepTest
btScalar m_angularDamping
btCollisionObject can be used to manage collision detection objects.
The btIDebugDraw interface class allows hooking up a debug renderer to visually debug simulations...
The btRigidBody is the main class for rigid body objects.
btVector3 m_currentPosition
btConvexShape * m_convexShape
virtual void updateAction(btCollisionWorld *collisionWorld, btScalar deltaTime)
btActionInterface interface
btVector3 can be used to represent 3D points and vectors.
#define ATTRIBUTE_ALIGNED16(a)
btManifoldArray m_manifoldArray
keep track of the contact manifolds
btVector3 m_walkDirection
this is the desired walk direction, set by the user
btScalar getFallSpeed() const
btVector3 m_targetPosition
btScalar m_verticalOffset
CollisionWorld is interface and container for the collision detection.
btKinematicCharacterController is an object that supports a sliding motion in a world.
#define BT_DECLARE_ALIGNED_ALLOCATOR()
btScalar getAngularDamping() const
btQuaternion m_targetOrientation
btQuaternion m_currentOrientation
The btQuaternion implements quaternion to perform linear algebra rotations in combination with btMatr...
const T & btClamped(const T &a, const T &lb, const T &ub)
btScalar getJumpSpeed() const
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...