Game Development Community

Newton Physics Engine integrated (Part 1)

by William Bryan · in Torque Game Engine · 03/19/2004 (3:39 pm) · 54 replies

Ive integraded the 1.01 version of the free Newton physics engine with Torque (www.physicsengine.com)

Ill try to get a demo of something available, but below is the list of calls available for those of you who are physics junkies.

World interface
NewtonCreate Create an instance of the Newton world.
NewtonDestroy Destroy an instance of the Newton world.
NewtonUpdate Advance the simulation by an amount of time.
NewtonSetMinimumFrameRate Set the minimum frame rate at witch the simulation can run.
NewtonDestroyAllBodies Remove all bodies and joints from the newton world.
NewtonSetWorldSize Set the size of the Newton world.
NewtonSetBodyLeaveWorldEvent Set the event callback function to be called in the event a body escaping the limits of the world during simulation time.
NewtonWorldFreezeBody Remove the body from the active simulation list.
NewtonWorldUnfreezeBody Add the body to the active simulation list.
GroupID interface
NewtonMaterialGetDefaultGroupID Get the value of the default MaterialGroupID.
NewtonMaterialCreateGroupID Create a new MaterialGroupID.
NewtonMaterialDestroyAllGroupID Remove all groups ID from the Newton world.
Material setup interface
NewtonMaterialSetDefaultCollidable Set the material defined by the interaction between two physics groups to be collidable or non-collidable by default.
NewtonMaterialSetDefaultFriction Set the default coefficients of friction for the material defined by the interaction between two physics groups.
NewtonMaterialSetDefaultElasticity Set the default coefficents of restitution (elasticity) for the material defined by the interaction between two physics groups.
NewtonMaterialSetDefaultSoftness Set the default softness coefficents for the material defined by the interaction between two physics groups.
NewtonMaterialSetCollisionCallback Set userData and the functions event handles for the material defined by the interaction between two physics groups.
Contact behaviour control interface
NewtonMaterialDisableContact Disable processing for the contact.
NewtonMaterialGetContactUserData Get the userData set by the application when it created this material pair.
NewtonMaterialGetContactNormalSpeed Calculate the speed of this contact along the normal vector of the contact.
#21
01/12/2005 (11:43 pm)
@Ben - At the moment it is Windows only. Julio won't set a date, but there will be a Mac and Linux port once they get the full feature set for 1.0 finished.
#22
01/13/2005 (1:26 pm)
This looks great, is 1.0 win released?
#23
01/13/2005 (3:17 pm)
@Sean - Newton you mean? Yes, they have a 1.0 windows version released. In my tests it's more stable than ODE and is really aimed at game development, but if i had physics heavy gameplay and money to burn i would go with Novodex.
#24
01/13/2005 (5:26 pm)
@Tom, I am familiar with Newton, fairly decent engine, from a6 days..
I was wondering if a Torque implementation has been completed.. I will check out novodex.
#25
01/14/2005 (4:59 pm)
I got ahold of Davide, and he's gunna get me set up with the primary integration. and ill go from there ;)
#26
01/14/2005 (6:03 pm)
I would like to see how it has been setup, share the integration notes!!!
#27
01/14/2005 (6:55 pm)
Hehe, well he's gunna get me the code at the end of this weekend. so we'll see then, when i actually have it ;)
#28
01/14/2005 (7:29 pm)
Hey thanks Jeff that would be great!
#29
01/19/2005 (7:50 am)
@jeff any news, were you able to integrate?
#30
09/09/2005 (7:28 pm)
Any more news on Newton and Torque? I'm considering moving my A6 project over to Torque and would love to take Newton along with me...
#31
09/09/2005 (7:51 pm)
I've used newton extensively and it's just a C api, and should integrate well with anything, including torque. I will be using it with torque (recently purchased TGE)
#32
09/09/2005 (8:10 pm)
I was working on this a bit, but I have been switching to Novadex.
#33
09/10/2005 (5:36 am)
@Mike - what's the Novadex price tag?
#34
09/10/2005 (6:30 am)
50k last I heard.

Oh and now its called PhysX.
#35
09/10/2005 (6:36 am)
I've had a bit of a look around at physics engines, the Novadex engine (now called AGEIA PhysX Engine) has a lot of good demo's and will support the PhysX chip. You may be interested in ODF which is an opensource framework written by AGEIA, it supports the Novadex engine and ODE, it adds scripting, etc. There is a discussion thread about this www.garagegames.com/mg/forums/result.thread.php?qt=24912.

Some useful links:-
www.ageia.com/
www.physicstools.org/

This would be cool if it was integrated in TGE, apparently the original PhysX demo's were written in Torque.
#36
09/10/2005 (8:23 am)
I contacted them about Novadex/PhysX, and they said that as long as I 'properly' support their PPU Chip (IE, the game is better signifigantly with it, they have criteria), they will offer me the SDK.
#37
10/12/2005 (10:27 am)
Just to let you all know Newton is supported on Linux and Mac now.
#38
04/06/2006 (1:11 pm)
@Jeff
Did you get the integrated Newton code? Would you be able to pass it along? I'm researching a few different physics alternatives at the moment and having an integrated version to look at would definitely be a plus.
#39
04/06/2006 (4:37 pm)
I agree, Newton would be great in TGE/TSE.
#40
04/12/2006 (2:48 am)
Novodex is free as long as you include support for the physx hardware :)
Id go with that, support for next gen h/w can't be a bad thing and newton is pretty similar to novodex