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 Uriel_96 · Apr 21, 2011 at 03:56 PM · javascriptrotatedirectionthird-person-shooter

Make TPS to walk for my game

OK, first, I want to make a script that depends on the camera that orbit the player(mouseOrbit) and I want that when you press "W" the player rotates in front of the camera and when you press "S" the player rotates backwards of the camera and "a" left and "d" right, so for doing this I have try many things like using Rotate, rotation, Slerp, LookAt, eulerAngles, localRotation ,etc. and no one of this works like I want, this is an idea of what I want:

if(Input.GetKey("w")){
/*go front of the camera*/
transform.Translate(transform.forward * Time.deltaTime * speed, Space.World);
}
if(Input.GetKey("s")){
/*go back of the camera*/
transform.Translate(transform.forward * Time.deltaTime * speed, Space.World);
}
if(Input.GetKey("a")){
/*go left of the camera*/
transform.Translate(transform.forward * Time.deltaTime * speed, Space.World);
}
if(Input.GetKey("d")){
/*go right of the camera*/
transform.Translate(transform.forward * Time.deltaTime * speed, Space.World);
}

Note: I want a way that if you press like "w" and "d" it doesnt go front or right it does between the 2 directions

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
1

Answer by Fervent · Apr 21, 2011 at 07:45 PM

you could make empty objects that have a rotation and position pointing at your character for each of the directions. Parent them to your character in the scene so that they move around with him. if you then want to move the camera to the right...Slerp the camera to the angle of that object and Lerp the camera to the position of that object.

to make the objects....align your view in the scene view at the point and direction you want the camera to be at....create an empty object...select that object..then press align with view in the menu system...i forget where it is.

that will line up the object exactly how your view in the scene is. then when you move and rotate the camera to that position it will be looking exactly how you want it to look.

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

No one has followed this question yet.

Related Questions

How should I rotate a 2D unit vector by X degrees? 1 Answer

Rotate towards target doesn't work properly (Quaternion.lerp) 1 Answer

Is there a way to detect which way an object is facing? 1 Answer

Getting an object to rotate back to zero after key is released 2 Answers

Rotating character based on joystick angle, at an angle 0 Answers


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