43 #include "collidableproxy.h"
56 class Generic6DofConstraint;
59 typedef Generic6DofConstraint StickyConstraint;
78 this->TransA = Other.TransA;
79 this->TransB = Other.TransB;
80 this->ProxA = Other.ProxA;
81 this->ProxB = Other.ProxB;
91 std::vector<StickyConstraint*> StickyConstraints;
92 std::vector<StickyConstraintConstructionInfo> CreationQueue;
112 StickyData* StickyContacts;*/
117 virtual void CreateRigidObject(
const Real Mass);
144 virtual void AddToWorld();
146 virtual void RemoveFromWorld();
161 virtual void SetLinearMovementFactor(
const Vector3& Factor);
164 virtual Vector3 GetLinearMovementFactor()
const;
169 virtual void SetAngularMovementFactor(
const Vector3& Factor);
172 virtual Vector3 GetAngularMovementFactor()
const;
179 virtual void SetMass(
const Real Mass);
182 virtual Real GetMass()
const;
189 virtual void SetDamping(
const Real LinDamping,
const Real AngDamping);
192 virtual Real GetLinearDamping()
const;
195 virtual Real GetAngularDamping()
const;
199 virtual void SetLinearVelocity(
const Vector3& LinVel);
202 virtual Vector3 GetLinearVelocity()
const;
205 virtual void SetAngularVelocity(
const Vector3& AngVel);
208 virtual Vector3 GetAngularVelocity()
const;
213 virtual void SetGravity(
const Vector3& Gravity);
217 virtual Vector3 GetGravity()
const;
221 virtual void ApplyForce(
const Vector3& Force);
224 virtual Vector3 GetAppliedForce()
const;
227 virtual void ApplyTorque(
const Vector3& Torque);
230 virtual Vector3 GetAppliedTorque()
const;
237 virtual void SetStickyData(const Whole& MaxNumContacts);
239 virtual void ClearStickyContacts();
242 virtual StickyData* GetStickyData() const;// */
256 virtual UInt32 GetNumSyncObjects()
const;
261 virtual void RemoveAllSyncObjects();
267 virtual void ProtoSerializeProperties(
XML::Node& SelfRoot)
const;
269 virtual void ProtoDeSerializeProperties(
const XML::Node& SelfRoot);
272 virtual String GetDerivedSerializableName()
const;
274 static String GetSerializableName();
282 virtual btRigidBody* _GetPhysicsObject()
const;
284 virtual btCollisionObject* _GetBasePhysicsObject()
const;
This is the base class for all collision shapes.
This is a basic class for storing the data related to the sticky behavior available to rigid bodies...
Simple struct for holding information on how sticky constraints should be constructed.
float Real
A Datatype used to represent a real floating point number.
A light-weight handle for manipulating nodes in DOM tree.
btRigidBody * PhysicsRigidBody
RigidBody proxy used by the internal physics.
ProxyType
Used by all World proxies to describe what their derived types are.
uint32_t UInt32
An 32-bit unsigned integer.
This is a proxy from which rigid body proxys are handled.
This is a proxy from which physics objects that can collide with each other are handled.
This is simply a place for storing all the Physics Related functions.
This is used to represent a point in space, or a vector through space.
The bulk of the engine components go in this namspace.
unsigned long Whole
Whole is an unsigned integer, it will be at least 32bits in size.
std::string String
A datatype used to a series of characters.