pub enum PhysicsSet {
Prepare,
StepSimulation,
Sync,
}Expand description
High-level system sets for the main phases of the physics engine. You can use these to schedule your own systems before or after physics is run without having to worry about implementation details.
Prepare: Responsible for initializing rigid bodies and colliders and updating several components.StepSimulation: Responsible for advancing the simulation by running the steps inPhysicsStepSet.Sync: Responsible for synchronizing physics components with other data, like keepingPositionandRotationin sync withTransform.
§See also
PhysicsSchedule: Responsible for advancing the simulation inPhysicsSet::StepSimulation.PhysicsStepSet: System sets for the steps of the actual physics simulation loop, like the broad phase and the substepping loop.SubstepSchedule: Responsible for running the substepping loop inPhysicsStepSet::Substeps.SubstepSet: System sets for the steps of the substepping loop, like position integration and the constraint solver.PostProcessCollisions: Responsible for running the post-process collisions group inSubstepSet::PostProcessCollisions. Empty by default.
Variants§
Prepare
Responsible for initializing rigid bodies and colliders and updating several components.
See PreparePlugin.
StepSimulation
Responsible for advancing the simulation by running the steps in PhysicsStepSet.
Systems in this set are run in the PhysicsSchedule.
Sync
Responsible for synchronizing physics components with other data, like keeping Position
and Rotation in sync with Transform.
See SyncPlugin.
Trait Implementations§
Source§impl Clone for PhysicsSet
impl Clone for PhysicsSet
Source§fn clone(&self) -> PhysicsSet
fn clone(&self) -> PhysicsSet
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PhysicsSet
impl Debug for PhysicsSet
Source§impl Hash for PhysicsSet
impl Hash for PhysicsSet
Source§impl PartialEq for PhysicsSet
impl PartialEq for PhysicsSet
Source§impl SystemSet for PhysicsSet
impl SystemSet for PhysicsSet
Source§fn as_dyn_eq(&self) -> &(dyn DynEq + 'static)
fn as_dyn_eq(&self) -> &(dyn DynEq + 'static)
Casts this value to a form where it can be compared with other type-erased values.
Source§fn system_type(&self) -> Option<TypeId>
fn system_type(&self) -> Option<TypeId>
Returns
Some if this system set is a SystemTypeSet.Source§fn is_anonymous(&self) -> bool
fn is_anonymous(&self) -> bool
Returns
true if this system set is an AnonymousSet.impl Copy for PhysicsSet
impl Eq for PhysicsSet
impl StructuralPartialEq for PhysicsSet
Auto Trait Implementations§
impl Freeze for PhysicsSet
impl RefUnwindSafe for PhysicsSet
impl Send for PhysicsSet
impl Sync for PhysicsSet
impl Unpin for PhysicsSet
impl UnwindSafe for PhysicsSet
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
Return the
T ShaderType for self. When used in AsBindGroup
derives, it is safe to assume that all images in self exist.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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
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<S> IntoSystemSet<()> for Swhere
S: SystemSet,
impl<S> IntoSystemSet<()> for Swhere
S: SystemSet,
Source§impl<S> IntoSystemSetConfigs for Swhere
S: SystemSet,
impl<S> IntoSystemSetConfigs for Swhere
S: SystemSet,
fn into_configs(self) -> NodeConfigs<Interned<dyn SystemSet>>
Source§fn in_set(self, set: impl SystemSet) -> NodeConfigs<Interned<dyn SystemSet>>
fn in_set(self, set: impl SystemSet) -> NodeConfigs<Interned<dyn SystemSet>>
Add these system sets to the provided
set.Source§fn before<M>(
self,
set: impl IntoSystemSet<M>,
) -> NodeConfigs<Interned<dyn SystemSet>>
fn before<M>( self, set: impl IntoSystemSet<M>, ) -> NodeConfigs<Interned<dyn SystemSet>>
Run before all systems in
set.Source§fn after<M>(
self,
set: impl IntoSystemSet<M>,
) -> NodeConfigs<Interned<dyn SystemSet>>
fn after<M>( self, set: impl IntoSystemSet<M>, ) -> NodeConfigs<Interned<dyn SystemSet>>
Run after all systems in
set.Source§fn ambiguous_with<M>(
self,
set: impl IntoSystemSet<M>,
) -> NodeConfigs<Interned<dyn SystemSet>>
fn ambiguous_with<M>( self, set: impl IntoSystemSet<M>, ) -> NodeConfigs<Interned<dyn SystemSet>>
Suppress warnings and errors that would result from systems in these sets having ambiguities
(conflicting access but indeterminate order) with systems in
set.Source§fn ambiguous_with_all(self) -> NodeConfigs<Interned<dyn SystemSet>>
fn ambiguous_with_all(self) -> NodeConfigs<Interned<dyn SystemSet>>
Suppress warnings and errors that would result from systems in these sets having ambiguities
(conflicting access but indeterminate order) with any other system.
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.