How NGD works

A place to discuss everything related to Newton Dynamics.

Moderators: Sascha Willems, walaber

How NGD works

Postby kallaspriit » Sun Feb 07, 2010 12:45 pm

Hey Julio, these questions are mainly for you and I thought I'd ask it in the forums instead of via PM, perhaps someone else is also interested and this could be added to wiki for everyone to see and read.

I am writing my bachelor of science degree paper using NGD to simulate vehicles made out of various bodies and joints, remember the Custom joints vehicle and weak joints thread.

I want to write a chapter on Newton Game Dynamics and it would really help if You could explain some aspects of NGD:

1. What methods are you using
- general
- solver
- collision detection
- friction
- ...

2. Why are you using the methods you are
- accuracy vs speed vs ?
- what is good and bad with these methods, what are the limits
- what would be other possible methods, why are you not using these
- how accurate is the engine at simulating real world rigid body dynamics (vs other physics engines)
- what is different about NGD and other engines (why is is better, more exact)

3. How joints work
- how are they implemented
- what are the limitations (for example maximum mass-ratio)

4. Why aren't NGD joints in current implementation stiff enough to simulate the kind of arrangement I wanted to use for my vehicle
- what could solve this problem (you mentioned Fetherstone solver)
- how does Fetherstone solver solve the problem better then currect implementation, what are the limits of using it

It helps if you use the commonly-known names of the methods used so I can find out more about these and reference them in my paper. I would also like reference this thread.

I uploaded my current progress so you can try what I have done so far. The approach is the same but I am using some unrealistic weights of the suspension components (~50kg instead of the ~5 they would really weigh) and I am stepping the physics at 300FPS using the exact solver. You can grab the file (Win32 37,5MB) here.

I really hope you can find the time and will to explain some of the inner workings of this great library :P
kallaspriit
 
Posts: 216
Joined: Sun Aug 14, 2005 6:31 pm

Re: How NGD works

Postby Julio Jerez » Mon Feb 08, 2010 11:36 pm

Are you in a hurry to get answer to these questions? I would like you to wait until we get the Ogrenewt Wraper to a stable state.

I know it is taking a long time because in embark into two very large projects at once (WxWidget and Collada) but I am amost ready to get the new release and
It should be ready by the end of this month at most. When we get the new OgteNet Update teh answers will make more sence.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: How NGD works

Postby kallaspriit » Tue Feb 09, 2010 12:10 pm

I am not in a very big hurry, take your time :)
kallaspriit
 
Posts: 216
Joined: Sun Aug 14, 2005 6:31 pm

Re: How NGD works

Postby Julio Jerez » Tue Feb 09, 2010 1:23 pm

I just finished part two of collada import/export.
now is can load simple descrete mesh and also skin meshes, plus it can also load complete scenes.
I also have all of the simple demo going in the SDK but I needed the Skin loader for the RagDoll, vehicles and all other demos.
My guess is by this weekend I will complete all of the SDK demos, and then it is upto adding some cosmetic to the inteface.
next week I am back with OgreNewt and I will add the Collada loader with will load all of the Newton SDK demos as full collada scenes.

plus It will also be able to save stire scenes tah codul eb loade in the SDK.
I know it is a big plan but no as far as you think.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Progress

Postby Julio Jerez » Tue Feb 16, 2010 10:42 am

I made good progress this weekend; I got most of the SDK demo running and the start of most foe the interface to wxWidgets. I can make a prerelease but I hate to release incomplete code.
However now I am at a point where I need the assistant of someone with 2d graphics experience.

Basically I nee a set of Icon to use as Toolbar bottom for the interface, I try to make one in visual studio but I am really bad at doing at doing art.
if someone want to contribute them here are the specifications.
They must be 24 x 24 BMP 16 colors. These are the one I need more immediately.

Show collision
Hide Visual mesh
auto sleep on
Show island
show contacts
multithread on single island
show Profile

The image is left to the person who wants to make it, but make as coll as you can.

On the progress side, I still need to add some rudimentary navigation, but if I do no get it tonight I will post a prerelease anyway.

I also made and MilkShape 3D 1.8.4 import/Export to Newton Collada
MilkShape is a very eassy to use but very limited 3d graphics modeler,
very much it can only handle one single skinned mesh per mode, but it is good to get a minimal Toolchain for Newton.

