Atoms Crowd  7.0.0
Atoms::RigidBody Class Reference

Classes

struct  ImpactData
 
struct  ShapeData
 

Public Types

enum  ShapeType {
  kSphere = 0 , kPlane , kCapsule , kBox ,
  kConvexMesh , kTriangleMesh , kHeightfield , kGeometryCount ,
  kInvalid = -1
}
 
enum  DynamicOnCollisionType { kSingle = 0 , kAggregate , kChildren }
 

Public Member Functions

void setKinematicTarget (const AtomsCore::Matrixf &mtx)
 
void storeTransform ()
 
void setKinematic (bool value)
 
void pose (AtomsCore::Vector3f &pos, AtomsCore::Quaternionf &rot) const
 
void getGeometry (std::vector< AtomsCore::Vector3f > &points, std::vector< AtomsCore::Vector3f > &normals, std::vector< unsigned int > &indices) const
 
void getShape (ShapeData &data) const
 
bool isStatic () const
 
bool isKinematic () const
 
bool isDynamic () const
 
void addForce (const AtomsCore::Vector3f &force)
 
void addImpulse (const AtomsCore::Vector3f &impulse)
 
void addForceAtPosition (const AtomsCore::Vector3f &force, const AtomsCore::Vector3f &position)
 
void addImpulseAtPosition (const AtomsCore::Vector3f &impulse, const AtomsCore::Vector3f &position)
 
void addTorque (const AtomsCore::Vector3f &force)
 
void addTorqueImpulse (const AtomsCore::Vector3f &impulse)
 
void applyForces (float scale)
 
void clearForces ()
 
void clearFeedbacks ()
 
AtomsCore::Matrixf centerOfMass ()
 
float friction ()
 
float bounce ()
 
void release ()
 
bool updateMeshPoints (const std::vector< AtomsCore::Vector3f > &newPoints)
 

Public Attributes

std::vector< ImpactDataimpacts
 
std::vector< ImpactDatafeedback
 
physx::PxRigidActor * actor
 
short state
 
short rotationOrder
 
AtomsCore::Quaternionf targetRot
 
AtomsCore::Quaternionf currentRot
 
AtomsCore::Vector3f targetPos
 
AtomsCore::Vector3f currentPos
 
AtomsCore::Vector3f rotatePivot
 
AtomsCore::Vector3f scale
 
AtomsCore::Vector3f scalePivot
 
AtomsCore::Vector3f scalePivotTranslate
 
AtomsCore::Vector3f rotatePivotTranslate
 
AtomsCore::Matrixf initTransform
 
AtomsCore::Vector3f initPosition
 
AtomsCore::Quaternionf initRotation
 
std::atomic< bool > dynamicSwitch
 
std::atomic< int > dynamicPool
 
AtomsCore::Vector3f force
 
AtomsCore::Vector3f impulse
 
AtomsCore::Vector3f torque
 
AtomsCore::Vector3f torqueImpulse
 
AtomsCore::Vector3f velocity
 
AtomsCore::Vector3f angularVelocity
 
AtomsCore::Vector3f acceleration
 
float mass
 
size_t id
 
short dynamicOnCollisionType
 
int aggregate
 
float stuckOnCollisionImpulse
 
AtomsCore::Vector2f stuckOnCollisionBreakForce
 
float collisionForceThreshold
 
int dynamicOnCollisionPool
 
int stuckOnCollisionPool
 
int collisionPool
 
bool dynamicOnCollision
 
bool isRoot
 
bool stuckOnCollision
 
bool aggregateSelfCollision
 
bool isJoint
 
bool storeImpactData
 
bool deformable
 

Member Enumeration Documentation

◆ ShapeType

Enumerator
kGeometryCount 

internal use only!

kInvalid 

internal use only!


The documentation for this class was generated from the following files: