From PhysX Wiki
|NVIDIA PhysX Flex|
|Type:||Unified particle-based solver|
PhysX FleX (NVIDIA FleX) is the new GPU accelerated particle-based physics simulation library.
The core idea of FleX is that every object is represented as a system of particles connected by constraints. Such unified representation allows efficient modeling of many different materials and natural interaction between elements of different types, for example, two-way coupling between rigid bodies and fluids, or fluids and soft bodies.
FleX is not designed to build gameplay affecting physics, as it lacks functionality such as trigger events, contact callbacks, ray-casting, serialization, etc. For this reason it is recommended to use FleX in conjunction with a traditional rigid-body physics engine, such as PhysX SDK.
Since 1.1 version, FleX supports GPU acceleration through DX11/DX12 and CUDA, and will work on both NVIDIA and AMD GPUs.
- Unified particle-based solver with universal interactions between all types of objects.
- Supported collision geometry: convex hulls, triangle meshes, signed distance fields, and infinite half-spaces.
- Rigid bodies.
- Semi-rigid and deformable bodies.
- Supports concave objects.
- Soft bodies.
- Wind, lift and drag forces .
- Supports cohesion, adhesion, surface tension, vorticity confinement.
- Diffuse particles (foam, spray).
- Advanced fluid rendering based on ellipsoid splatting and screen-space surface reconstruction.
- Granular materials (sand, dirt).
- Phase transitions.
FleX integration into Unreal Engine 4 is freely available as a special source code branch at GitHub (guide)
Games and game engine integrations
PhysX FleX was used in following games (most notable examples):
- Fallout 4 (PC)
- Killing Floor 2 (PC)
PhysX FleX is integrated into following engines:
- Unreal Engine 4 (Epic Games)
- Preliminary PhysX FleX integration into Unreal Engine 4 is available
- Introducing NVIDIA FLEX: unified GPU PhysX solver