Get all your news in one place.
100’s of premium titles.
One app.
Start reading
Tom’s Hardware
Tom’s Hardware
Technology
Hassam Nasir

Nvidia's PhysX and Flow go open source — Running legacy PhysX on RTX 50 may be possible using wrappers

PhysX.

Nvidia's PhysX and Flow SDKs are now completely open-source under the permissive BSD-3 license. If you've been a part of the developer community, these libraries have been open-source since late 2018, except for the key GPU simulation kernels. Releasing the source code for these kernels paves the way for game developers to integrate custom and highly optimized variations of PhysX and Flow, while the modding community might see this as an opportunity to run legacy PhysX code on unsupported RTX 50 GPUs through compatibility layers.

PhysX is a real-time physics engine that offloads complex calculations to your GPU, capitalizing on its parallel processing, and powered under the hood by CUDA. This technology has been employed in a handful of older titles from the 2010s, some notable examples of which are Mirror’s Edge, Batman: Arkham Asylum, Metro 2033, Borderlands 2, and the list goes on.

The fact that most of these games relied on a 32-bit PhysX implementation, combined with Nvidia's decision to discontinue 32-bit CUDA on their Blackwell GPUs, causes the intricate physics simulations that are designed and optimized for parallel computing to fall back to the CPU, crippling performance. Flow is more specialized and serves to power fluid simulation mechanics. Think of fire, gas, and smoke effects.

With PhysX 4.0, Nvidia made public the CPU-side simulation source code of PhysX, but the GPU-side kernels were still proprietary. Limited to the binaries only, understanding the system's internals and customizing it for specific needs was almost impossible. However, with Nvidia's special GPU acceleration sauce now out in the open, anyone can see, study, modify, and build on these existing libraries.

(Image credit: GitHub)

We won't be surprised if modders now work to create a 32-bit to 64-bit compatibility layer to enable PhysX support for older titles on Blackwell GPUs. With access to the source code, it's technically possible to decouple PhysX and Flow from CUDA and port the technology to hardware-agnostic platforms like OpenCL/Vulkan to enable support for AMD and Intel processors, but that's much easier said than done.

For the most part, PhysX is a dead technology for games and has been superseded by alternatives; for example, Unreal Engine 5 uses the new Chaos Physics engine. However, access to the PhysX's GPU kernels and the shader simulation code for Flow is likely to have far-reaching impact for graphics engineering, robotics, architecture and design, animation, and the list goes on.

Sign up to read this article
Read news from 100’s of titles, curated specifically for you.
Already a member? Sign in here
Related Stories
Top stories on inkl right now
One subscription that gives you access to news from hundreds of sites
Already a member? Sign in here
Our Picks
Fourteen days free
Download the app
One app. One membership.
100+ trusted global sources.