ioq3
ioq3 copied to clipboard
Feature Request: Gyro controls
Thought it would be neat to have gyro controls in Quake 3 :0)
Draft implementation on branch below ready to play with, but needs additional work.
Opening this issue for discussion around:
- [ ] Input smoothing (and constraints)
- [ ] Dead-zones (and gradient)
- [ ] Handling of other JoyCon layouts (e.g. Pro)
- [ ] On/off activation via button?
- [ ] Reset calibration button?
- [ ] Sensible initial values
- [ ] Maybe add some of these Settings to the menus?
Feel free to jump in and hack on it.
Ideally we'd get the gyro sensor readings from SDL, but their current sensor impl. assumes a device gyro (like on a mobile device), with no clear way to tie that to an individual Controller having a gyro as on the Switch. I've just gone switch native here as a result, ignoring SDL and feeding them back in as mouse deltas. Couldn't find any other gyro controls reference code so kinda flying blind on this one.
From the updated README:
in_gyromouse - Set to 1 to enable use of gyroscope
sensor as mouse freelook (gyro controls)
in_gyromouse_debug - Set to 1 to show raw gyro sensor readings
in_gyromouse_pitch - Amplify raw sensor readings for pitch
up-down (negative values invert axis)
in_gyromouse_yaw - Amplify raw sensor readings for yaw
left-right (negative values invert axis)
in_gyromouse_pitch_ui - As above but for ui / in-menu
in_gyromouse_yaw_ui - As above but for ui / in-menu
(suggest rebasing off of #8 to make it easier to twiddle console values when you're testing)
Merged #7. Will add some settings to the menus and then roll out a release because of the impending breaking AMS changes.