Forums » Bugs
Camera stutter when phone tilt to steer and controller stick used at the same time
Device: Redmi Note 13 4G (Android)
OS: HyperOS 2.0.12.0 VNGMIXM
Chipset: Snapdragon 685
GPU: Adreno 610
Other devices used: 8bitDo SN30 Pro+ Bluetooth Controller
Details of bug:
I tried enabling tilt to steer while my controller was connected with right stick mapped also to steering, and the result was that tilt to steer from phone gyro worked, but using the stick at the same time only caused the camera to jerk slightly in the direction the stick was steering. Also replicated in game with no plugins enabled. I was hoping this worked since there was no option to use the built-in gyro the controller had. The intention was to have gyro used for fine aiming, whether the built-in gyro from the controller or the phone's built in one, and the right stick for more general steering, but ideally I wanted to be able to use gyro to steer, aim, and rotate my ship (maybe using yaw axis) all at the same time.
OS: HyperOS 2.0.12.0 VNGMIXM
Chipset: Snapdragon 685
GPU: Adreno 610
Other devices used: 8bitDo SN30 Pro+ Bluetooth Controller
Details of bug:
I tried enabling tilt to steer while my controller was connected with right stick mapped also to steering, and the result was that tilt to steer from phone gyro worked, but using the stick at the same time only caused the camera to jerk slightly in the direction the stick was steering. Also replicated in game with no plugins enabled. I was hoping this worked since there was no option to use the built-in gyro the controller had. The intention was to have gyro used for fine aiming, whether the built-in gyro from the controller or the phone's built in one, and the right stick for more general steering, but ideally I wanted to be able to use gyro to steer, aim, and rotate my ship (maybe using yaw axis) all at the same time.
So, typically, if you have multiple control inputs bound to a single function, one of them overrides the other. They are not usually "blended" together.
For instance, you can have a mouse configured, and a joystick, at the same time (for the same game control purpose and axes), and both will work, but the expectation is to use one or the other. If you try using both at once, they conflict and "compete". We also do this with say, touchscreen flight controls versus gamepads: You can have both configured, and use either one, but not both at once.
It could be possible to have the stick override the phone's axial inputs, based on usage (so when zeroed, it would be disabled). But doing the other way around would be challenging, since the phone's orientation inputs would be sending data all the time and there's no specific "disabled" state.
I imagine this is why you're experiencing the problem you describe: The stick and the gyro are basically "fighting" over which can send input, and whatever sends the most inputs, most recently, is winning. If you put your controller in a vice and kept it incredibly still, you might then be able to steer with the joystick.
It could be possible to develop a specialized option where holding down a button (or a chord-combination of multiple buttons) would "enable" a special mode where you use the phone's orientation to aim, but that's.. a bit more complicated, and obviously further occupies button bindings.
Additionally, while some controllers that target the Nintendo Switch have gyros, it isn't part of the classically standard game controller model. We may be able to add support for it, but that kind of functionality didn't exist back when the Android Gamepad API was implemented. I don't know offhand if the Android API actually exposes it or not.
At any rate, this isn't exactly a "bug", because the things you're asking for are not supported. Bugs are functions that are not working as intended. What you're describing sounds more like "Suggestions" content for a new feature.
Still, we're always interested in adding new features and otherwise improving the game. It would be helpful to get more detailed feedback on exactly what you're looking for here, and how it could work?
For instance, you can have a mouse configured, and a joystick, at the same time (for the same game control purpose and axes), and both will work, but the expectation is to use one or the other. If you try using both at once, they conflict and "compete". We also do this with say, touchscreen flight controls versus gamepads: You can have both configured, and use either one, but not both at once.
It could be possible to have the stick override the phone's axial inputs, based on usage (so when zeroed, it would be disabled). But doing the other way around would be challenging, since the phone's orientation inputs would be sending data all the time and there's no specific "disabled" state.
I imagine this is why you're experiencing the problem you describe: The stick and the gyro are basically "fighting" over which can send input, and whatever sends the most inputs, most recently, is winning. If you put your controller in a vice and kept it incredibly still, you might then be able to steer with the joystick.
It could be possible to develop a specialized option where holding down a button (or a chord-combination of multiple buttons) would "enable" a special mode where you use the phone's orientation to aim, but that's.. a bit more complicated, and obviously further occupies button bindings.
Additionally, while some controllers that target the Nintendo Switch have gyros, it isn't part of the classically standard game controller model. We may be able to add support for it, but that kind of functionality didn't exist back when the Android Gamepad API was implemented. I don't know offhand if the Android API actually exposes it or not.
At any rate, this isn't exactly a "bug", because the things you're asking for are not supported. Bugs are functions that are not working as intended. What you're describing sounds more like "Suggestions" content for a new feature.
Still, we're always interested in adding new features and otherwise improving the game. It would be helpful to get more detailed feedback on exactly what you're looking for here, and how it could work?
Ah, I sort of suspected that it was control schema being separate rather than a bug but that clears that up. As for feedback on what I'm looking for, I was hoping for straight-up gyro support for controllers? Similar maybe to how Warframe handled Switch gyro, where sticks can work at the same time the gyro is, so that you can look with stick and fine-tune your aim with gyro, which didn't send input to rotate this direction or that continuously but rather displaced the camera from a certain imaginary center point, which was roughly based on stick input, if that makes sense. I think YouTube has vids of it.
I did go and quickly check some popular FPS games on mobile and *they* apparently don't even have universal controller support, much less controller gyro. Admittedly I haven't seen any game that uses controller gyro either. So I'm not sure how viable adding controller gyro aupport straight up would be. Maybe you guys will be one of the first?
Alternatively I don't see another way besides breaking the rule of separating input devices and maybe having an experimental mode for now with big warning signs saying "CAUTION: THIS WILL BREAK STUFF" and maybe playing with mixed input from phone gyro and controller sticks. Unless its something fundamentally built into the system, in which case all I can think is experimenting with just having steering on my phone gyro and just random functions on my right stick, like tilt, which is usually what I have on phone gyro.
For now I guess I'll just be content aiming with stick, just like our Halo playing ancestors intended.
I did go and quickly check some popular FPS games on mobile and *they* apparently don't even have universal controller support, much less controller gyro. Admittedly I haven't seen any game that uses controller gyro either. So I'm not sure how viable adding controller gyro aupport straight up would be. Maybe you guys will be one of the first?
Alternatively I don't see another way besides breaking the rule of separating input devices and maybe having an experimental mode for now with big warning signs saying "CAUTION: THIS WILL BREAK STUFF" and maybe playing with mixed input from phone gyro and controller sticks. Unless its something fundamentally built into the system, in which case all I can think is experimenting with just having steering on my phone gyro and just random functions on my right stick, like tilt, which is usually what I have on phone gyro.
For now I guess I'll just be content aiming with stick, just like our Halo playing ancestors intended.
https://m.youtube.com/watch?v=GE636JVdUCg
Here's a vid I found. I guess it would be neat to be able to aim like that where the gyro won't be sending steer/rotate/pitch commands but rather helping me aim more steadily. Though admittedly I'm not sure how it would translate to a game like VO where you manage momentum and inertia to aim, but it feels like it would be better than raw stick aiming. It might work for mouselook? Though it would be nice if it somehow worked with mouselook off, since steering is smoother that way. Like maybe the gyro does have mouselook, but the stick doesn't. Sorry if this is getting non-sensical or maybe fantastical, since I don't really know the technical details, but you did ask for how I thought it should work, and this is just my idela scenario. I'm actually good with how my controls are set up right now, I just don't feel like I could do combat very well with it. I'm aware of players who are really good at mobile controls but that feels too finicky for me, hence my stubborness with controllers lol
Here's a vid I found. I guess it would be neat to be able to aim like that where the gyro won't be sending steer/rotate/pitch commands but rather helping me aim more steadily. Though admittedly I'm not sure how it would translate to a game like VO where you manage momentum and inertia to aim, but it feels like it would be better than raw stick aiming. It might work for mouselook? Though it would be nice if it somehow worked with mouselook off, since steering is smoother that way. Like maybe the gyro does have mouselook, but the stick doesn't. Sorry if this is getting non-sensical or maybe fantastical, since I don't really know the technical details, but you did ask for how I thought it should work, and this is just my idela scenario. I'm actually good with how my controls are set up right now, I just don't feel like I could do combat very well with it. I'm aware of players who are really good at mobile controls but that feels too finicky for me, hence my stubborness with controllers lol
Sorry if this is getting non-sensical or maybe fantastical, since I don't really know the technical details, but you did ask for how I thought it should work, and this is just my idela scenario
No, I appreciate that, I did ask for it as you say.
This is, clearly, much more of a "future improvement" request than a Bugs thread at this point, and I may move this thread to the Suggestions Forum in due course.
I'm also still not sure on the state of gyro access for controllers in Android. Technically we can "write our own USB drivers" and try to directly access anything that's a standardized Nintendo controller, but that gets increasingly complicated (and difficult to maintain over time). Anyway, there may be some simpler methodology, we just haven't investigated yet.
But, at some point when we can dig a little further into improving our control mechanics, I'll revisit this to consider your input. That's the best I can offer right now, given our limited development resources.
Thanks for posting the feedback.
No, I appreciate that, I did ask for it as you say.
This is, clearly, much more of a "future improvement" request than a Bugs thread at this point, and I may move this thread to the Suggestions Forum in due course.
I'm also still not sure on the state of gyro access for controllers in Android. Technically we can "write our own USB drivers" and try to directly access anything that's a standardized Nintendo controller, but that gets increasingly complicated (and difficult to maintain over time). Anyway, there may be some simpler methodology, we just haven't investigated yet.
But, at some point when we can dig a little further into improving our control mechanics, I'll revisit this to consider your input. That's the best I can offer right now, given our limited development resources.
Thanks for posting the feedback.
really appreciate the direct reaponse, and glad to hear my input was of use. good luck, whichever direction it takes!
You've inflicted great mental anguish on me though; the mere thought of using a standard controller to play vo is more painful than the controller itself!
Jokes aside... It's technically possible I'm definitely not going to be the first one to pull it off though.
Jokes aside... It's technically possible I'm definitely not going to be the first one to pull it off though.