aether::rigidbody::physics_state Class Referencefinal

#include <rigidbody.hh>

Public Member Functions

 physics_state ()
 
 physics_state (float inverse_mass, const Vec3 &position, const Quat &rotation, const Vec3 &linear_velocity, const Vec3 &angular_velocity, float friction, float rotation_damping, float restitution)
 
bool is_static () const
 
float get_mass () const
 
Vec3 get_force () const
 
Vec3 get_torque () const
 
Vec3 get_center_of_mass () const
 
Mat33 get_inverse_inertia () const
 
void set_shape (const collision::sphere &shape)
 
void set_force (const Vec3 &force)
 
void set_acceleration (const Vec3 &acceleration)
 
void add_force (const Vec3 &force)
 
void add_acceleration (const Vec3 &acceleration)
 
void add_torque (const Vec3 &torque)
 
void add_force_at_position (const Vec3 &force, const Vec3 &point)
 
void step (float delta_time)
 
template<typename SD >
void serde_visit (SD &sd)
 

Public Attributes

float inverse_mass
 
Vec3 position
 
Quat rotation
 
Vec3 linear_velocity
 
Vec3 angular_velocity
 
float friction
 
float rotation_damping
 
float restitution
 
float max_linear_velocity
 
bool disable_linear_velocity
 
bool disable_angular_velocity
 
bool disable_collision
 
bool disable_response_collision
 

Constructor & Destructor Documentation

aether::rigidbody::physics_state::physics_state ( )
inline
aether::rigidbody::physics_state::physics_state ( float  inverse_mass,
const Vec3 position,
const Quat rotation,
const Vec3 linear_velocity,
const Vec3 angular_velocity,
float  friction,
float  rotation_damping,
float  restitution 
)
inline

Member Function Documentation

void aether::rigidbody::physics_state::add_acceleration ( const Vec3 acceleration)
inline
void aether::rigidbody::physics_state::add_force ( const Vec3 force)
inline
void aether::rigidbody::physics_state::add_force_at_position ( const Vec3 force,
const Vec3 point 
)
inline
void aether::rigidbody::physics_state::add_torque ( const Vec3 torque)
inline
Vec3 aether::rigidbody::physics_state::get_center_of_mass ( ) const
inline
Vec3 aether::rigidbody::physics_state::get_force ( ) const
inline
Mat33 aether::rigidbody::physics_state::get_inverse_inertia ( ) const
inline
float aether::rigidbody::physics_state::get_mass ( ) const
inline
Vec3 aether::rigidbody::physics_state::get_torque ( ) const
inline
bool aether::rigidbody::physics_state::is_static ( ) const
inline
template<typename SD >
void aether::rigidbody::physics_state::serde_visit ( SD &  sd)
inline
void aether::rigidbody::physics_state::set_acceleration ( const Vec3 acceleration)
inline
void aether::rigidbody::physics_state::set_force ( const Vec3 force)
inline
void aether::rigidbody::physics_state::set_shape ( const collision::sphere shape)
inline
void aether::rigidbody::physics_state::step ( float  delta_time)

Member Data Documentation

Vec3 aether::rigidbody::physics_state::angular_velocity
bool aether::rigidbody::physics_state::disable_angular_velocity
bool aether::rigidbody::physics_state::disable_collision
bool aether::rigidbody::physics_state::disable_linear_velocity
bool aether::rigidbody::physics_state::disable_response_collision
float aether::rigidbody::physics_state::friction
float aether::rigidbody::physics_state::inverse_mass
Vec3 aether::rigidbody::physics_state::linear_velocity
float aether::rigidbody::physics_state::max_linear_velocity
Vec3 aether::rigidbody::physics_state::position
float aether::rigidbody::physics_state::restitution
Quat aether::rigidbody::physics_state::rotation
float aether::rigidbody::physics_state::rotation_damping