|  | ReactPhysics3D
    v0.10.2
    C++ Physics engine library | 
Namespace reactphysics3d. More...
| Classes | |
| class | AABB | 
| This class represents a bounding volume of type "Axis Aligned
Bounding Box".  More... | |
| class | AABBOverlapCallback | 
| This class represents a callback when two AABB overlap.  More... | |
| class | Array | 
| This class represents a simple dynamic array with custom memory allocator.  More... | |
| class | BallAndSocketJoint | 
| This class represents a ball-and-socket joint that allows arbitrary rotation between two bodies.  More... | |
| class | BallAndSocketJointComponents | 
| This class represent the component of the ECS with data for the BallAndSocketJoint.  More... | |
| struct | BallAndSocketJointInfo | 
| This structure is used to gather the information needed to create a ball-and-socket joint.  More... | |
| class | Body | 
| This class represents a body.  More... | |
| class | BodyComponents | 
| This class represent the component of the ECS that contains data about a body.  More... | |
| class | BoxShape | 
| This class represents a 3D box shape.  More... | |
| class | BroadPhaseRaycastCallback | 
| Callback called when the AABB of a leaf node is hit by a ray the broad-phase Dynamic AABB Tree.  More... | |
| class | BroadPhaseSystem | 
| This class represents the broad-phase collision detection.  More... | |
| class | CapsuleShape | 
| This class represents a capsule collision shape that is defined around the Y axis.  More... | |
| class | CapsuleVsCapsuleAlgorithm | 
| This class is used to compute the narrow-phase collision detection between two capsules collision shapes.  More... | |
| class | CapsuleVsConvexPolyhedronAlgorithm | 
| This class is used to compute the narrow-phase collision detection between a capsule and a convex polyhedron.  More... | |
| class | Collider | 
| A collider has a collision shape (box, sphere, capsule, ...) and is attached to a RigidBody.  More... | |
| class | ColliderComponents | 
| This class represent the component of the ECS that contains data about the the colliders of the different bodies.  More... | |
| class | CollisionCallback | 
| This abstract class can be used to register a callback for collision test queries.  More... | |
| class | CollisionDetectionSystem | 
| This class computes the collision detection algorithms.  More... | |
| class | CollisionDispatch | 
| This is the collision dispatch configuration use in ReactPhysics3D.  More... | |
| class | CollisionShape | 
| This abstract class represents the collision shape associated with a body that is used during the narrow-phase collision detection.  More... | |
| class | Components | 
| This class represent the abstract class to store components of the ECS.  More... | |
| class | ConcaveMeshRaycastCallback | 
| Class ConcaveMeshRaycastCallback.  More... | |
| class | ConcaveMeshShape | 
| This class represents a static concave mesh shape.  More... | |
| class | ConcaveShape | 
| This abstract class represents a concave collision shape associated with a body that is used during the narrow-phase collision detection.  More... | |
| struct | ConstraintSolverData | 
| This structure contains data from the constraint solver that are used to solve each joint constraint.  More... | |
| class | ConstraintSolverSystem | 
| This class represents the constraint solver that is used to solve constraints between the rigid bodies.  More... | |
| class | ContactManifold | 
| This class represents a set of contact points between two bodies that all have a similar contact normal direction.  More... | |
| struct | ContactManifoldInfo | 
| This structure contains informations about a collision contact manifold computed during the narrow-phase collision detection.  More... | |
| struct | ContactPair | 
| This structure represents a pair of shapes that are in contact during narrow-phase.  More... | |
| class | ContactPoint | 
| This class represents a collision contact point between two bodies in the physics engine.  More... | |
| struct | ContactPointInfo | 
| This structure contains informations about a collision contact computed during the narrow-phase collision detection.  More... | |
| class | ContactSolverSystem | 
| This class represents the contact solver system that is used to solve rigid bodies contacts.  More... | |
| class | ConvexMesh | 
| This class describes a convex mesh made of faces and vertices.  More... | |
| class | ConvexMeshShape | 
| This class represents a convex mesh shape.  More... | |
| class | ConvexPolyhedronShape | 
| This abstract class represents a convex polyhedron collision shape associated with a body that is used during the narrow-phase collision detection.  More... | |
| class | ConvexPolyhedronVsConvexPolyhedronAlgorithm | 
| This class is used to compute the narrow-phase collision detection between two convex polyhedra.  More... | |
| class | ConvexShape | 
| This abstract class represents a convex collision shape associated with a body that is used during the narrow-phase collision detection.  More... | |
| class | ConvexTriangleAABBOverlapCallback | 
| This class represents a callback when an overlap occurs.  More... | |
| class | DebugRenderer | 
| This class is used to display physics debug information directly into the user application view.  More... | |
| class | DefaultAllocator | 
| This class represents a default memory allocator that uses standard C++ functions to allocated 16-bytes aligned memory.  More... | |
| class | DefaultLogger | 
| This class is the default logger class used to log information, warnings or errors during the execution of the library code for easier debugging.  More... | |
| class | Deque | 
| This class represents a Deque.  More... | |
| class | DynamicAABBTree | 
| This class implements a dynamic AABB tree that is used for broad-phase collision detection.  More... | |
| class | DynamicAABBTreeOverlapCallback | 
| Overlapping callback method that has to be used as parameter of the reportAllShapesOverlappingWithNode() method.  More... | |
| class | DynamicAABBTreeRaycastCallback | 
| Raycast callback in the Dynamic AABB Tree called when the AABB of a leaf node is hit by the ray.  More... | |
| class | DynamicsSystem | 
| This class is responsible to compute and update the dynamics of the bodies that are simulated using physics.  More... | |
| struct | Entity | 
| This class is used to identify an entity in the Entity-Component-System.  More... | |
| class | EntityManager | 
| This class is responsible to manage the entities of the ECS.  More... | |
| class | EventListener | 
| This class can be used to receive notifications about events that occur during the simulation.  More... | |
| class | FixedJoint | 
| This class represents a fixed joint that is used to forbid any translation or rotation between two bodies.  More... | |
| class | FixedJointComponents | 
| This class represent the component of the ECS with data for the FixedJoint.  More... | |
| struct | FixedJointInfo | 
| This structure is used to gather the information needed to create a fixed joint.  More... | |
| class | GJKAlgorithm | 
| This class implements a narrow-phase collision detection algorithm.  More... | |
| class | HalfEdgeStructure | 
| This class describes a polyhedron mesh made of faces and vertices.  More... | |
| class | HeapAllocator | 
| This class is used to efficiently allocate memory on the heap.  More... | |
| class | HeightField | 
| This class represents a static height field that can be used to represent a terrain.  More... | |
| class | HeightFieldShape | 
| This class represents a static height field that can be used to represent a terrain.  More... | |
| class | HingeJoint | 
| This class represents a hinge joint that allows arbitrary rotation between two bodies around a single axis.  More... | |
| class | HingeJointComponents | 
| This class represent the component of the ECS with data for the HingeJoint.  More... | |
| struct | HingeJointInfo | 
| This structure is used to gather the information needed to create a hinge joint.  More... | |
| class | Island | 
| An island represent an isolated group of awake bodies that are connected with each other by some contraints (contacts or joints).  More... | |
| struct | Islands | 
| This class contains all the islands of bodies during a frame.  More... | |
| class | Joint | 
| This abstract class represents a joint between two bodies.  More... | |
| class | JointComponents | 
| This class represent the component of the ECS that contains generic information about all the joints.  More... | |
| struct | JointInfo | 
| This structure is used to gather the information needed to create a joint.  More... | |
| struct | LastFrameCollisionInfo | 
| This structure contains collision info about the last frame.  More... | |
| class | LinkedList | 
| This class represents a simple generic linked list.  More... | |
| class | Logger | 
| This abstract class is the base class used to log information, warnings or errors during the execution of the library code for easier debugging.  More... | |
| class | Map | 
| This class represents a simple generic associative map.  More... | |
| class | Material | 
| This class contains the material properties of a collider that will be use for the dynamics simulation like the friction coefficient or the bounciness of the rigid body.  More... | |
| class | Matrix2x2 | 
| This class represents a 2x2 matrix.  More... | |
| class | Matrix3x3 | 
| This class represents a 3x3 matrix.  More... | |
| class | MemoryAllocator | 
| Abstract class with the basic interface of all the derived memory allocators.  More... | |
| class | MemoryManager | 
| The memory manager is used to store the different memory allocators that are used by the library.  More... | |
| struct | Message | 
| This structure represent a message that can be returned to the user.  More... | |
| class | NarrowPhaseAlgorithm | 
| This abstract class is the base class for a narrow-phase collision detection algorithm.  More... | |
| class | NarrowPhaseCallback | 
| This abstract class is the base class for a narrow-phase collision callback class.  More... | |
| struct | NarrowPhaseInfoBatch | 
| This structure collects all the potential collisions from the middle-phase algorithm that have to be tested during narrow-phase collision detection.  More... | |
| class | NarrowPhaseInput | 
| This structure contains everything that is needed to perform the narrow-phase collision detection.  More... | |
| class | OverlapCallback | 
| This class can be used to register a callback for collision overlap queries between bodies.  More... | |
| class | OverlappingPairs | 
| This class contains pairs of two colliders that are overlapping during the broad-phase collision detection.  More... | |
| class | Pair | 
| This class represents a simple generic pair.  More... | |
| class | PhysicsCommon | 
| This class is a singleton that needs to be instanciated once at the beginning.  More... | |
| class | PhysicsWorld | 
| This class represents a physics world.  More... | |
| class | PolygonVertexArray | 
| This class is used to describe the vertices and faces of a mesh.  More... | |
| class | PoolAllocator | 
| This class is used to efficiently allocate memory on the heap.  More... | |
| class | QHHalfEdgeStructure | 
| This class describes a polyhedron mesh made of faces and vertices.  More... | |
| struct | Quaternion | 
| This class represents a quaternion.  More... | |
| class | QuickHull | 
| This class implements the Quickhull algorithm to compute a convex mesh from a set of 3D points.  More... | |
| struct | Ray | 
| This structure represents a 3D ray represented by two points.  More... | |
| class | RaycastCallback | 
| This class can be used to register a callback for ray casting queries.  More... | |
| struct | RaycastInfo | 
| This structure contains the information about a raycast hit.  More... | |
| struct | RaycastTest | 
| Structure RaycastTest.  More... | |
| class | RigidBody | 
| This class represents a rigid body of the physics engine.  More... | |
| class | RigidBodyComponents | 
| This class represent the component of the ECS that contains data about a rigid body.  More... | |
| class | SATAlgorithm | 
| This class implements the Separating Axis Theorem algorithm (SAT).  More... | |
| class | Set | 
| This class represents a simple generic set.  More... | |
| class | SingleFrameAllocator | 
| This class represent a memory allocator used to efficiently allocate memory on the heap that is used during a single frame.  More... | |
| class | SliderJoint | 
| This class represents a slider joint.  More... | |
| class | SliderJointComponents | 
| This class represent the component of the ECS with data for the SliderJoint.  More... | |
| struct | SliderJointInfo | 
| This structure is used to gather the information needed to create a slider joint.  More... | |
| class | SolveBallAndSocketJointSystem | 
| This class is responsible to solve the BallAndSocketJoint constraints.  More... | |
| class | SolveFixedJointSystem | 
| This class is responsible to solve the FixedJoint constraints.  More... | |
| class | SolveHingeJointSystem | 
| This class is responsible to solve the BallAndSocketJoint constraints.  More... | |
| class | SolveSliderJointSystem | 
| This class is responsible to solve the SliderJoint constraints.  More... | |
| class | SphereShape | 
| This class represents a sphere collision shape that is centered at the origin and defined by its radius.  More... | |
| class | SphereVsCapsuleAlgorithm | 
| This class is used to compute the narrow-phase collision detection between a sphere collision shape and a capsule collision shape.  More... | |
| class | SphereVsConvexPolyhedronAlgorithm | 
| This class is used to compute the narrow-phase collision detection between a sphere and a convex polyhedron.  More... | |
| class | SphereVsSphereAlgorithm | 
| This class is used to compute the narrow-phase collision detection between two sphere collision shapes.  More... | |
| class | Stack | 
| This class represents a simple generic stack.  More... | |
| class | Transform | 
| This class represents a position and an orientation in 3D.  More... | |
| class | TransformComponents | 
| This class represent the component of the ECS that contains the transforms of the different entities.  More... | |
| struct | TreeNode | 
| This structure represents a node of the dynamic AABB tree.  More... | |
| class | TriangleCallback | 
| This class is used to encapsulate a callback method for a single triangle of a ConcaveMesh.  More... | |
| class | TriangleMesh | 
| This class represents a mesh made of triangles.  More... | |
| class | TriangleShape | 
| This class represents a triangle collision shape that is centered at the origin and defined three points.  More... | |
| class | TriangleVertexArray | 
| This class is used to describe the vertices and faces of a triangular mesh.  More... | |
| struct | Vector2 | 
| This class represents a 2D vector.  More... | |
| struct | Vector3 | 
| This class represents a 3D vector.  More... | |
| class | VertexArray | 
| This class is used to describe an array of vertices.  More... | |
| class | VoronoiSimplex | 
| This class represents a simplex which is a set of 3D points.  More... | |
| Typedefs | |
| typedef unsigned int | Bits | 
| using | uint = unsigned int | 
| using | uchar = unsigned char | 
| using | ushort = unsigned short | 
| using | luint = long unsigned int | 
| using | int8 = std::int8_t | 
| using | uint8 = std::uint8_t | 
| using | int16 = std::int16_t | 
| using | uint16 = std::uint16_t | 
| using | int32 = std::int32_t | 
| using | uint32 = std::uint32_t | 
| using | int64 = std::int64_t | 
| using | uint64 = std::uint64_t | 
| using | bodypair = Pair<Entity, Entity> | 
| using | decimal = float | 
| Enumerations | |
| enum class | NarrowPhaseAlgorithmType { NoCollisionTest , SphereVsSphere , SphereVsCapsule , CapsuleVsCapsule , SphereVsConvexPolyhedron , CapsuleVsConvexPolyhedron , ConvexPolyhedronVsConvexPolyhedron } | 
| Enumeration for the type of narrow-phase collision detection algorithm. | |
| enum class | CollisionShapeType { SPHERE , CAPSULE , CONVEX_POLYHEDRON , CONCAVE_SHAPE } | 
| Type of collision shapes. | |
| enum class | CollisionShapeName { TRIANGLE , SPHERE , CAPSULE , BOX , CONVEX_MESH , TRIANGLE_MESH , HEIGHTFIELD } | 
| Names of collision shapes. | |
| enum class | TriangleRaycastSide { FRONT , BACK , FRONT_AND_BACK } | 
| Raycast test side for the triangle.  More... | |
| enum class | BodyType { STATIC , KINEMATIC , DYNAMIC } | 
| Enumeration for the type of a body STATIC : A static body has infinite mass, zero velocity but the position can be changed manually.  More... | |
| enum class | JointsPositionCorrectionTechnique { BAUMGARTE_JOINTS , NON_LINEAR_GAUSS_SEIDEL } | 
| Position correction technique used in the constraint solver (for joints).  More... | |
| enum class | ContactsPositionCorrectionTechnique { BAUMGARTE_CONTACTS , SPLIT_IMPULSES } | 
| Position correction technique used in the contact solver (for contacts) BAUMGARTE_CONTACTS : Faster but can be innacurate and can lead to unexpected bounciness in some situations (due to error correction factor being added to the bodies momentum).  More... | |
| enum class | JointType { BALLSOCKETJOINT , SLIDERJOINT , HINGEJOINT , FIXEDJOINT } | 
| Enumeration for the type of a constraint. | |
| Functions | |
| template<class T> | |
| void | hash_combine (std::size_t &seed, const T &v) | 
| This method is used to combine two hash values. | |
| RP3D_FORCE_INLINE bool | approxEqual (decimal a, decimal b, decimal epsilon=MACHINE_EPSILON) | 
| Function to test if two real numbers are (almost) equal We test if two numbers a and b are such that (a-b) are in [-EPSILON; EPSILON]. | |
| RP3D_FORCE_INLINE int | clamp (int value, int lowerLimit, int upperLimit) | 
| Function that returns the result of the "value" clamped by two others values "lowerLimit" and "upperLimit". | |
| RP3D_FORCE_INLINE decimal | clamp (decimal value, decimal lowerLimit, decimal upperLimit) | 
| Function that returns the result of the "value" clamped by two others values "lowerLimit" and "upperLimit". | |
| RP3D_FORCE_INLINE decimal | min3 (decimal a, decimal b, decimal c) | 
| Return the minimum value among three values. | |
| RP3D_FORCE_INLINE decimal | max3 (decimal a, decimal b, decimal c) | 
| Return the maximum value among three values. | |
| RP3D_FORCE_INLINE bool | sameSign (decimal a, decimal b) | 
| Return true if two values have the same sign. | |
| RP3D_FORCE_INLINE bool | areParallelVectors (const Vector3 &vector1, const Vector3 &vector2) | 
| RP3D_FORCE_INLINE bool | areOrthogonalVectors (const Vector3 &vector1, const Vector3 &vector2) | 
| RP3D_FORCE_INLINE Vector3 | clamp (const Vector3 &vector, decimal maxLength) | 
| RP3D_FORCE_INLINE Vector3 | computeClosestPointOnSegment (const Vector3 &segPointA, const Vector3 &segPointB, const Vector3 &pointC) | 
| RP3D_FORCE_INLINE void | computeClosestPointBetweenTwoSegments (const Vector3 &seg1PointA, const Vector3 &seg1PointB, const Vector3 &seg2PointA, const Vector3 &seg2PointB, Vector3 &closestPointSeg1, Vector3 &closestPointSeg2) | 
| RP3D_FORCE_INLINE void | computeBarycentricCoordinatesInTriangle (const Vector3 &a, const Vector3 &b, const Vector3 &c, const Vector3 &p, decimal &u, decimal &v, decimal &w) | 
| RP3D_FORCE_INLINE decimal | computePlaneSegmentIntersection (const Vector3 &segA, const Vector3 &segB, const decimal planeD, const Vector3 &planeNormal) | 
| RP3D_FORCE_INLINE decimal | computePointToLineDistance (const Vector3 &linePointA, const Vector3 &linePointB, const Vector3 &point) | 
| RP3D_FORCE_INLINE Array< Vector3 > | clipSegmentWithPlanes (const Vector3 &segA, const Vector3 &segB, const Array< Vector3 > &planesPoints, const Array< Vector3 > &planesNormals, MemoryAllocator &allocator) | 
| RP3D_FORCE_INLINE void | clipPolygonWithPlane (const Array< Vector3 > &polygonVertices, const Vector3 &planePoint, const Vector3 &planeNormal, Array< Vector3 > &outClippedPolygonVertices) | 
| RP3D_FORCE_INLINE Vector3 | projectPointOntoPlane (const Vector3 &point, const Vector3 &unitPlaneNormal, const Vector3 &planePoint) | 
| RP3D_FORCE_INLINE decimal | computePointToPlaneDistance (const Vector3 &point, const Vector3 &planeNormal, const Vector3 &planePoint) | 
| RP3D_FORCE_INLINE bool | isPowerOfTwo (uint64 number) | 
| Return true if a number is a power of two. | |
| RP3D_FORCE_INLINE uint64 | nextPowerOfTwo64Bits (uint64 number) | 
| Return the next power of two larger than the number in parameter. | |
| RP3D_FORCE_INLINE uint64 | pairNumbers (uint32 number1, uint32 number2) | 
| Return an unique integer from two integer numbers (pairing function) Here we assume that the two parameter numbers are sorted such that number1 = max(number1, number2) http://szudzik.com/ElegantPairing.pdf. | |
| RP3D_FORCE_INLINE Matrix2x2 | operator+ (const Matrix2x2 &matrix1, const Matrix2x2 &matrix2) | 
| RP3D_FORCE_INLINE Matrix2x2 | operator- (const Matrix2x2 &matrix1, const Matrix2x2 &matrix2) | 
| RP3D_FORCE_INLINE Matrix2x2 | operator- (const Matrix2x2 &matrix) | 
| RP3D_FORCE_INLINE Matrix2x2 | operator* (decimal nb, const Matrix2x2 &matrix) | 
| RP3D_FORCE_INLINE Matrix2x2 | operator* (const Matrix2x2 &matrix, decimal nb) | 
| RP3D_FORCE_INLINE Matrix2x2 | operator* (const Matrix2x2 &matrix1, const Matrix2x2 &matrix2) | 
| RP3D_FORCE_INLINE Vector2 | operator* (const Matrix2x2 &matrix, const Vector2 &vector) | 
| RP3D_FORCE_INLINE Matrix3x3 | operator+ (const Matrix3x3 &matrix1, const Matrix3x3 &matrix2) | 
| RP3D_FORCE_INLINE Matrix3x3 | operator- (const Matrix3x3 &matrix1, const Matrix3x3 &matrix2) | 
| RP3D_FORCE_INLINE Matrix3x3 | operator- (const Matrix3x3 &matrix) | 
| RP3D_FORCE_INLINE Matrix3x3 | operator* (decimal nb, const Matrix3x3 &matrix) | 
| RP3D_FORCE_INLINE Matrix3x3 | operator* (const Matrix3x3 &matrix, decimal nb) | 
| RP3D_FORCE_INLINE Matrix3x3 | operator* (const Matrix3x3 &matrix1, const Matrix3x3 &matrix2) | 
| RP3D_FORCE_INLINE Vector3 | operator* (const Matrix3x3 &matrix, const Vector3 &vector) | 
| RP3D_FORCE_INLINE Vector2 | operator+ (const Vector2 &vector1, const Vector2 &vector2) | 
| RP3D_FORCE_INLINE Vector2 | operator- (const Vector2 &vector1, const Vector2 &vector2) | 
| RP3D_FORCE_INLINE Vector2 | operator- (const Vector2 &vector) | 
| RP3D_FORCE_INLINE Vector2 | operator* (const Vector2 &vector, decimal number) | 
| RP3D_FORCE_INLINE Vector2 | operator* (const Vector2 &vector1, const Vector2 &vector2) | 
| RP3D_FORCE_INLINE Vector2 | operator/ (const Vector2 &vector, decimal number) | 
| RP3D_FORCE_INLINE Vector2 | operator/ (const Vector2 &vector1, const Vector2 &vector2) | 
| RP3D_FORCE_INLINE Vector2 | operator* (decimal number, const Vector2 &vector) | 
| RP3D_FORCE_INLINE bool | approxEqual (const Vector2 &vec1, const Vector2 &vec2, decimal epsilon=MACHINE_EPSILON) | 
| RP3D_FORCE_INLINE Vector3 | operator+ (const Vector3 &vector1, const Vector3 &vector2) | 
| RP3D_FORCE_INLINE Vector3 | operator- (const Vector3 &vector1, const Vector3 &vector2) | 
| RP3D_FORCE_INLINE Vector3 | operator- (const Vector3 &vector) | 
| RP3D_FORCE_INLINE Vector3 | operator* (const Vector3 &vector, decimal number) | 
| RP3D_FORCE_INLINE Vector3 | operator/ (const Vector3 &vector, decimal number) | 
| RP3D_FORCE_INLINE Vector3 | operator/ (const Vector3 &vector1, const Vector3 &vector2) | 
| RP3D_FORCE_INLINE Vector3 | operator* (decimal number, const Vector3 &vector) | 
| RP3D_FORCE_INLINE Vector3 | operator* (const Vector3 &vector1, const Vector3 &vector2) | 
| Variables | |
| constexpr decimal | REL_ERROR = decimal(1.0e-3) | 
| constexpr decimal | REL_ERROR_SQUARE = REL_ERROR * REL_ERROR | 
| constexpr int | MAX_ITERATIONS_GJK_RAYCAST = 32 | 
| const int | NB_COLLISION_SHAPE_TYPES = 4 | 
| const decimal | DECIMAL_SMALLEST = - std::numeric_limits<decimal>::max() | 
| Smallest decimal value (negative) | |
| const decimal | DECIMAL_LARGEST = std::numeric_limits<decimal>::max() | 
| Maximum decimal value. | |
| const decimal | MACHINE_EPSILON = std::numeric_limits<decimal>::epsilon() | 
| Machine epsilon. | |
| constexpr decimal | PI_RP3D = decimal(3.141592653589) | 
| Pi constant. | |
| constexpr decimal | PI_TIMES_2 = decimal(6.28318530) | 
| 2*Pi constant | |
| constexpr decimal | DYNAMIC_TREE_FAT_AABB_INFLATE_PERCENTAGE = decimal(0.08) | 
| In the broad-phase collision detection (dynamic AABB tree), the AABBs are inflated by a constant percentage of its size to allow the collision shape to move a little bit without triggering a large modification of the tree each frame which can be costly. | |
| constexpr uint8 | NB_MAX_CONTACT_POINTS_IN_NARROWPHASE_INFO = 16 | 
| Maximum number of contact points in a narrow phase info object. | |
| constexpr uint8 | NB_MAX_CONTACT_MANIFOLDS = 4 | 
| Maximum number of contact manifolds in an overlapping pair. | |
| constexpr uint8 | NB_MAX_POTENTIAL_CONTACT_MANIFOLDS = 64 | 
| Maximum number of potential contact manifolds in an overlapping pair. | |
| constexpr uint8 | NB_MAX_CONTACT_POINTS_IN_POTENTIAL_MANIFOLD = 255 | 
| Maximum number of contact points in potential contact manifold. | |
| constexpr decimal | SAME_CONTACT_POINT_DISTANCE_THRESHOLD = decimal(0.01) | 
| Distance threshold to consider that two contact points in a manifold are the same. | |
| constexpr uint8 | GLOBAL_ALIGNMENT = 16 | 
| Global alignment (in bytes) that all allocators must enforce. | |
| const std::string | RP3D_VERSION = std::string("0.10.2") | 
| Current version of ReactPhysics3D. | |
Namespace reactphysics3d.
ReactPhysiscs3D namespace.
ReactPhysics3D namespace.
Namespace ReactPhysics3D.
| 
 | strong | 
Enumeration for the type of a body STATIC : A static body has infinite mass, zero velocity but the position can be changed manually.
A static body does not collide with other static or kinematic bodies. KINEMATIC : A kinematic body has infinite mass, the velocity can be changed manually and its position is computed by the physics engine. A kinematic body does not collide with other static or kinematic bodies. DYNAMIC : A dynamic body has non-zero mass, non-zero velocity determined by forces and its position is determined by the physics engine. A dynamic body can collide with other dynamic, static or kinematic bodies.
| 
 | strong | 
Position correction technique used in the contact solver (for contacts) BAUMGARTE_CONTACTS : Faster but can be innacurate and can lead to unexpected bounciness in some situations (due to error correction factor being added to the bodies momentum).
SPLIT_IMPULSES : A bit slower but the error correction factor is not added to the bodies momentum. This is the option used by default.
| 
 | strong | 
Position correction technique used in the constraint solver (for joints).
BAUMGARTE_JOINTS : Faster but can be innacurate in some situations. NON_LINEAR_GAUSS_SEIDEL : Slower but more precise. This is the option used by default.
| 
 | strong |