:: Back to news index ::

Search Results

Introducing NVIDIA HairWorks: fur and hair simulation solution

with 9 comments

Real-time simulation and rendering of realistic hair/fur, consisting of multiple strands, is gettng much attention these days – one can easily name a TressFX solution, developed by AMD.

A competitive response from NVIDIA, new hair and fur simulation technology, which is now officially called NVIDIA HairWorks, was firstly showcased at The Witcher 3 presentation half a year ago and recently used in an actual game title – Call of Duty: Ghosts – to provide “Dynamic Fur” simulation for animal characters.

In comparison to other GPU accelerated physics features, Dynamic Fur was implemented through DirectCompute, which opens it for AMD users as well.

Tae-Yong Kim, physics programmer at NVIDIA, has agreed to answer some of our questions about HairWorks solution in general, and Call of Duty: Ghosts integration in particular.

Read the rest of this entry »

Written by Zogrim

January 16th, 2014 at 11:33 am

APEX 1.3 released, features first iteration of real-time fracturing

without comments

New major APEX SDK 1.3 release is now available for public download.

Update: APEX SDK 1.3.1 released

1.3 version is featuring support for newest PhysX SDK 3.3.0 and also includes variety of improvements and new features for APEX modules.

Please note that corresponding authoring tools are required – PhysXLab 1.3 and DCC plug-ins 3.0

APEX SDK 1.3: Feature Highlights

APEX 1.3 now features a single Legacy Module (APEX_Legacy).

In APEX 1.2 every module had its own legacy module. For example, if an application uses APEX clothing and destruction, in APEX 1.2 the application would need to load both APEX_Clothing_Legacy and APEX_Destructible_Legacy.

However, assets created with APEX 1.1 or 1.2 should “just work” with APEX 1.3. The application must load the legacy module, which contains all the code that allows APEX to automatically upgrade assets to the latest version.

APEX Destruction and APEX Clothing modules can now utilize Render Proxies.

The rendering of destructibles and cloth can now be managed by a new object that is independent of the actors themselves. By default you will not see a change, but you may detach this object from the actors, meaning that the render data will not get deleted when the actors are deleted. You may delete the renderable when you’re done with it.

This is useful for multi-threaded renderers which may have the render data queued up even after the destructible or clothing actor is deleted in the main thread.

Speaking of Destruction, so called Behaviour Groups functionality was added to authoring pipeline.

Some common parameters, such as damage threshold, damage spread, density, etc., are now contained in “Behavior Groups“. Every chunk references a behavior group by index, allowing the user to customize behaviors for different chunks within single asset.

Read the rest of this entry »

Written by Zogrim

December 15th, 2013 at 11:08 pm

PhysX Research: Stable Stacking

without comments

An interesting “proof-of concept” demo was revealed today by Pierre Terdiman, senior software engineer in NVIDIA.

It is showcasing new CPU based algorithm, that will allow more effecient and stable simulation of large stacks.

Currently, PhysX SDK can utilize a feature (more like a “crude hack”) called “Adaptive Force” in order to improve stability of the stacks, but it also introduces some side-effects in certain cases.

As you can see on the picture above, 50-box-wide stack, simulated with the new algorithm, remains fully stable, while similar stacks, handled by any other current physics engine (PhysX SDKs/Bullet) collapse shortly.

Demo is also available for public download.

We hope that this new stacking solution will be included in PhysX SDK in the near future.

Written by Zogrim

May 23rd, 2013 at 2:40 pm

Posted in PhysX Research

Tagged with ,

The Evolution of PhysX SDK, performance-wise

with 6 comments

A quite interesting, unexpected and a little emotional article – The Evolution of PhysX – was published today by Pierre Terdiman, senior software engineer in NVIDIA and one of the developers of the original NovodeX engine.

Update: Multithreaded performance scaling in PhysX SDK

The article provides in-depth performance comparison between various versions of PhysX SDK (2.8.4, 3.2 and 3.3 Beta), using well-known open-source Bullet physics engine as as a reference point.

The performance tests were performed using PEELPhysics Engine Evaluation Lab, a specialized tool that is using within NVIDIA to research behaviour and performance of various physics engines using a set of standartized scenes.

Read the rest of this entry »

Written by Zogrim

May 12th, 2013 at 12:37 pm

PhysX Research: Position Based Fluids explained

with 3 comments

Position Based Fluids – this fluid simulation technology has indeed got some attention lately, and now, new “Position Based Fluids” paper by Miles Macklin (NVIDIA) and Matthias Müller-Fischer (NVIDIA) can give one a proper insight on the algorithm.


In fluid simulation, enforcing incompressibility is crucial for realism; it is also computationally expensive. Recent work has improved efficiency, but still requires time-steps that are impractical for real-time applications.

In this work we present an iterative density solver integrated into the Position Based Dynamics framework (PBD). By formulating and solving a set of positional constraints that enforce constant density, our method allows similar incompressibility and convergence to modern smoothed particle hydrodynamic (SPH) solvers, but inherits the stability of the geometric, position based dynamics method, allowing large time steps suitable for real-time applications.

We incorporate an artificial pressure term that improves particle distribution, creates surface tension, and lowers the neighborhood requirements of traditional SPH. Finally, we address the issue of energy loss by applying vorticity confinement as a velocity post process.

Written by Zogrim

April 24th, 2013 at 11:07 am

