• 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 Harabeck · May 11, 2012 at 06:50 PM · physicsrigidbodycontrolspaceship

Does setting the rotation of an object override the physics engine?

If I control a spaceship by changing its rotation directly, will that override any change the physics engine would have done? For instance, let's say my ship hits an asteroid, and the physics engine calculates that the front end should be knocked upwards. Would using a control scheme that sets the rotation directly allow the player to negate the torque by engaging the controls in any direction at time of impact?

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
Best Answer

Answer by Piflik · May 11, 2012 at 07:09 PM

Yes.

You would have to use rigidbody.AddTorque or rigidbody.AddRelativeTorque.

Comment
Add comment · Show 1 · 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
avatar image Harabeck · May 11, 2012 at 07:32 PM 0
Share

Ok then. Would you know how to prevent this issue?

www.youtube.com/watch?v=NZQ4X1YL1Vo

The ship isn't turning on its axis properly. I've tried both of the following with identical results:

gameObject.rigidbody.AddRelativeTorque(Vector3.up*$$anonymous$$chYaw*modifier);

and

gameObject.rigidbody.AddForceAtPosition(-gameObject.transform.right*($$anonymous$$chYaw*modifier),gameObject.transform.position-(gameObject.transform.forward*4)); gameObject.rigidbody.AddForceAtPosition(gameObject.transform.right*($$anonymous$$chYaw*modifier),gameObject.transform.position+(gameObject.transform.forward*4));

The issue only arises when the ship is asymmetrical when viewed in profile relative to the axis of rotation. For instance, the ship in the video pitches up and down just fine. But I can also make a ship that yaws fine, but pitches weird, all based on the symmetry of the colliders that make up the ship. Also, note that I apply the thrusts to the center of gravity (or rather, move the children relative to the top object so that the objects position will be identical to the center of gravity).

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.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

5 People are following this question.

avatar image avatar image avatar image avatar image avatar image

Related Questions

How to make camera position relative to a specific target. 1 Answer

How do I keep rigid bodies from sliding when applying fake gravity based on moving parent? 1 Answer

How should I control a 'rake' that pushes objects around a table? 2 Answers

How should I structure an object with a mix of rigidbody and non rigidbody children? 1 Answer

Flying Rigidbody moves forward, but doesn't turn in mid-flight? 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