bevy-egui-kbgp

Crates.iobevy-egui-kbgp
lib.rsbevy-egui-kbgp
version0.20.0
sourcesrc
created_at2022-03-21 21:37:29.881006
updated_at2024-07-05 22:59:48.860514
descriptionBetter keyboard and gamepad story for egui in Bevy
homepage
repositoryhttps://github.com/idanarye/bevy-egui-kbgp
max_upload_size
id554334
size217,125
Owners (github:oxidd:owners)

documentation

https://docs.rs/bevy-egui-kbgp

README

Build Status Latest Version Rust Documentation

Bevy egui KBGP - improved keyboard and gamepad usage for egui in Bevy

egui is an immediate mode GUI framework, that can be used inside the Bevy game engine with the bevy_egui crate.

egui is very mouse-oriented, and while it does support tab-navigation, game menus should be navigatable by the arrow keys (and/or by WASD) and by gamepads.

This is where the bevy-egui-kbgp crate comes in. It allows to navigate egui widgets using the keyboard's arrow keys and using a gamepad's d-pad and left joystick (by default - all the controls can be redfined). It also allows activating these buttons from the gamepad.

Try it out in https://idanarye.github.io/bevy-egui-kbgp/demos/example

Features

  • Navigate the GUI using arrow keys and gamepads.
  • Activate buttons from gamepads (egui already supports activation from keyboard with Space/Enter)
  • User defined actions for the entire UI or for individual widgets.
  • Customize all these controls.
  • Key assignment.

Planned features

  • Support for comboboxes.
  • Figure out how to support navigating out of textboxes.

Versions

bevy bevy_egui bevy-egui-kbgp
0.14 0.28 0.20
0.13 0.27 0.19
0.13 0.26 0.18
0.13 0.25 0.17
0.12 0.23 0.16
0.11 0.22 0.15
0.11 0.21 0.14
0.10 0.20 0.12, 0.13
0.9 0.19 0.11
0.9 0.18 0.10
0.9 0.17 0.9
0.8 0.16 0.8
0.8 0.15 0.7
0.7 0.14 0.6
0.7 0.13 0.5
0.6 0.12 0.1 - 0.4

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 147

cargo fmt