Open 3D Engine AzFramework API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AzPhysics::RigidBodyConfiguration Struct Reference

Configuration used to Add Rigid bodies to a Scene. More...

#include <RigidBodyConfiguration.h>

Inherits AzPhysics::SimulatedBodyConfiguration.

Inherited by Physics::RagdollNodeConfiguration.

Public Types

enum  PropertyVisibility : AZ::u16 {
  InitialVelocities = 1 << 0 , InertiaProperties = 1 << 1 , Damping = 1 << 2 , SleepOptions = 1 << 3 ,
  Interpolation = 1 << 4 , Gravity = 1 << 5 , Kinematic = 1 << 6 , ContinuousCollisionDetection = 1 << 7 ,
  MaxVelocities = 1 << 8
}
 

Public Member Functions

 AZ_RTTI (RigidBodyConfiguration, "{ACFA8900-8530-4744-AF00-AA533C868A8E}", AzPhysics::SimulatedBodyConfiguration)
 
MassComputeFlags GetMassComputeFlags () const
 
void SetMassComputeFlags (MassComputeFlags flags)
 
bool IsCcdEnabled () const
 
bool CcdReadOnly () const
 
AZStd::string_view GetCcdTooltip () const
 
AZStd::string_view GetKinematicTooltip () const
 
AZ::Crc32 GetInitialVelocitiesVisibility () const
 
AZ::Crc32 GetInertiaSettingsVisibility () const
 
AZ::Crc32 GetInertiaVisibility () const
 
AZ::Crc32 GetMassVisibility () const
 
AZ::Crc32 GetCoMVisibility () const
 
AZ::Crc32 GetDampingVisibility () const
 
AZ::Crc32 GetSleepOptionsVisibility () const
 
AZ::Crc32 GetInterpolationVisibility () const
 
AZ::Crc32 GetGravityVisibility () const
 
AZ::Crc32 GetKinematicVisibility () const
 
AZ::Crc32 GetCcdVisibility () const
 
AZ::Crc32 GetMaxVelocitiesVisibility () const
 
- Public Member Functions inherited from AzPhysics::SimulatedBodyConfiguration
 AZ_RTTI (AzPhysics::SimulatedBodyConfiguration, "{52844E3D-79C8-4F34-AF63-5C45ADE77F85}")
 

Static Public Member Functions

static void Reflect (AZ::ReflectContext *context)
 
- Static Public Member Functions inherited from AzPhysics::SimulatedBodyConfiguration
static void Reflect (AZ::ReflectContext *context)
 

Public Attributes

 AZ_CLASS_ALLOCATOR_DECL
 
AZ::Vector3 m_initialLinearVelocity = AZ::Vector3::CreateZero()
 
AZ::Vector3 m_initialAngularVelocity = AZ::Vector3::CreateZero()
 
AZ::Vector3 m_centerOfMassOffset = AZ::Vector3::CreateZero()
 
float m_mass = 1.0f
 
AZ::Matrix3x3 m_inertiaTensor = AZ::Matrix3x3::CreateIdentity()
 
float m_linearDamping = 0.05f
 
float m_angularDamping = 0.15f
 
float m_sleepMinEnergy = 0.005f
 
float m_maxAngularVelocity = 100.0f
 
bool m_startAsleep = false
 
bool m_interpolateMotion = false
 
bool m_gravityEnabled = true
 
bool m_kinematic = false
 
bool m_ccdEnabled = false
 Whether continuous collision detection is enabled.
 
float m_ccdMinAdvanceCoefficient = 0.15f
 Coefficient affecting how granularly time is subdivided in CCD.
 
bool m_ccdFrictionEnabled = false
 Whether friction is applied when resolving CCD collisions.
 
bool m_configButton = false
 Required for button positioning in edit context, otherwise unused.
 
bool m_computeCenterOfMass = true
 
bool m_computeInertiaTensor = true
 
bool m_computeMass = true
 
bool m_lockLinearX = false
 
bool m_lockLinearY = false
 
bool m_lockLinearZ = false
 
bool m_lockAngularX = false
 
bool m_lockAngularY = false
 
bool m_lockAngularZ = false
 
bool m_includeAllShapesInMassCalculation = false
 If set, non-simulated shapes will also be included in the mass properties calculation.
 
ShapeVariantData m_colliderAndShapeData
 
AZ::u16 m_propertyVisibilityFlags = (std::numeric_limits<AZ::u16>::max)()
 
- Public Attributes inherited from AzPhysics::SimulatedBodyConfiguration
 AZ_CLASS_ALLOCATOR_DECL
 
AZ::Vector3 m_position = AZ::Vector3::CreateZero()
 
AZ::Quaternion m_orientation = AZ::Quaternion::CreateIdentity()
 
bool m_startSimulationEnabled = true
 
AZ::EntityId m_entityId = AZ::EntityId(AZ::EntityId::InvalidEntityId)
 
void * m_customUserData = nullptr
 
AZStd::string m_debugName
 

Detailed Description

Configuration used to Add Rigid bodies to a Scene.

Member Enumeration Documentation

◆ PropertyVisibility

Enumerator
InitialVelocities 

Whether the initial linear and angular velocities are visible.

InertiaProperties 

Whether the whole category of inertia properties (mass, compute inertia, inertia tensor etc) is visible.

Damping 

Whether linear and angular damping are visible.

SleepOptions 

Whether the sleep threshold and start asleep options are visible.

Interpolation 

Whether the interpolation option is visible.

Gravity 

Whether the effected by gravity option is visible.

Kinematic 

Whether the option to make the body kinematic is visible.

ContinuousCollisionDetection 

Whether the option to enable continuous collision detection is visible.

MaxVelocities 

Whether upper limits on velocities are visible.

Member Data Documentation

◆ m_colliderAndShapeData

ShapeVariantData AzPhysics::RigidBodyConfiguration::m_colliderAndShapeData

Variant to support multiple having the system creating the Shape(s) or just providing the Shape(s) that have been created externally. See ShapeVariantData for more information.


The documentation for this struct was generated from the following file: