Struct bevy_input::Input [−][src]
pub struct Input<T> { /* fields omitted */ }
Expand description
A “press-able” input of type T
.
This type can be used as a resource to keep the current state of an input, by reacting to events from the input. For a given input value:
Input::pressed
will returntrue
between a press and a release event.Input::just_pressed
will returntrue
for one frame after a press event.Input::just_released
will returntrue
for one frame after a release event.
In case multiple systems are checking for Input::just_pressed
or Input::just_released
but only one should react, for example in the case of triggering
State
change, you should consider clearing the input state, either by:
- Using
Input::clear_just_pressed
orInput::clear_just_released
instead. - Calling
Input::clear
orInput::reset
immediately after the state change.
Notes when adding this resource for a new input type
When adding this resource for a new input type, you should:
- Call the
Input::press
method for each press event. - Call the
Input::release
method for each release event. - Call the
Input::clear
method at each frame start, before processing events.
Implementations
Check if any item in inputs
has been pressed.
Check if input
has been just pressed.
Check if any item in inputs
has just been pressed.
Clear the “just pressed” state of input
. Future calls to Input::just_pressed
for the
given input will return false until a new press event occurs.
Returns true if input
is currently “just pressed”
Check if input
has been just released.
Check if any item in inputs
has just been released.
Clear the “just released” state of input
. Future calls to Input::just_released
for the
given input will return false until a new release event occurs.
Returns true if input
is currently “just released”
List all inputs that are pressed.
List all inputs that are just pressed.
List all inputs that are just released.
Trait Implementations
Auto Trait Implementations
impl<T> RefUnwindSafe for Input<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for Input<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: 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
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub 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. Read more
Creates Self
using data from the given World
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more