Timed with the opening of E3, NVIDIA earlier this week announced that its PhysX 3.0 SDK is prepared for developers to snatch, and as the major version number would suggest, there’s lots that NVIDIA brings to the table here. Perhaps of most importance, the entire engine has been rewritten, which should result in a higher level of efficiency, bringing forth much improved performance.
Most often, if a software platform offers a good level of modularity, it’s a major plus, and for that reason, 3.0 brings that aspect to the table. I’m not too sure how deep its module-based architecture goes, but developers should be able to fine-tune what they need PhysX to handle while ruling out what they won’t.
With 3.0, NVIDIA had a goal of delivering an SDK that would be able to handle games of the future, those in particular which feature super-large levels. One such feature is the ability to combine multiple actors (PhysX-related object) into an aggregate and allowing the computation to be handled during the broadphase stage (the initial step for collision detection) of the computation, reducing overall load.
Improved multi-threading capabilities also make it to 3.0, with more cores of the CPU able to be tapped while PhysX is being exploited, resulting again in “greatly” improved performance. As it seems, developers will have the ability to pick and choose how to use multiple CPU cores to deliver better overall performance (or greater level of effect). This will likely result in more games offering the ability to choose between multiple PhysX intensity levels, rather than just have an on or off option.
Of course, an SDK is useless without some good tools, so for that, NVIDIA has improved those included in 3.0, with a major focus on making it easier for asset creators to build the most PhysX-complementary objects/models possible.
With 3.0 out the door, developers can begin to get to work on the updated features and improve the performance in their games, but it could be a while before we see the results with a published game. This 3.0 release affects all of the supported platforms, though, so the sooner devs step-up, the better.