3D Physics SDK > PhysX
The PhysX SDK and related hardware acceleration is designed as a method for realtime physics calculations, rather than expecting every developer to code from scratch. The obvious advantage being that the developers of a middleware engine, dedicated to it, can fully optomise their algorithms to a point no single VR dev team has the time or resources to do on a single subsystem such as physics.
Originally developed by Ageia as a pure software development kit, PhysX was integrated into new nVidea graphics cards as hardware, in early 2008.
This adaptation was made possible by the addition of a PPU or dedicated physics processing unit to Nvidea Gforce 200 series cards and upwards. The net result of course being that all physics calculations, performed on dedicated hardware, execute far faster than they could in software, and are removed entirely from the main processors' calculations.
This for the first time, makes physical interactions in both games and virtual environments a realistic proposition on home PCs.
According to nVidia, physX's hardware based capabilities allow for:
First card to support this system is the GeForce GTX 280. At this time, it is unclear if the GeForce GTX 260 will as well.
At this time, both the PhysX engine and SDK are freely available for Windows, and most flavours of linux.
The free version cannot be modified, however it is optomised to work with hardware, and is lisenced for use in commercial work.
There is available a paid license program which enables developers to modify the SDK to suit their needs.