Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 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 /
  • Help Room /
avatar image
0
Question by KrackZero · Jan 16, 2017 at 07:36 PM · addforcerigidbody.addforcerigidbody physicsangularvelocitycenterofmass

Confused about addForce behavior on 3D objects w/ sub-objects in 2D movement

in a 2.5D game style... When I apply a force to my object equipped with other objects in the forward direction, it works fine. But when I go in the reverse direction, it eventually turns around on its own.
How do I stop this?

Detailed Explanation

  • Game is a type of 2.5D

  • I have some objects with varying masses that are equipped by another parent object using FixedHinges.

  • These objects are symmetrically placed on the parent object so that the respective left/right are mirrors.

  • Front/Back are not symmetric.

  • All movement in my game is in 2D only in the xy plane.

  • All objects are 3D Objects lying in 3D space that are not all perfectly aligned with the 2D xz plane of movement but all center of masses are manually set to be lying on the 2D xz plane of movement (y=0).

  • All drag and angular drag on each object are set to 0.

  • There is no friction anywhere as they are hanging in space with no gravity.

  • All colliders of equipped objects are set to ignore collisions with every other equipped object and the parent object while equipped.

  • I have the parent's transform's rotation in x and z set to zero and position in y set to zero in Update().

    Results

  • When I addForce to the parent object in a straight line forward: it works perfectly fine. Goes straight while gaining lots of speed and stays balanced.

  • When I addForce to the parent object in a straight line backwards: once it gets up to speed, it eventually rotates so that the object faces more-or-less forward in the direction of movement (which was initially reverse). I believe most of the weight is concentrated near the back side of the parent object.

When its about to turn, I can see that the object's transform starts to have small rotations in the x and z axis for some reason before it rotates about the y axis as described above. I have the transform's rotation in x and z set to zero and position in y set to zero in Update()...

How can I stop it from doing this? What causes this rotation when the forces are straight and center of masses are aligned and balanced left/right? It works in the forward direction, why would there be any instability in a no-friction no-drag environment for the reverse direction?

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

0 Replies

· Add your reply
  • Sort: 

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

86 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

AddRelativeTorque and gameobject's angularVelocity 1 Answer

Predicting max jump height of a force impulse 1 Answer

How to throw an object towards a hit.point in first person? 0 Answers

Avoid varying output on same amount of force applied to a Rigidbody2D. 0 Answers

How to make object land on certain point?,How to make object land on certain point?? 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