COLLADA Physics and X3D (split post)

Physics APIs, Physics file formats, Maya, Max, XSI, Cinema 4D, Lightwave, Blender, thinkingParticles™ and other simulation tools, exporters and importers
KenB
Posts: 49
Joined: Sun Dec 03, 2006 12:40 am

COLLADA Physics and X3D (split post)

Post by KenB »

I'm overly impressed by the success of Collada. It started as a "transport/conversion format" and as such became useful in just 1-2 years. In addition it seems to be gaining in popularity not only as a transport format, but also as the main format in many projects/companies/products.

X3D on the other hand has been around for many years now, and I haven't had the opportunity to use it in practise even once.

Collada physics is also very useful, but today I found out that there's also a X3D Physics format.

To me it sounds like one standard too much to have both Collada and X3D, but what do I know.
I'm not interested in starting a flame war about this, but hoping that someone perhaps could explain differences in initiative, purpose, technology etc?

What are the current trends in this area?
User avatar
Erwin Coumans
Site Admin
Posts: 4221
Joined: Sun Jun 26, 2005 6:43 pm
Location: California, USA

Post by Erwin Coumans »

Khronos announced this week about collaboration between Web3D/X3D and Khronos/COLLADA. This means we are collaborating, and X3D physics will converge towards COLLADA Physics. The idea is that X3D applications will be able to use authoring tools that export COLLADA Physics.
Check out this press release:
http://www.khronos.org/news/press/relea ... operation/

This week COLLADA and X3D people gathered at the ACM Web3D Symposium in Perugia, Italy. You can check my my COLLADA Physics paper, published at the event. It was co-written by Keith Victor from the X3D community (Media Machines/Flux Player).

Good timing of your posting, KenB :)
Cheers,
Erwin
Julio Jerez
Posts: 26
Joined: Sat Jul 23, 2005 12:56 am
Location: LA

Post by Julio Jerez »

