Lifelike in-game physics is one of holy grails of the computer gaming industry. I will never forget the dilemmas and dramas that were happening in several gaming dev teams I had the honor contributing, how to make the Formula One cars act real, not just sound and look real. At that time [1990s, early 2000s], it was impossible to realistically simulate objects inside the game, because neither CPU nor GPU had enough horsepower to push realism to that level.
Additionally, the road to physics on PC games has been a long and not exactly a fruitful journey, with Havok and Ageia being the top dogs as this game. We all know how that story ended – Havok got acquired by Intel, while Ageia got snapped by nVidia [after Ageia bought Meqon and Novodex physics APIs].
AMD’s own "road to physics" has certainly been a painful one – the company was always in defensive mode when it comes with physics, with company executives even calling "GPU physics is dead" [later, the statement was clarified with "until DirectX 11, and even then maybe"]. Thankfully, with the development of OpenCL as the CPU+GPU development API, an alternative to proprietary standards is now rising to the plate.
AMD is dedicated to support open physics standards, with Pixelux and Bullet taking the prime spots
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. After all, Maxon chose Bullet Physics Library for its Cinema 4D Release 11.5 [Cinebench R11 anyone?].