PhysX Research: Real Time Dynamic Fracture explained

without comments

Latest iteration of real-time fracturing and destruction technology, showcased at GDC 2013, is now explained in a new “Real Time Dynamic Fracture with Volumetric Approximate Convex Decompositions” paper by Matthias Müller-Fischer (NVIDIA), Nuttapong Chentanez (NVIDIA) and Tae-Yong Kim (NVIDIA).


We propose a new fast, robust and controllable method to simulate the dynamic destruction of large and complex objects in real time. The common method for fracture simulation in computer games is to pre-fracture models and replace objects by their pre-computed parts at run-time. This popular method is computationally cheap but has the disadvantages that the fracture pattern does not align with the impact location and that the number of hierarchical fracture levels is fixed.

Our method allows dynamic fracturing of large objects into an unlimited number of pieces fast enough to be used in computer games. We represent visual meshes by volumetric approximate convex decompositions (VACD) and apply user-defined fracture patterns dependent on the impact location.

The method supports partial fracturing meaning that fracture patterns can be applied locally at multiple locations of an object. We propose new methods for computing a VACD, for approximate convex hull construction and for detecting islands in the convex decomposition after partial destruction in order to determine support structures.

We must note that this research is specifically targeted to be implemented in upcoming versions of APEX Destruction module.

Written by Zogrim

April 23rd, 2013 at 3:53 pm

Introduction to Position Based Fluids

with 15 comments

Many of you may have already seen an impressive real-time destruction and fluid simulation demo from GDC 2013.

Update: Position Based Fluids explained

Update #2: Introducing NVIDIA FLEX: unified GPU PhysX solver

We won’t talk about fracturing technology today, instead, let’s focus on the new fluid simulation algorithm, presented in the demo – it is known as Position Based Fluids.

Position Based Fluids is a way of simulating liquids using Position Based Dynamics (PBD), the same framework that is utilized for cloth and deformables simulation in PhysX SDK.

Because PBD uses an iterative solver, it can maintain incompressibility more efficiently than traditional SPH fluid solvers. It also has an artificial pressure term which improves particle distribution and creates nice surface tension-like effects (note the filaments in the splashes). Finally, vorticity confinement is used to allow the user to inject energy back to the fluid.

More details on this a new technique will be available later on, in a SIGGRAPH 2013 paper “Position-Based Fluids” by Miles Macklin and Matthias Mueller-Fischer, and we also expect it to be included in future versions of PhysX SDK or APEX modules.

Written by Zogrim

April 22nd, 2013 at 11:17 am

GDC 2013 Demo: real-time fracturing coupled with fluid simulation

with 4 comments

Destruction with real-time fracturing and dynamic fluid simulation are awesome by themselves, but what if you can get both, at the same time?

Update: Real Time Dynamic Fracture explained.

Update #2: Introduction to Position Based Fluids.

This demo, showcased at GDC 2013, was used to demonstrate several new features, which will be included in future versions of PhysX SDK and APEX – rigid body simulation with real-time fracturing, improved SPH fluid solver and interaction between the two.

Written by Zogrim

March 28th, 2013 at 11:17 am

GDC 2013 Demo: Real Time Dynamic Fracture with Volumetric Approximate Convex Decompositions

with 2 comments

Quite interesting technical demo video was revealed today by Matthias Müller-Fischer, PhysX SDK Research Lead in NVIDIA.

Update: Real Time Dynamic Fracture explained.

It is showcasing a further evolution of a dynamic real-time fracturing and GPU accelerated rigid body simulation algorithm, firstly presented at GDC 2012. As you may see, improved method works perfectly with complex arbitrary meshes, not just basic shapes.

A paper describing this technology, called “Real Time Dynamic Fracture with Volumetric Approximate Convex Decompositions”, will be available for public download later on, once it will be approved for SIGGRAPH.

Written by Zogrim

March 27th, 2013 at 3:56 pm

PhysX Research: Position-based Methods for the Simulation of Solid Objects

with 7 comments

Position-based Methods for the Simulation of Solid Objects in Computer Graphics” – recent paper by Matthias Müller-Fischer, PhysX SDK Research Lead in NVIDIA, and others.

Paper provides in-depth overview of special class of simulation methods, namely position-based approaches, for solid objects, such as rigid bodies, cloth and softbodies.

The dynamic simulation of solids has a long history in computer graphics. The classical methods in this field are based on the use of forces or impulses to simulate joints between rigid bodies as well as the stretching, shearing and bending stiffness of deformable objects. In the last years the class of position-based methods has become popular in the graphics community. These kinds of methods are fast, unconditionally stable and controllable which make them well-suited for the use in interactive environments.

Position-based methods are not as accurate as force based methods in general but they provide visual plausibility. Therefore, the main application areas of these approaches are virtual reality, computer games and special effects in movies.

This state of the art report covers the large variety of position-based methods that were developed in the field of deformable solids. We will introduce the concept of position-based dynamics, present dynamic simulation based on shape matching and discuss data-driven approaches. Furthermore, we will present several applications for these methods.

Some of the described techniques were used in PhysX SDK (as well as other physics engines) for a long time, some have been implemented only recently, other are yet ander active research.

Written by Zogrim

February 26th, 2013 at 7:51 pm

Copyright © 2009-2014. | About project | Privacy Policy
PhysX is trademark of NVIDIA Corporation