Easy Mobile Joystick Controller - Now in Asset Store

EasyMobileJoystick allows you to quickly add position dynamic and resolution independent joysticks to your scene.

** Features **

  • Joysticks only appear when the user has touched the screen at the position they touch
  • Choose to use a Button instead of Joystick if you need a jump or fire button for example
  • Greatly improves gameplay as the user doesn’t need to watch where their thumbs are and can just concentrate on your game
  • Joysticks stay at same scale you set in Unity, they don’t shrink on Retina screens
  • Fully testable in editor. No need to use your device and unity remote to test, but you can if you like
  • Includes Control setups for First Person, Camera Relative, Third Person and Side Scroll

How to Use

The best way is to load up the demo scenes. All I have done is change the Unity controller prefabs to use EasyMobileJoystick.js class instead of Joystick.js which comes as default in unity.

The Best way is use the prefabs, just drag into your scene.

To do it manually:

  1. Add the EasyMobileJoystick script to an empty gameobject
  2. Add 2 more game objects containing GUITextures , one for joystick and one for background of joystick
  3. Assign these 2 game objects to the game object containing the EasyMobileScript

Scale

You can scale the GUItextures using the Scale property instead of Pixel Inset. This means that the graphics won’t scale down on retina screen devices

No Images
Sometimes you may want to have a joystick or button without a background like the default unity one. Simply leave the Image BG property blank in EasyMobileJoystick.js.

Infact you can choose to have no joysticks appear, just using touch to control. Simply leave both Image BG and Image Joystick properties blank in EasyMobileJoystick.js.

Get it here
Test it here on web player

I purchased this and it’s awesome. I highly recommend it to anyone looking to find a great fps or tps controller. I have one request:
I am trying ti implement this using a “flying controller” and would like your feedback. please message me or email at your earliest convenience.

Thanks much.

Hi . Thanks! Can u give me more details on what u are looking for when you say flying controller, PM me if u like and I will see if the controller fits.

It should work with anything as it exposes a variable called “position” so for example left stick fully up would be position.y 0.5, half way would be 0.25 etc
down would be position.y -0.5, left would be position.x -0.5, right 0.5 and the amounts in between.

That way if it was an airplane controller the more the user pushed the stick down the more power you could add by getting the value EasyMobileJoystickController.position.y.

So if you had a game object called LeftStick with the EasyMobileJoystickController script attached you could use another script to call it in the Update function by first creating a reference variable like

// reference to controller
var easyScript : EasyMobileJoystickController;
// speed of character to move
var mySpeedVariable : float = 10;

then in the Start function

function Start(){

easyScript = GameObject.Find(“LeftStick”).GetComponent(“EasyMobileJoystickController”);
}

then in Update
function Update(){

myCharacterToMove.transform.position.y = EasyMobileJoystickController.position.y * mySpeedVariable * Time.DeltaTime;

}

etc…

I bought this asset from Unity store but I’m unable to know how can I use my right joystick to jump the character control. Can anyone please let me know it’s solution?

Thanks

Does anyone have an example of using the controller as a button instead of a joystick? I’ve gotten it to work in the editor but not on a mobile device.

I have tried to implement that to 2d Jump’n run https://www.assetstore.unity3d.com/#/content/723
but getting this error, can you please help me figure out where is the problem?

Assets/2DJumpNRunFramework/Scripts/PlayerJumping.js(80,37): BCE0019: ‘IsFingerFrameDown’ is not a member of ‘Joystick’. Did you mean ‘IsFingerDown’?

Assets/2DJumpNRunFramework/Scripts/PlayerJumping.js(94,37): BCE0019: ‘IsFingerFrameUp’ is not a member of ‘Joystick’. Did you mean ‘IsFingerDown’?

Assets/2DJumpNRunFramework/Scripts/PlayerJumping.js(108,36): BCE0019: ‘IsFingerFrameDown’ is not a member of ‘Joystick’. Did you mean ‘IsFingerDown’?

Assets/2DJumpNRunFramework/Scripts/PlayerJumping.js(122,36): BCE0019: ‘IsFingerFrameUp’ is not a member of ‘Joystick’. Did you mean ‘IsFingerDown’?

Assets/2DJumpNRunFramework/Scripts/PlayerAttack.js(21,38): BCE0019: ‘IsFingerFrameDown’ is not a member of ‘Joystick’. Did you mean ‘IsFingerDown’?

sorry for the (lonnnng) delay this should be fixed now in v 1.2 update in asset store

sorry for the (lonnnng) delay this should be fixed now in v 1.2 update in asset store

Hello.

Thanks for making this product. It has been very easy to customize compared to other scripts that are out there. The only problem I have is in the FPS joysticks. When I rotate the character it seems to feel very laggy. In most iOS games the movement is in relation to the finger movement but if you move quickly the rotation is slow. Do you have any tips on how to make the rotation more instant. This is not very usable for a fast-paced FPS game becuase the movement is so slow.

Hi, I just purchased your joystick plugin, had a look at the provided scenes but I am still not clear on how to implement it on my gameobject…
Sorry if I sound a bit daft… how to I use the joysticks in my JavaScript code, e.g. I have:

if (Input.GetKey(“w”)){
enginerev();}
else{enginerevdown();}

if (Input.GetKey(“s”)){
enginerev();}
else{enginerevdown();}

How can do something like that for the detecting if the left/right joystick moves?
Is there a simple guide on how to use/documentation for this?

Cheers,
Kim

Can I use the plugin/ EasyMobileJoystickController in the Unity Input Manager, e.g. for Input “Horizontal”, can I select the left joystick? I want to try avoid having to make any code changes…
thanks in advance for any help or suggestions.

Kim

Hi, I didn’t bought it yet. B4 to buy I would like to know how it works for multiplayer fps games? If I spawn my player?

This is a very easy and useful joystick.
I’m using it for a long time, but now I’d like to change the boundaries of the stick to a rectangle instead circular.
Can you give me some tips, how can i achieve that?
Thank You!