Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by ataxk · Oct 10, 2011 at 11:19 PM · vector3rotatejoystickanglerotatearound

Rotate an object using joystick

I'm looking for a way to map the angle the player moves the joystick from its rest point to an object - for example, if the player were to move the stick to a upper right position, the object would spin to face that direction - could anyone give me some pointers?

I'm reading the stick input into a Vector3, which I assume needs to somehow converted into a float, and then to an angle?

 input = Vector3(Input.GetAxis("Left Joystick X"), Input.GetAxis("Left Joystick Y"), 0);
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by aldonaletto · Oct 10, 2011 at 11:57 PM

Input.GetAxis (for joysticks) returns a value between -1 and +1, proportional to the angle of the joystick lever. All you have to do is multiply this value by the maximum angle you want the player to turn to:

var maxX: float = 60; var maxY: float = 60;

function Update(){ var angleX = maxX*Input.GetAxis("Left Joystick X"); var angleY = maxY*Input.GetAxis("Left Joystick Y"); transform.localEulerAngles = Vector3(angleY, angleX, 0); } If this code is attached to the camera, for instance, you can aim it up and down with joystick Y, and left and right with joystick X - both proportionally to the joystick movement.
It may seem that angleY and angleX are swapped in localEulerAngles: that's because the first parameter sets the rotation angle around the X axis, thus going up and down; the second does the same around the Y axis, thus swinging left or right.
localEulerAngles is used instead of eulerAngles because it will work even if the camera is a child of other object (if it's not, localEulerAngles and eulerAngles do the same).
Case any axis go to the wrong direction, just invert the signal of angleX or angleY.

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

3 People are following this question.

avatar image avatar image avatar image

Related Questions

Joystick Rotation with Transform.RotateAround 0 Answers

from Quaternion to RotateAround 1 Answer

Rotate vector around vector? 2 Answers

Rotate One Object Around Another 1 Answer

Trouble with Vector3.Angle() and RotateAround() 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges