Jolt Physics
A multi core friendly Game Physics Engine
|
Class that constructs a ConvexHullShape. More...
#include <ConvexHullShape.h>
Public Member Functions | |
ConvexHullShapeSettings ()=default | |
Default constructor for deserialization. More... | |
ConvexHullShapeSettings (const Vec3 *inPoints, int inNumPoints, float inMaxConvexRadius=cDefaultConvexRadius, const PhysicsMaterial *inMaterial=nullptr) | |
ConvexHullShapeSettings (const Array< Vec3 > &inPoints, float inConvexRadius=cDefaultConvexRadius, const PhysicsMaterial *inMaterial=nullptr) | |
virtual ShapeResult | Create () const override |
Create a shape according to the settings specified by this object. More... | |
Public Member Functions inherited from ConvexShapeSettings | |
ConvexShapeSettings ()=default | |
Constructor. More... | |
ConvexShapeSettings (const PhysicsMaterial *inMaterial) | |
void | SetDensity (float inDensity) |
Set the density of the object in kg / m^3. More... | |
Public Member Functions inherited from ShapeSettings | |
virtual ShapeResult | Create () const =0 |
Create a shape according to the settings specified by this object. More... | |
void | ClearCachedResult () |
Public Member Functions inherited from SerializableObject | |
virtual | ~SerializableObject ()=default |
Constructor. More... | |
Public Member Functions inherited from NonCopyable | |
NonCopyable ()=default | |
NonCopyable (const NonCopyable &)=delete | |
void | operator= (const NonCopyable &)=delete |
Public Member Functions inherited from RefTarget< ShapeSettings > | |
RefTarget ()=default | |
Constructor. More... | |
RefTarget (const RefTarget &) | |
~RefTarget () | |
assert no one is referencing us More... | |
void | SetEmbedded () const |
RefTarget & | operator= (const RefTarget &) |
Assignment operator. More... | |
uint32 | GetRefCount () const |
Get current refcount of this object. More... | |
void | AddRef () const |
Add or release a reference to this object. More... | |
void | Release () const |
Public Attributes | |
Array< Vec3 > | mPoints |
Points to create the hull from. More... | |
float | mMaxConvexRadius = 0.0f |
Convex radius as supplied by the constructor. Note that during hull creation the convex radius can be made smaller if the value is too big for the hull. More... | |
float | mMaxErrorConvexRadius = 0.05f |
Maximum distance between the shrunk hull + convex radius and the actual hull. More... | |
float | mHullTolerance = 1.0e-3f |
Points are allowed this far outside of the hull (increasing this yields a hull with less vertices). Note that the actual used value can be larger if the points of the hull are far apart. More... | |
Public Attributes inherited from ConvexShapeSettings | |
RefConst< PhysicsMaterial > | mMaterial |
Material assigned to this shape. More... | |
float | mDensity = 1000.0f |
Uniform density of the interior of the convex object (kg / m^3) More... | |
Public Attributes inherited from ShapeSettings | |
uint64 | mUserData = 0 |
User data (to be used freely by the application) More... | |
Additional Inherited Members | |
Public Types inherited from ShapeSettings | |
using | ShapeResult = Result< Ref< Shape > > |
Static Public Member Functions inherited from RefTarget< ShapeSettings > | |
static int | sInternalGetRefCountOffset () |
INTERNAL HELPER FUNCTION USED BY SERIALIZATION. More... | |
Protected Attributes inherited from ShapeSettings | |
ShapeResult | mCachedResult |
Protected Attributes inherited from RefTarget< ShapeSettings > | |
atomic< uint32 > | mRefCount |
Current reference count. More... | |
Static Protected Attributes inherited from RefTarget< ShapeSettings > | |
static constexpr uint32 | cEmbedded |
A large value that gets added to the refcount to mark the object as embedded. More... | |
Class that constructs a ConvexHullShape.
|
default |
Default constructor for deserialization.
|
inline |
Create a convex hull from inPoints and maximum convex radius inMaxConvexRadius, the radius is automatically lowered if the hull requires it. (internally this will be subtracted so the total size will not grow with the convex radius).
|
inline |
|
overridevirtual |
Create a shape according to the settings specified by this object.
Implements ShapeSettings.
float ConvexHullShapeSettings::mHullTolerance = 1.0e-3f |
Points are allowed this far outside of the hull (increasing this yields a hull with less vertices). Note that the actual used value can be larger if the points of the hull are far apart.
float ConvexHullShapeSettings::mMaxConvexRadius = 0.0f |
Convex radius as supplied by the constructor. Note that during hull creation the convex radius can be made smaller if the value is too big for the hull.
float ConvexHullShapeSettings::mMaxErrorConvexRadius = 0.05f |
Maximum distance between the shrunk hull + convex radius and the actual hull.