Game Development Community

Torque/ODE

by Anthony McCrary · in General Discussion · 11/30/2002 (5:39 pm) · 65 replies

I would like to see torque's rigid body physics engine redeveloped using ODE. Personally, I think the physics are a larger weakness than graphics are.

But I am not extremely skilled in this sort of programming. I'm pretty sure I have narrowed down the where changes need to be made, but I was wondering if any more advanced 3d programmers would be interested in helping?
Page «Previous 1 2 3 4 Last »
#1
12/01/2002 (4:58 am)
I know Tim Gift was interested in the ODE and it's possible integration into Torque.

I've not looked at the details but I gather that perhaps there could be some potential problems with prediction/integration using the client/server model.

This maybe incorrect and I'm sure there are far more experienced people on the forums who could comment?

- Melv.
#2
12/04/2002 (7:35 pm)
Hey everyone,

First off, i would like to say that the TGE looks amazing, and i can't wait till i buy myself a license! Soon, i hope.

I too would like to see some sort of advanced physics engine like ODE integrated into torque. Just imagine driving a dune buggy type vehicle with realistic physics in torque!

See what i'm talking about

Note that that demo uses ODE.

I know this may pose a problem with the net code, but still, it would be *really* cool if it is possible, even if it's only for single player games.

Mike
#3
12/18/2002 (4:53 am)
Hi Anthony,

I am very interested in getting ODE into Torque.

Unfortunately, I've only just bought Torque (yesterday!) so I've got no idea at the moment what changes would be needed.

I'm a fairly experienced C/C++ programmer, and although I've never dived into it in great depth, I think I've got a pretty good understanding of the issues involved in physics simulations.

Personally, I think that physics simulation offers huge potential for new games, and is much more important at the moment than graphics development.

I can see that there may well be problems with client-server games with full physics simulations, but even if we were limited to single player games initially, ODE would be a really useful addition. In time, I'm sure that it could be extended to multiplayer.

Any chance you could share what you've found so far, even if only to give some pointers to where in the code to look?

Cheers - Steve Baines
#4
12/18/2002 (5:43 am)
If you've been hanging out in IRC in the last few weeks, it would seem that he's making some progress :)

Pop in there and look for "Shinobi" haven't seen him in a couple days, but he's usually haunting the channel.
#5
12/18/2002 (6:12 am)
The demo mentioned by Mike is created with Quest3D. Quest3D has a dynamics package that is based on ODE. For more information can be found here.
#6
12/18/2002 (9:49 am)
Prediction in the client/server model of Torque is definitely something to consider when integrating a physics engine. While I'm not that familiar with ODE, I don't suspect that there would be any major issues with this. Most, if not all, of the client/server prediction code that you'll need is probably already handled in Torque in some way or another. Although you may need to tweak this code a bit here and there.

I'm guessing that trickiest part would be getting ODE to communicate properly with the Torque simulation objects and getting this interaction down smooth with the rest of the engine. Also, I'd think that you'd also need disable or rip out a lot of existing physics code that's in the engine.
#7
12/18/2002 (10:17 am)
cool car physics!
Really cool demo! kinda puts to shame the wheelvehicle code!
#8
12/18/2002 (10:36 am)
Isn't the author of ODE working on this himself ??
ie He was at IndieCon, iirc (ie gave the presenation on ODE), and I seem to recall the wind whispering in my ear that he had been provided with a license so he could tinker with the engine and his baby...
Note : I could be totally wrong !!! :)
Feel free to add any info on this, if you have any.
#9
12/19/2002 (1:24 am)
I hope he is, that would be perfect!
#10
12/19/2002 (4:06 am)
I have been working on integrating ODE, but I have reached a stumbling block with collision detection.

Torque uses Convexes for collision detection. ODE doesn't and the other off the shelf collision detection packages that can work with ODE don't either. So a custom solution has to be developed, and I am researching this right now. Unfortuntely, I have been real busy with work lately and haven't managed to dive into this with great depth.

My idea was to implement ODE in a similar way that rigid.cc works right now. Basically, ODE will control vehicles, and all collisions with non-ode objects would be resolved thru another class layer. Kind of abstract it away from ODE itself. This way, prediction wouldn't be as difficult to handle as including the whole Torque world into an ODE world and ODE collision spaces.

