void vg_update_inputs(void)
{
+ if( !glfwGetGamepadState( GLFW_JOYSTICK_1, &vg_gamepad) )
+ {
+ vg_gamepad_ready = 0;
+ }
+
+
/* Update button inputs */
for( int i = 0; i < vg_list_size( vg_button_binds ); i ++ )
{
for( int i = 0; i < vg_list_size( vg_axis_binds ); i ++ )
{
struct axis_binding *binding = vg_axis_binds + i;
-
- if( vg_input_mode == k_EInputMode_pc )
- {
- binding->value = get_button_cross_device( binding->positive );
- binding->value -= get_button_cross_device( binding->negative );
- }
- else
- {
- binding->value = vg_gamepad.axes[ binding->bind ];
- }
+ binding->value = vg_gamepad.axes[ binding->bind ];
}
}
+
+static void vg_gamepad_init(void)
+{
+ for( int id = 0; id <= GLFW_JOYSTICK_LAST; id ++ )
+ {
+ if( glfwJoystickPresent( id ) )
+ {
+ vg_info( "Joystick found: '%s'\n", glfwGetJoystickName(id) );
+ }
+
+ if( glfwJoystickIsGamepad( id ) )
+ {
+ vg_gamepad_name = glfwGetGamepadName( id );
+ vg_success( "Gamepad with mapping registered: %s\n", vg_gamepad_name );
+
+ vg_gamepad_ready = 1;
+ vg_gamepad_id = id;
+
+ break;
+ }
+ }
+}