pub struct CollisionSystem { /* private fields */ }Implementations§
Source§impl CollisionSystem
impl CollisionSystem
pub fn new() -> Self
Sourcepub fn active_pairs_snapshot(&self) -> Vec<(ComponentId, ComponentId)>
pub fn active_pairs_snapshot(&self) -> Vec<(ComponentId, ComponentId)>
Snapshot of the currently-active overlap pairs (normalized ordering).
Note: this is updated when tick_with_rx drains worker messages.
Sourcepub fn active_pairs_with_delta_snapshot(
&self,
) -> Vec<(ComponentId, ComponentId, [f32; 3])>
pub fn active_pairs_with_delta_snapshot( &self, ) -> Vec<(ComponentId, ComponentId, [f32; 3])>
Snapshot of active overlap pairs with delta = pos(b) - pos(a) in world space.
pub fn register_collision( &mut self, world: &mut World, _visuals: &mut VisualWorld, component: ComponentId, )
Sourcepub fn update_from_transform(
&mut self,
world: &mut World,
component: ComponentId,
transform_component: ComponentId,
)
pub fn update_from_transform( &mut self, world: &mut World, component: ComponentId, transform_component: ComponentId, )
Update a collision object when its parent transform changes.
Intended to be called by TransformSystem when transform_component has component
as a direct child.
pub fn remove_collision( &mut self, _world: &mut World, _visuals: &mut VisualWorld, component: ComponentId, )
Source§impl CollisionSystem
impl CollisionSystem
pub fn tick_with_rx( &mut self, world: &mut World, _visuals: &mut VisualWorld, _input: &InputState, _dt_sec: f32, rx: &mut RxWorld, )
Trait Implementations§
Source§impl Debug for CollisionSystem
impl Debug for CollisionSystem
Source§impl Default for CollisionSystem
impl Default for CollisionSystem
Source§fn default() -> CollisionSystem
fn default() -> CollisionSystem
Returns the “default value” for a type. Read more
Source§impl Drop for CollisionSystem
impl Drop for CollisionSystem
Source§impl System for CollisionSystem
impl System for CollisionSystem
fn tick( &mut self, _world: &mut World, _visuals: &mut VisualWorld, _input: &InputState, _dt_sec: f32, )
Auto Trait Implementations§
impl !RefUnwindSafe for CollisionSystem
impl !Sync for CollisionSystem
impl !UnwindSafe for CollisionSystem
impl Freeze for CollisionSystem
impl Send for CollisionSystem
impl Unpin for CollisionSystem
impl UnsafeUnpin for CollisionSystem
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> 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.