Advertisement

You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

AMD supports OpenCL Bullet

15

logo_phpBB.gifAccording to 'Bright Side Of News', AMD have offered their support in the development of an OpenCL version of Bullet, the open source physics library. Bullet also powers Blender's game engine physics.

From Bright Side Of News:

Bullet Physics Library is an open source physics library that is now getting translated into OpenCL, thanks to the effort of companies such as AMD [who offered support to developers]. Somehow, we feel that this announcement was the highlight of the launch event for the upcoming Evergreen generation of graphics cards.

In case you wondered, according to Game Developer Magazine world's most popular physics API is nVidia PhysX, with 26.8% market share [if there was any doubt that nVidia PhysX isn't popular, which was defense line from many AMD employees], followed by Intel's Havok and its 22.7% - but Open sourced Bulled Physics Library is third with 10.3%. We have no doubt that going OpenCL might be the golden ticket for Bullet.

Link

About the Author

Avatar image for Bart Veldhuizen
Bart Veldhuizen

I have a LONG history with Blender - I wrote some of the earliest Blender tutorials, worked for Not a Number and helped run the crowdfunding campaign that open sourced Blender (the first one on the internet!). I founded BlenderNation in 2006 and have been editing it every single day since then ;-) I also run the Blender Artists forum and I'm Head of Community at Sketchfab.

15 Comments

  1. Well, now there is even more reason for blender Development to head in thi sdirection. With so much talk of this Opencl over at the blenderartists forums this would be the icing on the cake to make a few Devs. getting on the ball with this. I am sure we would be more than willing to form another donation fund for the integration of it.

    Good to see big business see the good side of opensource.

    And congratulations to all the bullet devs for getting AMD behind them

  2. Bullet is a very good physics engine! Thats great news and a big step forward for AMD. Btw. i also use Bullet and recommend it over PhysX - now more than ever!

    And, you know - its better for the competition to use open software ;)

  3. I don't think PhysX or Havok are in a world of pain just because Bullet get OpenCL.

    Because Bullet stays open source, it can only go to OpenCL (which is open sourceish too). But game developpers (at least North Americans) have an unbound devotion to Microsoft and DirectX (which explain why Linux zealots and Mac users are so bereft in big name games). And precisely, Microsoft is lobbying DirectCompute which is to OpenCL what Direct3D is to OpenGL. If PhysX and Havok add support to DirectCompute as well as OpenCL, I don't think game developpers will adopt Bullet "en masse" (but 10% is not bad at all...).

    On the other hand you can't blame developpers when you know that Windows represent (still?!) 80-90% of the market, and mac and linux share the rest...

    That being said, I'm happy to hear that Bullet will acquire more raw power with OpenCL. It's something I've been expecting for some time since the developpers of bullet made that demonstration of GPU accelerated physic engine.

    BUT...

    - More support would be nice (It's hard for newbies to get to learn anything when nobody ever answer questions and docs/tuts are scarce for people starting from the ground up)
    - Interface to popular languages would certainly be a plus (PyBullet + Blender would be awesome, I know there are interfaces with Java, but common... java+blender = :( )
    - Better implementation of Bullet in Blender outside of the game engine. Game developpers are not the only ones interested in using ragdolls !!!!! We demand Armature+Bullet !!!!!!!!

    I don't know for other people, but these are the points I would like to see solve in a near future if Bullet want to earn my love :), even if Bullet is already awesome as it is...

  4. OpenCL isn't a replacement for OpenGL, it just makes optimizing parts of your program easier for multicore and stream-processing-vga computers.

    If project Durian wants to render on their own renderfarm in 4k, with support for micropolygons, in a 6 month timeframe etc, they're going to either have to pay tens of thousands of dollars for a large cluster of machines, OR simply re-code the Blender Internal renderer to OpenCL and use only 8 or so top-of-the line graphics cards. The performance/price ratio for video cards is better than cpu's. For example, one single nVidia 8800GTX has about the same amount of raw processing power as the worlds best supercomputer in 1994. (~500Gflops, theoretical for a mere $100USD) Let me point out that the 8800GTX is about 3 years old now, newer cards (specifically Ati's dual gpu cards) would have much, much more power. (Mind you, all communication is over a dog slow pcie bus)

    OpenCL is also based on C99 and blender itself is in C.

    I could rant on about the benefits of OpenCL etc etc, but only time will tell if one of the developers has enough free time to look at the specification documents and actually learn how to use OpenCL.

  5. I'm most interested in as to why render engines aren't utilising such things as CUDA and/or OpenCL to accelerate the number crunching. It's almost as if the cg industry doesn't want to think in render power outside of using cpus. Realistically I'd expect this to be more a case of not pinning your app/code to a particular brand of hardware. Along with the needed learning and dev time of the new tech, there's precious little out there about multicore methodologies for the beginners in the field, maybe for a good reason! OpenCL would be interesting to see if it could make it's way into simulation up-ressing and the likes (aka like sidefx seem to be able to do on the farm)

    Nice work from AMD though, they seem (obviously) more active on the OpenCL front going on my initial impressions and what I can read about it all.

  6. Actually, it looks like I was correct. Here's a message from the creator of Bullet which clarifies things.
    -------------------------------

    Yes, we are implementing OpenCL Physics and test with all manufacturers (Apple Snow Leopard, NVidia, AMD/ATI, Intel). We already received confidential implementations, but they are not publically available indeed as lvella mentioned. Alternatively, Bullet's MiniCL stub can process the kernels on single or multi-core CPU, for platforms that don't support OpenCL.

    Expect some preliminary version around September timeline. This includes simplified versions of broadphase, narrowphase collision detection and constraint solver all running in OpenCL kernels on GPU or CPU. By the end of this year, we drop the simplifications and use the actual Bullet algorithms for the OpenCL kernels.

    Thanks,
    Erwin

  7. Well, I've been a long-time nVidia fan, but I think it may be time to start using AMD/ATi cards.

    Does anyone know the current status of ATi's Linux driver support?

  8. Basically:

    OpenGL 3.2 + OpenCL = Direct3D 11

    So at some point Blender will have to support OpenGL 3.x while still keeping the legacy OpenGL 1.x / 2.x code.

    This is great news and has plenty of potential.

    There is already some OpenCL support in Bullet 2.75.

  9. Just for reference guys, the BEST core i7 available does ~51.2 Gflops.
    2009 core i7 = ~51.2Gflops
    2006 Nvidia 8800GT = ~500Gflops

  10. Could they just speed up to provide a respectable gfx drivers for our dear cards???

    OpenCL i don"t care if can't only get a correct display!

  11. Can someone point me out some programmer's guides for Bullet? I really can't start using it with an API Reference.
    Is there a tutorial somewhere?

    Thank you.

  12. If AMD will acquire Bullet Physics and make it non-open source then the world of 3d physics is divided into 3.
    Nvidia - Physx, Intel - Havok, AMD - Bullet.

    This can make developers struggle!
    Making Bullet as open-source can make them happy because this can be implemented in either NVIDIA,Intel or AMD graphics engine, so developers will stick to Bullet as their physics engine.

    In the near future if the 3 physics SDKs fused as one that could be named

    Phybullvok Engine™
    hahaha funny name

Leave A Reply

To add a profile picture to your message, register your email address with Gravatar.com. To protect your email address, create an account on BlenderNation and log in when posting a message.

Advertisement

×