Archive for the ‘PhysX Tools’ Category
Quite an interesting beginning of GDC 2017 – NVIDIA has not only presented their newest flagship GPU, GeForce GTX 1080 Ti, but also announced several additions to the GameWorks libraries.
Let’s take a closer look.
FleX & Flow
NVIDIA FleX, unified particle-based solver, and NVIDIA Flow, an engine for simulation of smoke and fire, now both feature hardware agnostic DX12 implementation !
This is exciting news not only for gamers, but also for 3d party companies, already utilizing FleX in their products, such as Lucid Physics from Ephere.
As promised, NVIDIA is opening source code for selected GameWorks modules.
Source code for HairWorks, a complete solution for simulation and rendering of realistic fur and hair, has recently made it to GitHub.
|HairWorks 1.2 Alpha : Release Notes|
HairWorks source code branch can be accessed at http://github.com/NVIDIAGameWorks/HairWorks.
Please Note that you’ll require an approved GitHub account, as described here.
NVIDIA has just released a new version of the FLEX universal particle solver.
|NVIDIA FLEX SDK 1.0.0: Release Notes|
Pieere Terdiman has announced the release of Physics Engine Evaluation Lab or PEEL – a handy tool (previously only used internally by PhysX team), that can be utilized to test performance, identify bottlenecks and determine simulation bugs of a physics engine in a number of specific use cases, thus providing a basis for further optimization and improvements.
Update: PEEL source code is now available on GitHub
PEEL 1.0 release is available for free with source code included, and features a default integration of various physics engines (Newton 3.13/3.9, Bullet 2.79/2.81/2.82, PhysX 2.8.4, a number of PhysX 3.x releases, even an early PhysX 3.4 branch) and collision libraries (OpCode 1/2).
As part of .2 update of PhysX SDK and APEX toolset, NVIDIA has released new 3.0.2 version of the PhysX DCC plug-ins for 3ds Max and Maya.
Among other changes and bug-fixes, plug-ins are also supporting 3ds Max 2015 and Maya 2015.
|PhysX Plug-in 3.0.2 for 3ds Max: Release Notes|
- Improve Destruction performance.
- Fix Parature Ticket: Paint Mode – Ignore Backface not workin in Orthographic View.
- Fix DE9855 by not exporting chunks with zero volume.
- Fix a crash when there are more than 12 simulation sets.
- Fix: Apex Clothing paint crash.
- Fix Parature Ticket: PhysXModRBInterface, how do one access concave/composite shape type meshes.
- Fix Parature Ticket: How to make it work with concave physical shape.
- Destruction – Fix the crash when children nodes have less texture than parent chunk.
- Fix Bug #10117: Max crashes when adding child chunks to a destructible.
- Fix Bug #10063: Export panel allows export with no options selected.
- Fix a crash with invalid nodes when reading clothing type collision shape.
Following the PhysX SDK 3.3.2 release, updated APEX SDK 1.3.2 is available for download.
Update March 2015: Bug-fixing APEX SDK 3.3.3 release is available.
Despite the minor version number, APEX 1.3.2 includes numerous additions to Destruction and Particles modules.
|APEX SDK 1.3.2: Release Notes|
APEX Framework 1.3.2
- Added NVTX profiling support for non-release builds. Traces can be captured using Parallel Nsight Analysis Tools. NVTX is supported only for Windows and Android.
- Added ability to change render resource lock behavior or disable locking altogether, to improve performance. The setting is per module. See NxModule::setRenderLockMode and NxApexRenderLockMode.
- Added ability to disable potentially expensive stat collection if it’s not needed. See NxApexSDK::setEnableApexStats.
- Fixed crash if application creates APEX SDK after already connecting to PVD.
NVIDIA has released an updated 3.0.1 version of the PhysX DCC plug-ins for 3ds Max and Maya.
|PhysX Plug-in 3.0.1 for 3ds Max: Release Notes|
- New Features
- Fix: crash which happens when quiting 3ds Max with a biped Ragdoll scene.
- Fix: bug that Clothing simulates wrong at first frame when system scale is not 1.
- Fix: bug with APEX Debug Visualizer parameters.
- Fix: bug that when LOD1 is default LOD, it may not allow to add another new LOD.
- Fix: bug that Physical Mesh rollout could be too small when it is Custom type.
- Fix: few bugs with Physical Mesh rollout of Clothing Modifier.
- Fix: crash when loading .Rag files.
- Fix: SDK warning message when it fails to output on unicode build because missing one virtual function.
- Fix: Clothing Velocity control via Script.
- Improve the simulation of dynamic ragdolls.
- Make a switch to SDK 3 if creating APEX objects.
- Support SkinMapActual for APEX Clothing visulaizer.
- Improve sub-material handling based on Bug #9515: Getting multiple materials when coming back from PhysXLab to 3ds Max.
- Make Destruction exports Tangent and Binormal with UE3 and APEX 1.3
- Avoid extra scale (in PhysX Panel dialog) to be zero.
- Improve debug render scale handling.
New APEX 1.3.1 release is now available for public download.
Update: APEX SDK 1.3.2 is available
1.3.1 version features support for latest PhysX SDK 3.3.1 and includes a set of bug-fixes and minor new features.
|APEX SDK 1.3.1: Release Notes|
APEX Framework 1.3.1
- Added VS2012 support for source distributions with PhysX 3.x.
- Assertions are now enabled in the checked configuration.
- Added NxApexActor::setEnableDebugVisualization to selectively disable debug visualization on particular actors.
- The NxUserRenderResourceManager’s surface buffer create and release virtual methods must be implemented by the user. They are only used by particular turbulence features, so if turbulence isn’t being used the implementation can be empty.
- Starting with NVIDIA R302 drivers, application developers can direct the Optimus driver at runtime to use the High Performance Graphics to render any application – even those applications for which there is no existing application profile. The APEX samples now makes use of this “NvOptimusEnablement” feature to enable High Performance Graphics by default.
- Debug info added to all PS4 builds except release builds.
- Android sample builds now generate an APK. This requires some extra defines for Java and Ant. See the Android examples section of the sample documentation for details.
- Fixed rare Named Resource Provider failure to find resource.
- Using allocViewMatrix(ViewMatrixType::USER_CUSTOMIZED) now works.
- Cleaned up several PS4 compiler warnings.
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.
For those developers who are not ready yet to switch to 3.3 branch of the PhysX engine, NVIDIA has prepared several bug-fixing releases – PhysX SDK 3.2.5, APEX SDK 1.2.5 and corresponding tools.
Update: APEX SDK 1.3 is available
|PhysX SDK 3.2.5: Release Notes|
- Fixed a bug which could cause triggers to not fire touch events after a kinematic actor moved into or out of overlap and had no target set anymore in the next simulation step.
- Fixed crash when setting multiple materials on a shape followed by release/removal of the corresponding actor from the scene (all while the simulation is running).
- Rigid Bodies
- Fixed a bug that caused bodies to not respond to applied velocities or forces if the autowake parameter in those methods was set to false. This could happen for (almost) resting bodies which were close to other bodies (bounding box overlap) but did not touch them.
- Bugs in the suspension force and tire load computation have been fixed that affected handling when the vehicle was upside down.
- The tire load passed to the tire force computation is now clamped so that it never falls below zero.
- PxVehicleTireLoadFilterData now requires that mMinNormalisedLoad is greater than or equal to zero.
- PxVehicleTireLoadFilterData now has a new member variable mMinFilteredNormalisedLoad. This value describes the filtered normalised load that occurs when the normalised is less than or equal to mMinNormalisedLoad.
- PxVehicleWheelsSimData now has a new function setMinLongSlipDenominator. This can be used to tune stability issues that can arise when the vehicle slows down in the absence of brake and drive torques.
- A bug in the tank damping forces has now been fixed. Tanks now slow down more aggressively from engine and wheel damping forces.
- A new section “The Vehicle Under-steers Then Over-steers” has been added to the vehicle troubleshooting guide to describe steps to avoid twitchy handling on bumpy surfaces.
- A new section “The Vehicle Never Goes Beyond First Gear” has been added to the vehicle troubleshooting guide to describe a common scenario that occurs when the automatic gearbox is given a latency time that is shorter than the time taken to complete a gear change.
- A new section “The Vehicle Slows Down Unnaturally” has been added to the vehicle troubleshooting guide to describe the steps that can be taken to help the vehicle slow down more smoothly.
- The section “SI Units” in the vehicle guide has been updated to include the new functon PxVehicleWheelsSimData::setMinLongSlipDenominator.