The guy who did that Monster Truck thing for Quest3d did some mods to ODE that make it more usable in Torque, but the "source" he released is for Quest3D, and not C, C++ or anything usable by Torque. It is really pretty good though and shows what ODE can do. Personally, I like the free fall demo best.
#11
12/19/2002 (6:48 am)
Interesting. Shouldn't be too difficult to add another form of collision test to Torque's Container class.
#12
12/24/2002 (2:45 pm)
Hi all.

I'm would like to test a gameplay idea, based on a car racing context. But I need to evaluate the car physics quality in Torque. Indeed if I need to use ODE, there's no point in sweating to integrate it with torque, I'd better use a simple 3D engine with ODE to test the idea.

So before I spend 100$ and get dissapointed, could anyone tell me about the car physics quality in Torque?

A good reference for me would be that demo

http://freefall.freehosting.net/downloads/buggydemo.html

It's also based on ODE.

Thanks.

(or if anyone can mail me the car demo of torque, that would be fine too. If it's good I'll buy the engine.)
#13
02/07/2003 (6:01 pm)
What's the status on this? Has anyone gotten it working?
#14
02/07/2003 (6:32 pm)
I couldn't justify the amount of work needed to get an ODE implementation working in multiplayer, as my game heavily revovles around multiplayer gaming.

So I've pretty much given up on an ODE solution.
#15
02/08/2003 (9:12 am)
Have you played with the new Vehicle physics? They are very, very good. Tim did a supurb job. Try them out...

torqueDemo.exe -mod racing

You can tweek the suspension and stuff like that also. Check out the BraveTree car content pack when it comes out as well.
#16
02/08/2003 (9:26 am)
The problem with implimenting ANY physics engine is that it has to be custom-adapted to match the geometry of the vehicle you want to simulate. It's almost easier to build your own sometimes, since most are based solely on rigid-body physics.

I've only had Torque in my hands for a week or two (C++ also) but I intend on creating some speedy physics modules for a number of basic vehicle types. The Torque wheeled vehicle code slows my machine down too much when I get too many vehicles on-screen at the same time. I programmed a helicopter physics engine into my old engine using the impulse/momentum method, but it also chopped my framerate down. Some cheating may be required to get the physics to run faster.

I'm a mechanical engineer, so it doesn't intimidate me any. I've got most of the wheeled vehicle equations figured out, I just have to get familiar enough with the Torque Vehicle.cc modules so I can try it out. It may be a while before I get to it, but I will post the completed modules as resources when I get them working.
#17
02/08/2003 (12:10 pm)
Quote:Have you played with the new Vehicle physics? They are very, very good. Tim did a supurb job. Try them out...

Yes i've been watching that thread. So far it's great for a generic buggy, but it doesn't seem well suited for any kind of road racing ( meaning not off-road ). I'm not looking for realism, but just a good feel and plausible believability.

Quote:The Torque wheeled vehicle code slows my machine down too much when I get too many vehicles on-screen at the same time. I programmed a helicopter physics engine into my old engine using the impulse/momentum method, but it also chopped my framerate down. Some cheating may be required to get the physics to run faster.

See Stephen Chenney's work at...

www.cs.wisc.edu/~schenney/research/culling/

Look at his GDC 2001 slides and paper. This was a major win for us for our AI controlled vehicles.
#19
11/22/2003 (8:08 pm)
Ive got a basic implementation of ODE working in my TGE. 2 days work so far. The way it works at the moment is you create a DynamicObject in the scripting language (this is an object class I created), the object then registers itself with ODE, and updates its transform from ODE each update.

At the moment, I just have a plane on the x-y plane, and the dynamic object is just a unit cube that gets rendered as a unlit box.

The physics is all working, and as far as i can tell, it works on both client and server, though i would have to experiment more to see if this is in fact the case.

ODE takes care of all of the collision and movement of the objects, though there are some.. perculiarities, such as boxes floating and the like.. but like I said, its only been 2 days, and im really happy with how its going.

Im in my uni holidays now, so im working on this pretty much full time. (along with Produce Panic). So I hope to get terrain collisions and eventually dts and dif collisions as well (i think its possible with OPCODE).
#20
11/22/2003 (8:35 pm)
Hey thats good to know that its possible!

Maybe you could post a basic resource or thread, just something that gives us the basics and a place to start?
Page «Previous 1 2 3 4 Last »