$darkmode
Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
app_input_state.h
Go to the documentation of this file.
1 #ifndef APP_INPUT_STATE_H
2 #define APP_INPUT_STATE_H
3 
13 #include "adaptive_sampler.h"
14 #include "app_binding.h"
15 #include "camera.h"
16 #include "gamepad_input.h"
17 
22 typedef struct AppInput {
29 } AppInput;
30 
35 void app_input_state_init(AppInput* input);
36 
42 
43 #endif /* APP_INPUT_STATE_H */
Adaptive sampling utility for performance metrics.
void app_input_state_init(AppInput *input)
Initialize all input sub-systems to default state.
Definition: app_input_state.c:5
void app_input_state_cleanup(AppInput *input)
Release all input resources.
Definition: app_input_state.c:16
First-person camera module with realistic physics and head-bobbing.
Gamepad/controller input adapter for camera control.
Collector for performance samples within a rolling or fixed window.
Definition: adaptive_sampler.h:38
Central registry that holds application key bindings.
Definition: app_binding.h:48
Camera, gamepad, key-bindings, and input smoothing grouped together.
Definition: app_input_state.h:22
AdaptiveSampler fps_sampler
Definition: app_input_state.h:27
AppBindingRegistry binding_registry
Definition: app_input_state.h:26
int camera_enabled
Definition: app_input_state.h:28
GamepadState gamepad
Definition: app_input_state.h:24
Camera camera
Definition: app_input_state.h:23
Represents a 3D camera with orientation, movement, and physical properties.
Definition: camera.h:40
Definition: gamepad_input.h:44