• 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
7
Question by dmaxwell · Apr 07, 2010 at 10:00 AM · physicsforcefollowforwardtrain

I want to make a train go round a track using physics?

Hi

I want to create a train and carriages (all independent when needed),I want the physics engine to move them round a track so I can stop start unlink so friction slows them down.

The track will run through a game environment curved and straight sections.

I thought about importing animation ,but the physics engine would give me more control

I need a simple physics model (sphere say) that is given a force along direction but is also fixed in a rail

any ideas?

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

7 Replies

· Add your reply
  • Sort: 
avatar image
0

Answer by KvanteTore · Apr 07, 2010 at 02:30 PM

Hm, that is an interesting problem. I guess if your railroad is a straight linee, you could use a ConfigurableJoint allowing a linear motion along one of the axis. However, this is most certainly too restrictive.

Now, you would like to have a curved track and allow linear motion along the track. I wonder if you could create a ConfigurableJoint for each car. Then, at each FixedUpdate(), find the position on the track closest to the current position of the car, and move the ConfigurableJoint to that posisiton, and rotate it such that the allowed axis of movement is parallel to the track at that point. That way you should get local linear movement along the track at all times without doing any animation trickery.

Comment
Add comment · Show 4 · 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 dmaxwell · Apr 07, 2010 at 02:43 PM 0
Share

this sounds interesting.I created two elongated boxes and placed a sphere in-between with ridibody component added a force unfortunately when it got to a bend the direction did not change????

avatar image KvanteTore · Apr 07, 2010 at 02:59 PM 0
Share

you need to move and rotate the boxes to match the position on the track closest to where the train is at a given FixedUpdate()

avatar image KvanteTore · Apr 07, 2010 at 02:59 PM 0
Share

Bear in $$anonymous$$d that this is not something I have tried, it only seemed like a possible solution

avatar image dmaxwell · Apr 07, 2010 at 03:09 PM 0
Share

$$anonymous$$aybe use raycast forward from moving box when it intersects (at bend in track ) calculate new angle?

avatar image
0

Answer by efge · Apr 07, 2010 at 02:19 PM

Maybe you could use an Animation Clip to set the x,y,z values for Rigidbody.AddForce or Rigidbody.AddRelativeForce.

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 dmaxwell · Apr 09, 2010 at 09:56 AM 0
Share

this explains what I mean http://forum.unity3d.com/viewtopic.php?t=48762

  • ‹
  • 1
  • 2

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

2 People are following this question.

avatar image avatar image

Related Questions

Adding force to forward direction 1 Answer

C# always move an object forward and still use physics 1 Answer

How can I make a physics object jump a given height on collision regardless of current velocity? 1 Answer

Box2D force on object? 0 Answers

How to make thruster rotation 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