How multiplatform is Bullet3?

Elvithari
Posts: 2
Joined: Fri Jul 10, 2015 6:40 pm

How multiplatform is Bullet3?

Post by Elvithari »

Hi everyone!

I've started integration of Bullet into our game engine. The engine is alive and kicking but we want to switch our physics simulation to Bullet. Since our target platforms are Windows, Linux, Mac, PS4 and XBO I'm concerned with Bullet's compatibility with those platforms. I've tried and succeedded in compiling the code for Widows, PS4 and XBO but I'm still not sure if it will work just fine or are there some adjustments I need to do to make it work on all these platforms.

Especially I'm concerned with GPU based Bullet3. I know that it uses OpenCL so is it even possible to run it on my target platforms? I guess XBO needs to use Direct Compute... I have no idea about PS4 so far we haven't done ane GPGPU calculations on PS4.

So will Bullet and its GPU implementation work on all these platforms? If no, is it even possible for a fairly capable but mortal developer like me to make it work on all of them?
User avatar
Erwin Coumans
Site Admin
Posts: 4221
Joined: Sun Jun 26, 2005 6:43 pm
Location: California, USA

Re: How multiplatform is Bullet3?

Post by Erwin Coumans »

The default Bullet 3 version is just C++, and that should be cross-platform.

Ignore the GPU/OpenCL version, it is incomplete and not useful for games at this stage. Obviously consoles don't support OpenCL and most PC machines don't have reliable OpenCL drivers. You could port the code to console such as PS4, but that is a big effort.

The CPU/C++ version should be fine on all platforms.
Elvithari
Posts: 2
Joined: Fri Jul 10, 2015 6:40 pm

Re: How multiplatform is Bullet3?

Post by Elvithari »

Thanks Erwin! I'll stick with CPU/C++ part then. I'm curious now if you're planning to invest efforts in GPU simulation? I know that right now it is just a prototype but I believe that it's quite promising. Do you plan to make it platform independent or are you going to stay with OpenCL?

I'm asking because if we'd hipotetically decide to use the GPU based simulation in the future and also port it to consoles it would be rather stupid thing to do if you're working on the same thing at the same time.