42 virtual bool MustBeStatic()
const override {
return mInnerShape->MustBeStatic(); }
54 virtual void GetSupportingFace(
const SubShapeID &inSubShapeID,
Vec3Arg inDirection,
Vec3Arg inScale,
Mat44Arg inCenterOfMassTransform, SupportingFace &outVertices)
const override;
57 virtual uint64 GetSubShapeUserData(
const SubShapeID &inSubShapeID)
const override;
60 virtual void SaveSubShapeState(
ShapeList &outSubShapes)
const override;
61 virtual void RestoreSubShapeState(
const ShapeRefC *inSubShapes,
uint inNumShapes)
override;
64 virtual Stats GetStatsRecursive(VisitedShapes &ioVisitedShapes)
const override;
67 virtual bool IsValidScale(
Vec3Arg inScale)
const override {
return mInnerShape->IsValidScale(inScale); }
#define JPH_EXPORT
Definition: Core.h:236
std::uint64_t uint64
Definition: Core.h:456
unsigned int uint
Definition: Core.h:452
#define JPH_NAMESPACE_END
Definition: Core.h:378
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:372
#define JPH_OVERRIDE_NEW_DELETE
Macro to override the new and delete functions.
Definition: Memory.h:31
#define JPH_DECLARE_SERIALIZABLE_VIRTUAL(linkage, class_name)
Definition: SerializableObject.h:109
EShapeSubType
This enumerates all shape types, each shape can return its type through Shape::GetSubType.
Definition: Shape.h:74
EShapeType
Shapes are categorized in groups, each shape can return which group it belongs to through its Shape::...
Definition: Shape.h:57
@ Decorated
Used by DecoratedShape.
Base class for shapes that decorate another shape with extra functionality (e.g. scale,...
Definition: DecoratedShape.h:29
virtual uint GetSubShapeIDBitsRecursive() const override
Get the max number of sub shape ID bits that are needed to be able to address any leaf shape in this ...
Definition: DecoratedShape.h:48
const Shape * GetInnerShape() const
Access to the decorated inner shape.
Definition: DecoratedShape.h:39
RefConst< Shape > mInnerShape
Definition: DecoratedShape.h:73
virtual bool IsValidScale(Vec3Arg inScale) const override
Definition: DecoratedShape.h:67
JPH_OVERRIDE_NEW_DELETE DecoratedShape(EShapeSubType inSubType)
Constructor.
Definition: DecoratedShape.h:34
virtual Vec3 GetCenterOfMass() const override
All shapes are centered around their center of mass. This function returns the center of mass positio...
Definition: DecoratedShape.h:45
virtual Vec3 MakeScaleValid(Vec3Arg inScale) const override
Definition: DecoratedShape.h:70
DecoratedShape(EShapeSubType inSubType, const Shape *inInnerShape)
Definition: DecoratedShape.h:35
virtual bool MustBeStatic() const override
Check if this shape can only be used to create a static body or if it can also be dynamic/kinematic.
Definition: DecoratedShape.h:42
Class that constructs a DecoratedShape.
Definition: DecoratedShape.h:13
Holds a 4x4 matrix of floats, but supports also operations on the 3x3 upper left part of the matrix.
Definition: Mat44.h:13
Definition: PhysicsMaterial.h:23
Definition: Reference.h:151
Base class for all shapes (collision volume of a body). Defines a virtual interface for collision det...
Definition: Shape.h:178
A sub shape id contains a path to an element (usually a triangle or other primitive type) of a compou...
Definition: SubShapeID.h:23