Hi Kenb.
I am glad you like Collada, I do too.
Maybe now you will have the time to make that battery of test you promised on that other unfinished discussion.
http://continuousphysics.com/Bullet/php ... highlight=
I decided to give higher priority to the implementation of the helper library to support Collada 1.4.1 files with Newton.
https://collada.org/public_forum/viewto ... 7a18f24902
Since Collada allow for some sort of standard (I like to call it same initial condition for every test, um that sounded like it is fundamental principle in numerical analysis and scientific method, but hey that's just me). Maybe this time the next “battery test” will be more available to the participant.

BTW KenB I run some of the collada files in this archive: http://www.codesuppository.blogspot.com/
that were referenced to me in this convesation when I started the implemenation.
https://collada.org/public_forum/viewto ... c47cd#1782

I do not know if the files are still there, but I think that since you are so concerned with the correct modeling of conservation on momentum and and fiction, I thought that you will be glad to know that there are about a dozen files there most of them designed to show the stacking superiority of some engine (I think I get it, some engines stack lots of boxes) but two in particular are designed to show friction and restitution behaviour. One of them is very interesting, it consists of a series of pairs of box and a sphere at different hight paced in a role, each pair with different restitution for 0 to 1.0
I think Newton managed to reproduced the effect as intended for a long time before numerical errors build up make the simulation drift. It also passed the friction test, in fact I think it passed all of them.
I most say that it does slow down on the test designed to show how fast some engines are at huge stacking, but I am also let you know that it does not fail any of them despite running without the so call called auto sleep feature. (in fact there is not auto sleep on the viewer)

Note:
In case you do not believe me (I asume you do not) and you decide to try by yourself with some files or even better with the "battery test" of yours. It is possible the first time you open any of them they do not show up. Before you arrive to the conclusion that I am as wrong now as I was in your first tests, I would like to let you know that the reason they would not be visible is that most those files are not really Collada 1.4.1 compliance. Not at least according to the scheme and the very own validations tools.
Because I do not want any sort of misunderstanding, I made some special additions, to the viewer, like using the collision proxies as visual geometries, no using the camera parameter specified in the file and instead placing the camera to the center of the scene. Plus you may want to disable simulation before loading, so that you can position the camera very close and take very good look and tell me what I am doing so wrong maybe with your help I can make some improvement.


----------------------------
On another note I was reading the Collada physics paper that was published at the ACM web3d symposium and I could not help but noticed that there seem to be a recurrent pattern when the member of the Collada group speaks or writes about collada.
They say that Collada is intended to be a standard for physic and graphics, however there is not reference “most popular graphics engine” when speaking of the advantage of using collada for graphics.
For examples it does not mention engines like Unreal, quake, Ogre, and others despite the fact that most of those engines do support callada in their tool chain.
When It comes to describe the physics part however, there seems to be an emphasis in pointing out which physics engines are popular and which aren't
This is what it said in the front page
Rigid Body Dynamics
Rag Dolls
Contraints
Collision Volumes
Enables data interchange between Ageia (PhysX), Havok, Bullet, ODE and other game physics middleware
and again this paper re-inforce the same message.
To be practically useful, a standard physics representation needs to
map well to functionality of popular rigid body dynamics engines
[Ageia] [Havok] [Bullet] [Open Dynamics Engine].
So I was trying to figure out what was the criteria for picking these engines in particular. I was thinking of:
  • -It is not Open source because two out of the four are close source.
    -It is not commercial because two are free with not commercial license.
    -It is not Collada integration because Havoc and ODE do not have it.
    -I am not sure if real popularity in turns of user base, unless there is some survey I was not aware off reported some facts.
I was under the impression that collada was a free standard, and as such any user of any physics or graphic library can use it to import and export files. In not way, shape or form the integration of Collada into a physics or graphics engine will make that particular engine better or worse.

The article also list a series of features an engine must support in order to successfully comply with collada specification and again none of the engines in the list support all of them. But guess what Newton do and surpasses it.
There are about a dozen physics middleware developers that are all trying to succeed marketing their product for whatever reason, but for some reason Collada organization decided to ignore all of them, and I can not figure out what makes these other engines so different that no one of them qualify to be even mentioned.
I do know that when a physics library is percieve to be inferior to any of the listed engines these same members do not hesitate to go to great detail making the comparison, in some cases it is ridicule and made fun off.
In fact I do not even think it matters if a library have to be better or worse than any other, for all I know Collada is not any IEEE organization in charge of deciding what a physics engine should or should not do.

I cannot speak for the rest of the developers but I know that not matter how particular the definition of popularity used to select these specific engines over and over again in each presentation, It is almost impossible that in the search none of these user showed up. http://www.physicsengine.com/links.html

I would hate to think that there is some kind of subliminal message delivered in these papers and presentation, and it is better to ignore other developers by sweeping then under the rug rather than facing the real facts.
User avatar
Erwin Coumans
Site Admin
Posts: 4221
Joined: Sun Jun 26, 2005 6:43 pm
Location: California, USA

Post by Erwin Coumans »

Hi Julio,

You recent efforts of supporting COLLADA Physics in Newton are highly appreciated.

Admitted the list of physics engines was not exhaustive. If Newton's COLLADA Physics support existed before the paper was written, Newton would definately be included in the list. Note that Havok developers did contribute to some discussions in the COLLADA Physics working group.

During the presentation of the paper, the slides did mention Newton as one of the engines supporting COLLADA.

Thanks for your support,
Erwin
Julio Jerez
Posts: 26
Joined: Sat Jul 23, 2005 12:56 am
Location: LA

Post by Julio Jerez »

You recent efforts of supporting COLLADA Physics in Newton are highly appreciated.
Well thank you for your appreciation (I am not sure if it is the Collada representative or the Bullet representative talking).
You see it is not a matter of appreciation it is a matter of being honest and impartial. I believe a check over the collada forum will prove that I am right in the timing.
It will help a great deal if you remember that when you are representing Collada you are representing a neutral standard instead of promoting Bullet.
A review of the libraries listed in that paper and in Collada front page will show that Havok and ODE in fact do not support Collada in any way shape or form.
A havok employee participating in a discussion does not means Havok is endorsing it.
What you are saying is that Havok saying something about Collada warrant them a pass to be included,
but that developers that are working with it for over half a year aren't good enough to be even mention, isn’t that a bit of hypocrisy?
Basically everything is said in that paper is false advertisement and a complete misrepresentation of Collada spirit.
But perhaps this is not the place to discuss that, I just wanted to make the formal protest.
Again thank you for the appreciation. 8)


I however would like that Mr Kenb answer my questions. He never really did, instead he side stepped them and when to say that the only good engine is the one hi was using CMLAB or what ever.
I see that his student's thesis start to be quoted as the source of material for more students thesis using his proposed "baterry of test". And against my libraries is selected as "comedy relief engine".
It makes me wonder why it is that if these people see that my library is so wrong, and given that there are some many better libraries, they continue beating the dead horse.
Mr Kenb please answer. As you can see I am quite disappointed at you. You know I do have a forum I invite you to go there maybe we can discussed these points there.
Hey maybe we can also apply that “battery of tests of yours” to that simulation you are making that is capable to simulate 10000 rigid bodies in real time.
KenB wrote:....
My experience is though, that it is easier to simulate 10.000 rigid bodies in real-time than 10.000 sph particles in real-time.
....
Since it appears that you appointed yourself the Judge and Critic of physics libraries and you set the bar high for other engines with that "Battery of test of yours",
I assume we should expect nothing less than: arbitrary stacking with perfect conservation of momentum and correct isotropic coulomb friction.
After all you are only interested in simulations for "Virtual Reality" therefore it is only natural to expect those minumum standards.
more on that overhere: http://continuousphysics.com/Bullet/php ... ight=#3753
I am sure it will pass your own "battery of tests" with flying colors 8) .
KenB
Posts: 49
Joined: Sun Dec 03, 2006 12:40 am

Post by KenB »

Thanks for the update on X3D and Collada. This is good news!