Archive for April, 2013
NVIDIA has revealed new bug-fixing release of the PhysX SDK 3.x – PhysX SDK 3.2.4
Update: PhysX SDK 3.3 Closed Beta Testing begins
Update: PhysX SDK 3.2.5 available
|PhysX SDK 3.2.4 – Release Notes|
- Fixed a bug which caused actors to return wrong world bounds if the bounds minimum was above 10000 on any axis.
- Reporting allocation names can now be enabled or disabled (see PxFoundation::setReportAllocationNames). When enabled, some platforms allocate memory through ‘malloc’.
- eEXCEPTION_ON_STARTUP is removed from PxErrorCode and it is no longer needed.
- Added boilerplate.txt to the Tools folder. SpuShaderDump.exe and clang.exe require it.
- PxWindowsDelayLoadHook.h has been moved from Include/foundation/windows to Include/common/windows.
- PxScene::saveToDesc now reports the bounceThresholdVelocity value.
- Fixed a bug in PxDefaultSimulationFilterShader: the value of the second filter constant in the collision filtering equation was ignored and instead the value of the first filter constant was used.
- Fixed a crash bug in PCM collision.
- Forces applied to bodies (with PxRigidBody::addForce) that go to sleep in the subsequent update now have their applied forces cleared when the body is set to sleep to avoid them being applied in a later update when the body is once more awake. This bug broke the rule that forces applied with PxRigidBody::addForce do not persist beyond the next scene update.
A very interesting presentation from Game Developer Conference 2013 – “Enhancing Hawken and PlanetSide 2 Through Turbulence and Destruction” by Dane Johnston (NVIDIA), Aron Zoellner (NVIDIA), Tramell Isaac (SOE) and Ryan Elam (SOE) – is now finally available for replay from GDC Vault.
The presentation covers the basic features and authoring pipeline of APEX Turbulence and APEX Destruction modules, among other modules, and also provides a little post-mortem on how those modules were utilized to enhance several latest GPU PhysX games – PlanetSide 2 and Hawken.
It was also revealed during the talk, that with current implementation of GPU physics effects in Planetside 2 developers have only “scratched the surface of what APEX can do”, as more advanced content, including enhanced Turbulence effects, Destructible environments (like player created bases) and potentially Environmental cloth will be coming to the game in the future. Good news for PlanetSide 2 players.
During Hawken and APEX Destruction part, it was mentioned that upcoming improvements for the Destruction module will include networking sync support, damage based vertex coloring, more authoring tools options (PhysX plug-ins, third party) and also a new damage system, that is based on artist feedback.
Finally, the APEX Hair & Fur was mentioned as the upcoming module.
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.
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.
Many of you may have already seen an impressive real-time destruction and fluid simulation demo from GDC 2013.
Update: Position Based Fluids explained
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.
Updated PhysX plug-ins – 2.89.00313 for 3ds Max and Maya – are now available for download.
Update [7/17/2013]: Plug-ins version 2.89.00705 for 3ds Max and Maya released. Please see the Release Notes below.
Update #2: 2.91 PhysX plug-ins are available
|2.89.00313 PhysX plug-in for 3ds Max: Release Notes|
- Updated PhysX 2.8.5 and 3.2.3
- Updated APEX 1.2.3
- Fix GPU Simulation Disabled bug when choosing HW mode.
- Fix qs tangent space issue.
2.89.00705 Update Release Notes
- Support 3ds Max 2014.
- Exporting material names when exporting PhysX scene.
- Support making dummies as constraint directly via toolbar or menu.
New PhysXLab 1.2.3 was released by NVIDIA today.
Update: PhysXLab 1.2.4 is released
Only several minor bug-fixes and updated PhysX/APEX SDK compatibility are included in 1.2.3 version.
|PhysXLab 1.2.3 – Release Notes|
- APEX 1.2.3 support.
- PhysX SDK 3.2.3 support.
- Hull simplification.
- DE7358: Bad APEX convex hull creation in 3.x.
- DE7335: T-junction removal is causing crashes.
- DE7104: Min Fracture Depth not being set in the exported APX if set in the playground.
Folks at TomsHardware have kindly uploaded an onscreen recording of the “Post Mortem: GPU Accelerated Effects in Borderlands 2” talk, which was presented at GPU Technology Conference (GTC 2013) and, later on, at Game Developer Conference (GDC 2013) in March, and is not yet available through official channels.
The presentation covers the implementation details and the authoring process of the extra physics effects (impact debris particles, simulated cloth and SPH fluids) for one of the best game with GPU PhysX support – Borderlands 2.