after I release 1.17 I will make a Python Blender full Collada Scene Export/Expert so that blender can be use as a toolchain with Newton and any graphics engine.
I will also integrate with OgreNewt.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: How NGD works

Postby kallaspriit » Sun Mar 21, 2010 12:52 pm

Great, how is your progress now? Hope to add all this to OgreNewt soon :P

Have you tried the demo? I updated it a bit, you can get it here: http://tasopopsalon.ee/Priit/VD_14.03.10.zip. Hope you'll one day find time to answer the questions in the first post too :)
kallaspriit
 
Posts: 216
Joined: Sun Aug 14, 2005 6:31 pm

Re: How NGD works

Postby kallaspriit » Sun Apr 25, 2010 6:26 am

Hey! Have you tried the demo? Also, have you thought about the questions in the first entry? I could really use this info for my paper and I would greatly appreciate the effort. Would be interesting for others to read too, I imagine :P
kallaspriit
 
Posts: 216
Joined: Sun Aug 14, 2005 6:31 pm

Re: How NGD works

Postby Julio Jerez » Sun Apr 25, 2010 10:52 pm

Oh I did not know you posted a demo. I must it miss your last post.
I will check it out.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: How NGD works

Postby Julio Jerez » Thu Apr 29, 2010 11:55 am

I download the demo and when I try to run it I get this error

OGRE EXECPTION (2:InavlidParamException):problems
finding requested Direct3D driver! in
D3D9EenderSystem::Initalize at
..\src\OgreD3D9RenderSystem.cpp (line 509)


Do you know what that is? is thsi because I do no have soem d3d dll?
I believe I do have d3d 10 installed
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: How NGD works

Postby kallaspriit » Thu Apr 29, 2010 1:47 pm

It expects DirectX9c, a system with DX10 should probably have it too. You can try to delete config/ogre.cfg if it exists and if that does not work, update drivers or try OpenGL version (might have visual problems, using DX myself). Hope you can get it to work. If you do, watch closely the on-screen help to try different features. If you dont, let me know and I'll try to help :)
kallaspriit
 
Posts: 216
Joined: Sun Aug 14, 2005 6:31 pm

Re: How NGD works

Postby Stucuk » Thu Apr 29, 2010 2:23 pm

Unless Direct X 9 is put on a Vista/7 system by someone then it should only have DX 10 installed. Just need to download the DX9 setup from Microsoft and run it.
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: How NGD works

Postby Julio Jerez » Thu Apr 29, 2010 3:06 pm

Stucuk wrote:Unless Direct X 9 is put on a Vista/7 system by someone then it should only have DX 10 installed. Just need to download the DX9 setup from Microsoft and run it.

Ha that mus be it, I have Window 7 in my sytem. I will try DX9 them, thanks
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: How NGD works

Postby Julio Jerez » Fri Apr 30, 2010 2:03 am

Wow dude this is awesome, I did not expect to be this cool, dude congratulations. KICK ASS
Is this using Newton 2.0 iterative solver?

I can use this to work on that stuff we talk about, Manking a secund kinematic solver to fix postion errors on the joints.
The way you described my impresion was that it was much worse than it appears to be in my first run.

I am working on fixing some bugs now but when I finish that I will take a crack at that problem using this demo.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: How NGD works

Postby kallaspriit » Fri Apr 30, 2010 6:29 am

It is using NGD2 exact solver and because of the joint mass-ratio limitations, some of the masses are unrealistic - the suspension arms are 50kg instead of something like 5kg and wheels are 50kg but should be lighter too.

Try to replace media/vehicles/dev.scene with this file, where more realistic masses are used (5kg for arms, 15 for wheels). You will notice the joints getting too soft.

I'm glad you like it, I hope there is something that can be done about the weak joints to make developing this sort of applications with NGD even better :)
kallaspriit
 
Posts: 216
Joined: Sun Aug 14, 2005 6:31 pm

Re: How NGD works

Postby Julio Jerez » Fri Apr 30, 2010 7:21 am

Oh yes I see the difference now, specially when the tire collide.
and I can see how even wi teh last mass rations, at heght speed the first model shpul start to break down too.

Ok let see what I can do, you provide a real working demo, it is my turn now.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Next

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 0 guests

cron