27 float mFriction = 0.2f;
30 float mGravityFactor = 1.0f;
54 void AddToPhysicsSystem(
EActivation inActivationMode = EActivation::Activate,
bool inLockBodies =
true);
57 void RemoveFromPhysicsSystem(
bool inLockBodies =
true);
60 void Activate(
bool inLockBodies =
true);
65 void PostSimulation(
float inMaxSeparationDistance,
bool inLockBodies =
true);
68 void SetLinearAndAngularVelocity(
Vec3Arg inLinearVelocity,
Vec3Arg inAngularVelocity,
bool inLockBodies =
true);
71 Vec3 GetLinearVelocity(
bool inLockBodies =
true)
const;
74 void SetLinearVelocity(
Vec3Arg inLinearVelocity,
bool inLockBodies =
true);
77 void AddLinearVelocity(
Vec3Arg inLinearVelocity,
bool inLockBodies =
true);
80 void AddImpulse(
Vec3Arg inImpulse,
bool inLockBodies =
true);
86 void GetPositionAndRotation(
RVec3 &outPosition,
Quat &outRotation,
bool inLockBodies =
true)
const;
89 void SetPositionAndRotation(
RVec3Arg inPosition,
QuatArg inRotation,
EActivation inActivationMode = EActivation::Activate,
bool inLockBodies =
true)
const;
92 RVec3 GetPosition(
bool inLockBodies =
true)
const;
95 void SetPosition(
RVec3Arg inPostion,
EActivation inActivationMode = EActivation::Activate,
bool inLockBodies =
true);
98 Quat GetRotation(
bool inLockBodies =
true)
const;
101 void SetRotation(
QuatArg inRotation,
EActivation inActivationMode = EActivation::Activate,
bool inLockBodies =
true);
104 RVec3 GetCenterOfMassPosition(
bool inLockBodies =
true)
const;
107 RMat44 GetWorldTransform(
bool inLockBodies =
true)
const;
113 void SetLayer(
ObjectLayer inLayer,
bool inLockBodies =
true);
117 bool SetShape(
const Shape *inShape,
float inMaxPenetrationDepth,
bool inLockBodies =
true);
#define JPH_EXPORT
Definition: Core.h:236
std::uint64_t uint64
Definition: Core.h:456
#define JPH_NAMESPACE_END
Definition: Core.h:378
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:372
EActivation
Enum used by AddBody to determine if the body needs to be initially active.
Definition: EActivation.h:11
@ Activate
Activate the body, making it part of the simulation.
#define JPH_OVERRIDE_NEW_DELETE
Macro to override the new and delete functions.
Definition: Memory.h:31
uint16 ObjectLayer
Definition: ObjectLayer.h:16
ID of a body. This is a way of reasoning about bodies in a multithreaded simulation while avoiding ra...
Definition: BodyID.h:13
Base class for character class.
Definition: CharacterBase.h:54
Base class for configuration of a character.
Definition: CharacterBase.h:21
Definition: Character.h:38
BodyID GetBodyID() const
Get the body associated with this character.
Definition: Character.h:83
ObjectLayer GetLayer() const
Get the layer of the character.
Definition: Character.h:110
Contains the configuration of a character.
Definition: Character.h:16
Virtual interface that allows collecting multiple collision results.
Definition: CollisionCollector.h:45
Holds a 4x4 matrix of floats, but supports also operations on the 3x3 upper left part of the matrix.
Definition: Mat44.h:13
Definition: PhysicsSystem.h:29
Base class for all shapes (collision volume of a body). Defines a virtual interface for collision det...
Definition: Shape.h:186