PDA

View Full Version : physics documentation


vadrian
10-01-2004, 04:47 PM
I want to start playing with the physics models in vizard (i know, i know, its not done yet), but aside from whats in the example script, I don't know what it is capable of. Where can I find documentation on methods/params/etc? Specifically, what kind of bodies can I make to do the collision detection (or multiple spheres to approximate a non-symmetrical object)

adrian

tobin
10-20-2004, 11:29 AM
What you get from Vizard's physics engine is essentially a wrapper around an open source project called Open Dynamics Engine. We expose many of its functions and parameters. If you want to get an idea of what's it's capable of generally, then look here:

http://ode.org/

Our implemenation of this is truly in an alpha stage right now and is likely going undergo a significant re-write of the calling syntax, but as much as possible we'll try to maintain backward compatibility with the current calling syntax. Keep in mind that we only support part of the ODE package.

You should look at the two sample scripts we provide, physics1.py and physics2.py, to get an idea how things work. Unfortunately, that's all we can offer at this point in terms of helping you find out what components of ODE we're supporting. If you have specific questions, you're welcome to post again. Otherwise, thanks for your patience and you'll have to wait until early '05 when we release the physics engine officially and provide documentation.

Eunice
11-25-2005, 07:42 AM
Originally posted by tobin
You should look at the two sample scripts we provide, physics1.py and physics2.py, to get an idea how things work. Unfortunately, that's all we can offer at this point in terms of helping you find out what components of ODE we're supporting. If you have specific questions, you're welcome to post again. Otherwise, thanks for your patience and you'll have to wait until early '05 when we release the physics engine officially and provide documentation.

Is the physics engine and doc released yet? I couldn't find any doc about that in 2.51c.

I wonder is it possible to integrate Novodex SDK with Vizard for better collision detection? Thanks.

tobin
11-28-2005, 10:04 AM
As you've noticed, our efforts towards polishing the physics engine has been superseded by other projects. At this time, all I can offer you in terms of documentation is the function declarations that can be found in your Vizard installation folder within the file called:

viz.py

Search for "Physics Declarations" and you'll find a list of all available functions and their parameters.

Please take care to not modify the viz.py file as you could make your entire Vizard installation unstable.

Also, please note that because at this time physics support is not an advertised feature, we cannot guarantee that its future implementation will be compatible with the pre-release support found in Vizard 2.x versions.

Regarding Novodex, I'm not intimately familiar with it but if you have a Vizard Development license then you are given MSVC header files to link into Vizard's scenegraph. From this, there should be no reason you can't integrate a more sophisticated collision detection engine. We'd be happy to offer assistance with interfacing through our SDK.

Eunice
12-09-2005, 09:18 AM
Is it possible to get a more detailed specification of physics API? The Physics Declarations in viz.py are not clear enough about what each parameter means. For example, what a,b,c,d means in collideplane(a,b,c,d)?

farshizzo
12-09-2005, 11:54 AM
Hi,

This function specifies an infinite plane with equation: a*x+b*y+c*z = d

Basically, (a,b,c) represent the normal vector of the plane and, d represents the distance from the origin. (0,1,0,0) will represent a plane facing upwards at the origin. (0,1,0,2) will represent a plane facing upwards 2 meters above the origin. etc..

Eunice
01-04-2006, 04:15 AM
Will you please explain this in detail? We do have a couple of Viz development licenses.

Shall I import .dll generated by MSVC in python script or what else? Thanks.

Originally posted by tobin
if you have a Vizard Development license then you are given MSVC header files to link into Vizard's scenegraph. From this, there should be no reason you can't integrate a more sophisticated collision detection engine.

farshizzo
01-09-2006, 11:16 AM
Hi,

The normal vector (a,b,c) is the direction the plane faces. So a ground plane will be facing upwards along the y-axis. The vector for this would be (0,1,0). If you wanted a plane to face along the x-axis then the normal vector would be (1,0,0).

The last parameter is the distance the plane will be offset in the direction of its normal vector. If your plane is facing upwards and the value is 5 then the plane will be 5 meters above the origin.

Is there something specific you are trying to accomplish with planes that you need help with?