pub struct RigidBody {Show 21 fields
pub body_type: BodyType,
pub mass: f32,
pub restitution: f32,
pub friction: f32,
pub linear_damping: f32,
pub angular_damping: f32,
pub use_gravity: bool,
pub is_sleeping: bool,
pub ccd_enabled: bool,
pub local_inertia: Vec3,
pub lock_rotation_x: bool,
pub lock_rotation_y: bool,
pub lock_rotation_z: bool,
pub lock_translation_x: bool,
pub lock_translation_y: bool,
pub lock_translation_z: bool,
pub sleep_counter: u32,
pub center_of_mass: Vec3,
pub fracture_threshold: Option<f32>,
pub force_accumulator: Vec3,
pub torque_accumulator: Vec3,
}Fields§
§body_type: BodyType§mass: f32§restitution: f32§friction: f32§linear_damping: f32§angular_damping: f32§use_gravity: bool§is_sleeping: bool§ccd_enabled: bool§local_inertia: Vec3§lock_rotation_x: bool§lock_rotation_y: bool§lock_rotation_z: bool§lock_translation_x: bool§lock_translation_y: bool§lock_translation_z: bool§sleep_counter: u32§center_of_mass: Vec3§fracture_threshold: Option<f32>§force_accumulator: Vec3§torque_accumulator: Vec3Implementations§
Source§impl RigidBody
impl RigidBody
pub fn new( mass: f32, restitution: f32, friction: f32, use_gravity: bool, ) -> RigidBody
pub fn new_static() -> RigidBody
pub fn new_kinematic() -> RigidBody
pub fn with_fracture_threshold(self, threshold: f32) -> RigidBody
pub fn wake_up(&mut self)
pub fn can_sleep(&self, velocity: &Velocity) -> bool
pub fn update_sleep_state(&mut self, velocity: &Velocity)
pub fn is_dynamic(&self) -> bool
pub fn is_kinematic(&self) -> bool
pub fn is_static(&self) -> bool
pub fn enforce_locks(&self, vel: &mut Velocity)
pub fn inv_mass(&self) -> f32
pub fn inv_local_inertia(&self) -> Vec3
Sourcepub fn inv_world_inertia_tensor_identity(&self) -> Mat3
pub fn inv_world_inertia_tensor_identity(&self) -> Mat3
Get inverse world-space inertia tensor
Sourcepub fn world_inertia_tensor(&self, rotation: Quat) -> Mat3
pub fn world_inertia_tensor(&self, rotation: Quat) -> Mat3
Get world-space inertia tensor from local inertia and rotation
Sourcepub fn inv_world_inertia_tensor(&self, rotation: Quat) -> Mat3
pub fn inv_world_inertia_tensor(&self, rotation: Quat) -> Mat3
Get inverse world-space inertia tensor
pub fn clear_forces(&mut self)
pub fn calculate_box_inertia(&mut self, w: f32, h: f32, d: f32)
pub fn calculate_sphere_inertia(&mut self, r: f32)
pub fn calculate_capsule_inertia(&mut self, r: f32, half_h: f32)
pub fn update_inertia_from_collider(&mut self, collider: &Collider)
Trait Implementations§
Source§impl<'de> Deserialize<'de> for RigidBody
impl<'de> Deserialize<'de> for RigidBody
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<RigidBody, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<RigidBody, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for RigidBody
impl Serialize for RigidBody
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Component for RigidBody
impl Copy for RigidBody
impl StructuralPartialEq for RigidBody
Auto Trait Implementations§
impl Freeze for RigidBody
impl RefUnwindSafe for RigidBody
impl Send for RigidBody
impl Sync for RigidBody
impl Unpin for RigidBody
impl UnsafeUnpin for RigidBody
impl UnwindSafe for RigidBody
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().