Open Source Simulation Expands with NVIDIA PhysX 5 Release

Discuss (0)

The latest version of the NVIDIA PhysX 5 SDK is now available under the same open source license terms as NVIDIA PhysX 4 to help expand simulation workflows and applications across global industries. You can find this much-anticipated update on the NVIDIA-Omniverse/PhysX GitHub repository. 

A longtime GameWorks technology, PhysX has become the primary physics engine and a key foundational technology pillar of NVIDIA Omniverse. It is a powerful simulation engine currently used by industry leaders for robotics, deep reinforcement learning, autonomous driving, factory automation, and visual effects. For next-generation robotics applications, it will enable high fidelity simulations at real-time speeds that are needed for simulating and testing autonomous machines.

“Having a powerful, open-source tool for physics like NVIDIA’s new PhysX 5 library is a critical part of the realism delivered by the Open 3D Engine,” said Royal O’Brien, Executive Director at the Open 3D Foundation and General Manager of Digital Media and Games at the Linux Foundation.

“As PhysX use cases spread to other important 3D domains like simulation and digital twins, we are excited to see NVIDIA working with open source, allowing everyone to harness the innovation and collaboration that these communities can bring,” O’Brien said.

PhysX has become a key reference implementation of the similarly open source Pixar Universal Scene Description (USD) Physics standard available at PixarAnimationStudios/USD on GitHub. This informed the decision to return to the more permissive licensing terms used for PhysX 4. All CPU source code is available under the simple BSD3 open source license, and NVIDIA GPU binaries are included at no cost.

“This release of the PhysX SDK goes hand in hand with USD Physics, a description of a scene’s physical properties that was co-developed with Pixar,” said Dave Eberle, Tools-Sim Lead at Pixar. “Pixar’s ongoing USD collaboration with NVIDIA and other parties is aimed at enabling creators to imbue physics into their scenes with more ease, and we are excited that the open sourcing of the SDK will accelerate the adoption of simulation behaviors in more creative tools.”

What’s new in PhysX 5 open source

The NVIDIA Flow and NVIDIA Blast libraries, while technically not dependent on PhysX, are now a part of the PhysX product family and licensed together. Flow is now bundled with the PhysX SDK in the same GitHub repo and Blast will also be added soon.

PhysX 5 SDK now supports the capabilities of NVIDIA Flex, which enables various new features. These features include finite element model-based soft body dynamics as well as liquid, cloth, and inflatable objects using position-based dynamics, optimized to run on GPUs. A signed distance field collision feature on GPU has also been added, which allows the user to perform collision detection using a voxelized version of the source mesh, eliminating the need to create a convex decomposition.

Video 1. An NVIDIA Flow dust emitter moving around a scene in Omniverse Create

In terms of new CPU features, PhysX 5 users can now define custom geometries, meaning cylinder shapes or implicit block-based worlds can now be supported. Both CPU and GPU parallel computing performance for large simulations has been significantly improved.

The evolved role of PhysX also brings some fundamental technical changes. Formerly a game physics engine with optimized ports available for a broad range of video game consoles, PhysX is now a high-fidelity GPU-accelerated physics simulation engine used in robotics, deep reinforcement learning, autonomous driving, factory automation, and visual effects, just to name a few.  As a result, video game console ports are no longer available from NVIDIA, though given our permissive licensing, the community is now able to create and maintain ports to such platforms.

Video 2. A digital twin of a kinetic sculpture simulated using gears and cams modeled with PhysX 5

As part of the update, some of the tools and utilities such as digital content creation tool exporters, debugging telemetry and diagnostics, demos, and samples have now been merged into the Omniverse platform.

Advanced demos are no longer bundled with the SDK. Visit the physics demos in NVIDIA Omniverse at NVIDIA On-Demand for more advanced examples of what is possible with PhysX. NVIDIA Omniverse is also where you should look for any content creation tools. NVIDIA is investing in creating the best possible physics toolset in Omniverse, which will continue to evolve and improve.  

The future of PhysX

NVIDIA continues to embrace open source in support of building an inclusive ecosystem. This is a first step in the process of opening up more and more Omniverse source code. As you browse through the source, you might come across some files that have existed as far back as 2001 and can still be used today. 

“PhysX is essential in making video game worlds feel more realistic and believable, not to mention fun. We are excited to see NVIDIA going open source with the latest version,” said Mika Vehkala, Director of Technology at Remedy.

In the near future, watch for source code releases showing how to build a user-modified version of this PhysX SDK into a custom Omniverse extension. NVIDIA also plans to have a full reference implementation of a USD Physics parser and simulation stack available with full source. 

You can access the open source code by visiting the NVIDIA-Omniverse/PhysX GitHub repository , which also includes the NVIDIA Flow library. Watch the latest tutorials on PhysX at NVIDIA On-Demand.

Visit the Omniverse Developer Resource Center and the USD page for additional resources, view the latest tutorials on Omniverse, and check out the forums for support. Join the Omniverse community, Discord server, and Twitch Channel to chat with the community, and subscribe to get the latest Omniverse news.

Follow NVIDIA Omniverse on Instagram, Twitter, YouTube, and Medium for additional resources and inspiration.