PDA

View Full Version : Opinions about Bullet Physics



cocoflop
16-05-2007, 08:34
Hello,
In first, I'd like to say that ODE is a classic standard solution for physics. In the other hand, Bullet Physics is a modern library that is under constant development and it already has some advanced features against ODE (like concave bodies, Binary space partitioning).

I'm interested to look into it further, if I come up with something in the following 2-3 days I'll keep you informed. ;D

Here you can test some executables (these are 2.30 version, existing SDK 2.50)
http://downloads.sourceforge.net/bullet/Bullet-2.30demos-win32.zip?modtime=1163353897&big_mirror=0

Sourceforge page
http://sourceforge.net/project/showfiles.php?group_id=147573

Petr Schreiber
16-05-2007, 10:53
Hi cocoflop,

I have downloaded the samples.
Features of this engine are very exciting, but I have little trouble.

As I have bought XPs ( still not installed, when I will have time to do it I don't know :) ) I have improved my PC to have total 768MB of RAM. Quite a lot I think :)

When I have been running firefox and few other tasks, I had 360 MB free physical memory.
With this setup I tried proggies and none could run because of "too low memory" !
If I imagine I had 320 MB total before month, I would have no chance to run any of these, even the most basic.

So I restarted PC ( 530 MB free after reboot ) and tried samples, which now kindly allowed to run :)

I must say they are quite impressive, I like destruction of OBJ object ;)

But there were problems too - "CcdPhysicsDemo.exe" ran extremely slow, "ColladaDemo.exe" did not managed to load file and "GPUphysics.exe" GPFed.

So I am not sure what to think about it. It is probably good choice for really modern hardware but memory requirements are huge, which scares me a bit.

On which PC did you tried it ?


Bye,
Petr

cocoflop
16-05-2007, 13:44
Ok, take your time setting up your PC, it's important thing. As your system installation is still fresh and new, I'd recommend you to use a system capture software (like ghost), it might save your day in disaster time. :P

Anyway, here a few details about my PC from a dxdiagnostic tool...
Operating System: Windows XP Professional
Processor: Intel(R) Pentium(R) CPU 3.20GHz
Memory: 1022MB RAM
Card name: RADEON 9800 PRO
Display Memory: 128.0 MB

I was a bit lucky when I bought this PC in November 2006 from a friend.
My previous PC (which one day it burnt) was an Athlon 2600, 512 MBram@266, nVidia FX 5200. It was a fine PC that I would keep for the next 2 years...

If you're interested then we could cooperate to make this wrapper important feature with examples, samples, documentation.

Physics might not be so important for everyone but collision and detection are crusial. So collision with BSPs, would actually help us from reinventing the circle, not just the wheel ;D.

Petr Schreiber
16-05-2007, 14:57
Hi cocoflop,

my PC is little bit grandpa but its my pet :)

Windows ME
AMD Duron 850 MHz
768 MB RAM @133 MHz ( this is maxximum I can get from my motherboard )
ATi Radeon 9600 128 MB

Thanks a lot for your offer regarding creating the wrapper.
It could be interesting to do the headers for thinBASIC, but I am still little bit worried about user base :(

Lot of people I know has worse PC than is mine, so they would have big trouble running the scripts because of Bullet physics memory consumption and processor intensive test.

ODE is not something I love, but it is quite working :)
I need to think about it more and check out Bullet physx web.


Bye,
Petr

kryton9
16-05-2007, 21:19
I played all the demos from Bullet Physics. They played fine. I didn't see anything in it different than ODE in terms of capabilities, but that is just from the demos. I never programmed with either of them to see the true differences.

Also the Irrlicht engine works with ODE and with that port coming to thinBasic, having the ODE port sounds like the way to go for now.

However, having more ports and options is never a bad thing. Good luck and thanks for the links and showing me a new physics engine I don't remember seeing before.

cocoflop
16-05-2007, 22:04
Just to pass the information, bullet engine is based on industry proven collision detection and physics features, the head developer had been working at Havok for some years. Do you think that it could be the next big thing? Nobody knows.

The first thing i need to do in order to get started is to make the source ( of bullet physics library) into a DLL. Unfortunately, I don't know if it can be compiled in other way than Visual Studio (which I haven't got), as the whole source is based on a VS project. When I'll have more time in the summer I'll give it a try again, because now it's exams period and I can't find the time... :(

Well kryton, in fact you're correct. :) Visually, both of them seem equal, and that is what does matter mostly. Only a super expert physics scientist programmer could notice the differencies, :P which as I consider myself a hobbyist programmer not care too much.

ODE is preety mature and it could be easily registered as an ISO9002 (I wonder why not yet :)), while in the other hand Bullet Physics is a modern new physics engine.

I'll see later on what can I do.

Petr Schreiber
16-05-2007, 22:17
Hi cocoflop,

There is some C header ( = no objects ) in the SDK, so maybe by converting that to thinBASIC include file you could have working version for test fast done ?

Structure of SDK is a bit complex comparing to few headers of ODE.

Do you plan to do 1:1 translation or module ?


Bye,
Petr

P.S. I didn't know Blender uses Bullet physics...

kryton9
16-05-2007, 22:23
Petr, I didn't know about blender using it. I will have to read more :)

Cocoflop, you can download free express versions of ms vs products:
http://msdn.microsoft.com/vstudio/express/downloads/default.aspx

I still don't understand this conversion process, but Petr does and so he might have found the easy solution if there can be one for you.

Petr Schreiber
17-05-2007, 10:35
Hi,

regarding the memory requirements I was scared of ...
It seems my PC is not in good shape, and reports "too low memory" in some weird cases.
Will test it again when XPs will be installed.


Bye,
Petr

cocoflop
17-05-2007, 13:07
Hi petr,

The easiest way is to rewrite the source code onto thinbasic style, this could take much time though. I still see if I can pack the essential files in a DLL, then I would just wrap the functions in a thinbasic include file.

Petr Schreiber
17-05-2007, 17:04
Good luck,

in case of troubles please ask,
I think it won't be necessary to touch original source code at all,
jut headers.


Bye,
Petr

Michael Hartlef
13-06-2009, 10:04
Sorry to bring up such an old topic but did cocoflop made an include file or an module for this? Do C header files and a DLL exist?

Petr Schreiber
13-06-2009, 11:50
Hi Mike,

I don't think there were TB headers made. But Bullet Physics seems to progress nicely, definitely got a big twist since about one year ago I checked it.

I just downloaded demos which allow use of CUDA, the speed boost is impressive.
I checked some headers too ( http://bullet.googlecode.com/files/bullet-2.74.zip ), but it seems to me it is C++, not C, which limits the use to ... C++ I guess? Because only mechanisms I know for publishing classes to other languages is COM and .NET.

So only way to bring this to TB would be create module in C++, with simple procedural interface. I think.


Petr