- Home /
Implementing a virtual joystick with mouse
Hi,
I'm trying to implement a virtual joystick with the mouse and I'm having issues. I can't just use the raw mouse data because sweeping gestures are important and these feel unintuitive with the raw input. I can easily achieve the desired effect with a real gamepad, but I want to try to emulate with a mouse. I think this would be easy if I could force the mouse to a certain value. Is there a way to do this, or has anyone else tried something similar?
tl;dr: I need to implement a mouse-driven virtual joystick, any help?
Answer by MorphingDragon · Jul 01, 2013 at 05:02 AM
I don't believe that you are making the right interface decisions if you require a joystick controlled by the mouse. If you are porting a mobile game to PC redesigning the interface to match the Keyboard/Mouse paradigm will be a better overall experience for the player. If you could give us more information as to what this Joystick is controlling that would help a lot as well.
Regardless Unity has an example joystick you could modify in Mobile Standard Assets.
I understand that a more keyboard and mouse driven design would be ideal, but I'm designing around gamepad controls. I want to have the mouse controls as a backup.
The use case is this: imagine swinging a sword with a gamepad joystick. I'm trying to replicate that feeling with a mouse. I don't want a visual "joystick" on screen, I just want something to passively listen to the mouse in the background and allow a user to make sweeping gestures. The game is third person, and all swings are constrained to the xz plane. For example, on a gamepad, if I rotate the right stick to a 45 degree angle, then the on screen sword is at that 45 degree angle. The control is 1:1. I'm trying to replicate that feeling. Does that help?
Your answer
Follow this Question
Related Questions
Problems with joystick / controller axes being 1/-1 "way too often" 1 Answer
How do you properly deal with analog joystick input on multiple controller inputs? 1 Answer
problems moving game object with the right joystick 1 Answer
Using Input.GetJoystickNames 1 Answer
How do I make the Joystick Analog Stick work like the Mouse Input? 0 Answers