11 #ifndef BT_RAYCASTVEHICLE_H
12 #define BT_RAYCASTVEHICLE_H
22 class btVehicleTuning;
87 (void) collisionWorld;
235 #endif //BT_RAYCASTVEHICLE_H
virtual ~btRaycastVehicle()
void setSteeringValue(btScalar steering, int wheel)
int getUserConstraintId() const
const btTransform & getWheelTransformWS(int wheelIndex) const
btAlignedObjectArray< btScalar > m_sideImpulse
int m_userConstraintType
backwards compatibility
virtual void * castRay(const btVector3 &from, const btVector3 &to, btVehicleRaycasterResult &result)
virtual void updateAction(btCollisionWorld *collisionWorld, btScalar step)
btActionInterface interface
btVector3 getForwardVector() const
Worldspace forward vector.
void defaultInit(const btVehicleTuning &tuning)
void setUserConstraintId(int uid)
void setPitchControl(btScalar pitch)
btScalar getCurrentSpeedKmHour() const
Velocity of vehicle (positive if velocity vector has same direction as foward vector) ...
btScalar m_currentVehicleSpeedKmHour
btAlignedObjectArray< btWheelInfo > m_wheelInfo
The btDynamicsWorld is the interface class for several dynamics implementation, basic, discrete, parallel, and continuous etc.
btVehicleRaycaster * m_vehicleRaycaster
void applyEngineForce(btScalar force, int wheel)
btScalar m_maxSuspensionForce
Basic interface to allow actions such as vehicles and characters to be updated inside a btDynamicsWor...
void debugDraw(btIDebugDraw *debugDrawer)
btActionInterface interface
btWheelInfo contains information per wheel about friction and suspension.
virtual void updateVehicle(btScalar step)
btScalar m_suspensionStiffness
const btTransform & getChassisWorldTransform() const
const btWheelInfo & getWheelInfo(int index) const
int size() const
return the number of elements in the array
btScalar rayCast(btWheelInfo &wheel)
btScalar m_suspensionDamping
const btRigidBody * getRigidBody() const
void updateWheelTransformsWS(btWheelInfo &wheel, bool interpolatedTransform=true)
The btIDebugDraw interface class allows hooking up a debug renderer to visually debug simulations...
The btRigidBody is the main class for rigid body objects.
virtual void setCoordinateSystem(int rightIndex, int upIndex, int forwardIndex)
rayCast vehicle, very special constraint that turn a rigidbody into a vehicle.
void updateWheelTransform(int wheelIndex, bool interpolatedTransform=true)
btVector3 can be used to represent 3D points and vectors.
btScalar m_suspensionCompression
btRigidBody * getRigidBody()
CollisionWorld is interface and container for the collision detection.
void updateSuspension(btScalar deltaTime)
btRaycastVehicle(const btVehicleTuning &tuning, btRigidBody *chassis, btVehicleRaycaster *raycaster)
void setUserConstraintType(int userConstraintType)
btVehicleRaycaster is provides interface for between vehicle simulation and raycasting ...
btRigidBody * m_chassisBody
btDynamicsWorld * m_dynamicsWorld
int getForwardAxis() const
int getUserConstraintType() const
backwards compatibility
btAlignedObjectArray< btScalar > m_forwardImpulse
btAlignedObjectArray< btVector3 > m_axle
void setBrake(btScalar brake, int wheelIndex)
virtual void updateFriction(btScalar timeStep)
btDefaultVehicleRaycaster(btDynamicsWorld *world)
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
btWheelInfo & addWheel(const btVector3 &connectionPointCS0, const btVector3 &wheelDirectionCS0, const btVector3 &wheelAxleCS, btScalar suspensionRestLength, btScalar wheelRadius, const btVehicleTuning &tuning, bool isFrontWheel)
btAlignedObjectArray< btVector3 > m_forwardWS
btScalar getSteeringValue(int wheel) const
btScalar m_maxSuspensionTravelCm