Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
Loading...
Searching...
No Matches
gamepad_input.h
Go to the documentation of this file.
1
11#ifndef GAMEPAD_INPUT_H
12#define GAMEPAD_INPUT_H
13
14#include "gamepad_context.h"
15#include <stdbool.h>
16
18#define GAMEPAD_BUTTON_COUNT 15
19
21#define GAMEPAD_DEFAULT_DEADZONE 0.15F
22
24#define GAMEPAD_DEFAULT_LOOK_SENSITIVITY 120.0F
25
27#define GAMEPAD_DEFAULT_MOVE_SENSITIVITY 1.0F
28
30#define GAMEPAD_DEFAULT_TRIGGER_THRESHOLD 0.1F
31
41
43#define GAMEPAD_AXIS_COUNT 6
44
56
62
74
84void gamepad_write_input(const GamepadState* state, GamepadContext* ctx);
85
96float gamepad_apply_deadzone(float value, float deadzone);
97
98#endif /* GAMEPAD_INPUT_H */
Decoupling seam between gamepad input and camera internals.
#define GAMEPAD_AXIS_COUNT
Definition gamepad_input.h:43
void gamepad_input_init(GamepadState *state)
Initializes gamepad state with default values.
Definition gamepad_input.c:15
#define GAMEPAD_BUTTON_COUNT
Definition gamepad_input.h:18
float gamepad_apply_deadzone(float value, float deadzone)
Applies a dead-zone filter to an axis value.
Definition gamepad_input.c:31
void gamepad_input_poll(GamepadState *state, GamepadActions *actions)
Polls GLFW gamepad state and detects button events.
Definition gamepad_input.c:79
void gamepad_write_input(const GamepadState *state, GamepadContext *ctx)
Writes gamepad axes into a GamepadContext.
Definition gamepad_input.c:140
Edge-detected button events produced by a single poll.
Definition gamepad_input.h:36
bool env_prev
Definition gamepad_input.h:38
bool env_next
Definition gamepad_input.h:37
bool camera_reset
Definition gamepad_input.h:39
Minimal camera state slice for gamepad input application.
Definition gamepad_context.h:19
Definition gamepad_input.h:45
float move_sensitivity
Definition gamepad_input.h:50
float axes[6]
Definition gamepad_input.h:54
unsigned char prev_buttons[15]
Definition gamepad_input.h:52
float look_sensitivity
Definition gamepad_input.h:49
int joystick_id
Definition gamepad_input.h:47
float trigger_threshold
Definition gamepad_input.h:51
float deadzone
Definition gamepad_input.h:48
bool connected
Definition gamepad_input.h:46