Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

SoaringTortoise

Thrust + Velocity not sufficient

This topic is 5609 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, I''m using standard newtonian physics to model a ball on an undulating surface. At present I am using impact reflection, gravity, friction, thrust and velocity. But these aren''t sufficient for modelling what I am doing. For example, I want the ball to have a maximum speed on a flat plane which I limit by introducing air-resistance which eventually cancells out the thrust after a certain speed. The problem is that the maximum thrust required to achieve that top speed is not enough to overcome mild inclined planes. I can increase the air-resistance so that more thrust is required to achieve the same speed, and so that the maximum thrust is enough to climb inclined planes, but then free-fall movement seems unnatural. So... how do I limit the maximum speed of the object, while still allowing it to have the ability to climb steep inclines? Imagine something like a landrover, which can climb 60-degree slopes, but has a very low top speed compared to a sports car which has completely opposite behaviour (fast on flats, no climbing ability). I can just clamp the top speed, but I''m trying to make this thing as realistic as possible. Learning to fly is easy, but as a tortoise, the landings are really rough.

Share this post


Link to post
Share on other sites
Advertisement
I would increase the mass of the ball. Are you making the "air resistance" basically by new_vel = old_vel * 0.97? if so, then ball mass won''t affect how fast the velocity decay occurs. Ball mass never affects its own gravitational acceleration, so that will be OK as well. then just give the ball more thrust force for the same amount of acceleration.

you may want to give the ball a "Star Control"-ish acceleration function instead (it basically finds out what the result velocity is and limits the acceleration to prevent the velocity one second in the future from being greater than a max speed. It''s a pretty "comfortable" was to clamp velocity)

Share this post


Link to post
Share on other sites
Hmmm.. I like the first method. The second method is a cheat, and I really want to avoid that type of thing because I tried it that way with all of the physics and just ended up getting tied up in knots as the environment parameters changed.

Will change the mass and get back to you if it doesn''t work as expected. Thanks.

Learning to fly is easy, but as a tortoise, the landings are really rough.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
How do model air resistance?

Share this post


Link to post
Share on other sites
Take your previous speed and multiply it by your coefficient of air-friction, then subtract the result from the new speed. Or variations thereof depending on thought process and preference.

Please stick to the thread though... I don''t want to lose my issue in a sub-thread.

Learning to fly is easy, but as a tortoise, the landings are really rough.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
More realistically air resistance would be made proportional to the square of the velocity. That might give you the desired behavior.

Share this post


Link to post
Share on other sites
Yah, if you want to be accurate then you do that (square the velocity). Comes in handy with the terminal velocity issue. Still, any thoughts on my problem? I think I need to go into Power functions, but not too sure how deeply.

Learning to fly is easy, but as a tortoise, the landings are really rough.

Share this post


Link to post
Share on other sites
Well, thrust is the impulse that you assign to the object, which is basically an acceleration vector. Acceleration is the total of gravity and thrust and a couple of other acceleration-type vectors. Force is mass*acceleration, but since I''m using unit mass, this is basically just acceleration.

Learning to fly is easy, but as a tortoise, the landings are really rough.

Share this post


Link to post
Share on other sites
One thing you might want to think about (if you haven't already) is which direction you are applying the force, or thrust, on the ball when going up a hill. If the thrust is always parallel to the flat plane (usu. xz-plane), then going up a hill will put the thrust/force into the hill, resulting in only a little bit of forcing actually pushing the ball up the hill. If thats the case, you need to make sure your force is applied parallel to the hill, so that the full magnitude of the force is going up the hill.

Another thing is regarding the Landrover/sports car thing you were talking about. The difference (I think) is that sports cars have engines that go up to really high RPMs, and have huge gear ratios on their transmissions, enabling them to go fast at a sacrifice of the low-end acceleration. Meanwhile a Landrover has a ton of torque, and low gears. Think of a bike. If you tried to go fast in first gear, you could get to your top speed of 3 mph real quick. But if you stayed in the highest gear, pedaling would be really hard and slow at first, but you could eventually go a lot faster.

Conclusion: Install a transmission in your ball.

Hope all that made sense.

[edited by - granite811 on March 5, 2003 2:06:35 PM]

[edited by - granite811 on March 5, 2003 2:07:20 PM]

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!