Refactor input
Some checks failed
Build legacy Nix package on Ubuntu / build (push) Failing after 7m43s

This commit is contained in:
Florian RICHER 2025-05-27 17:13:22 +02:00
parent 1976a8b53e
commit 8c42e7b139
Signed by: florian.richer
GPG key ID: C73D37CBED7BFC77
14 changed files with 439 additions and 159 deletions

View file

@ -1,6 +1,14 @@
use core::input::{
InputManager,
virtual_binding::{AxisDirection, VirtualBinding},
};
use vulkano::device::{DeviceExtensions, DeviceFeatures};
use vulkano_util::context::{VulkanoConfig, VulkanoContext};
use winit::event_loop::{ControlFlow, EventLoop};
use winit::{
event_loop::{ControlFlow, EventLoop},
keyboard::{KeyCode, PhysicalKey},
};
mod core;
mod game;
@ -8,6 +16,30 @@ mod game;
fn main() {
env_logger::init();
let mut input_manager = InputManager::default();
input_manager.add_virtual_bindings(
"move_forward".to_string(),
vec![
VirtualBinding::Keyboard(PhysicalKey::Code(KeyCode::KeyW), AxisDirection::Positive),
VirtualBinding::Keyboard(PhysicalKey::Code(KeyCode::KeyS), AxisDirection::Negative),
],
);
input_manager.add_virtual_bindings(
"move_right".to_string(),
vec![
VirtualBinding::Keyboard(PhysicalKey::Code(KeyCode::KeyD), AxisDirection::Positive),
VirtualBinding::Keyboard(PhysicalKey::Code(KeyCode::KeyA), AxisDirection::Negative),
],
);
input_manager.add_virtual_bindings(
"mouse_x".to_string(),
vec![VirtualBinding::MouseX(AxisDirection::Positive)],
);
input_manager.add_virtual_bindings(
"mouse_y".to_string(),
vec![VirtualBinding::MouseY(AxisDirection::Positive)],
);
let device_extensions = DeviceExtensions {
khr_swapchain: true,
..Default::default()
@ -30,7 +62,7 @@ fn main() {
let event_loop = EventLoop::new().unwrap();
event_loop.set_control_flow(ControlFlow::Poll);
let mut app = core::render::app::App::from(vulkano_context);
let mut app = core::app::App::new(vulkano_context, input_manager);
match event_loop.run_app(&mut app) {
Ok(_) => {}