NVIDIA open-sources PhysX’s GPU simulation code
NVIDIA has fully open-sourced the SDK for PhysX, its real-time physics system, and Flow, its gaseous fluid simulation system.
Whereas previous releases came with compiled binaries for GPU acceleration, the releases of PhysX 5.6 and Flow 2.2 include full GPU source code.
A game physics technology now used in offline simulation tools for 3ds Max and Maya
Initially a real-time dynamics system for games, PhysX is supported in game engines including O3DE and Unity, although it has been superseded by Chaos physics in Unreal Engine 5.
However, it is also now used as a physics engine in a number of offline simulation tools, including 3ds Max particle and physics add-on tyFlow and Maya crowd simulator Golaem.
Although primarily a rigid body dynamics system, it also supports soft bodies and position based dynamics for granular materials and liquids.
Now fully open-sourced, including GPU simulation code
NVIDIA originally partly open-sourced PhysX in 2018, adding gaseous fluid simulation library Flow in 2022.
However, in previous releases, only the CPU-side code was fully open-source: GPU support was provided via pre-compiled binaries.
The latest releases – the PhysX 5.6 SDK and Flow 2.2 – include the GPU source code, making both technologies fully open-source.
That means that it would be possible for developers integrating PhysX into their tools to support AMD or Intel hardware for GPU acceleration, although it would be a lot of work to do so fully.
NVIDIA’s blog post notes that PhysX contains over 500 kernels written for CUDA, its GPU compute framework.
Availability and system requirements
The source code for PhysX SDK 5.6 is available on GitHub under a 3-clause BSD licence.
It can be compiled to run on Windows 10+ or Linux, and is tested on Ubuntu 20.04+. You can find build instructions for Windows and Linux on GitHub.
The source for Flow 2.2 is provided in the same repository, also under a 3-clause BSD licence.
Read NVIDIA’s announcement that it has released GPU source code for PhysX and Flow
Download the source code for PhysX SDK and Flow from GitHub
Have your say on this story by following CG Channel on Facebook, Instagram and X (formerly Twitter). As well as being able to comment on stories, followers of our social media accounts can see videos we don’t post on the site itself, including making-ofs for the latest VFX movies, animations, games cinematics and motion graphics projects.