Free source code access for Windows, Linux, OS X and Android.
Real-time simulation and rendering of realistic hair and fur
PC version of recently released Metro: Last Light title features not only vivid DX11 based graphics, but also hardware accelerated PhysX effects.
In the following article we’ll try to gather the most reliable and accurate GPU PhysX benchmarks and tests for this game.
[14.05.2013] Metro Last Light – GPU Test by GameGPU
Sufficient amount of NVIDIA GPUs was tested in this article with the help of Metro’s built-in benchmark. However, since heavy graphics options (like SSAA) were used, it is hard to determine actual PhysX performance.
Metro: Last Light, a post-apocalyptic first person shooter with survival horror elements, is joining the family of PhysX enabled titles by offering a support for GPU accelerated physics effects.
Update #2: Metro: Last Light – GPU PhysX Profile
First game in the series – Metro 2033 – was also featuring a GPU PhysX content, however, it was limited to basic particle effects.
Was the Last Light able to improve the results of its predecessor? Let’s find out.
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.
“We are excited to extend our PhysX and APEX technologies to Microsoft’s Xbox One console”, said Mike Skolones, product manager for the PhysX SDK at NVIDIA.
“We look forward to the Xbox developer community taking advantage of PhysX and APEX along with Xbox One’s processing power, programmability and next-generation features to design cutting-edge games that deliver an unparalleled and ultra-realistic experience”
Earlier this year, it was also stated that PhysX SDK/APEX SDK will be available for Sony’s Playstation 4 console.
We assume that similar to PS4 case, PhysX for Xbox One will only use console’s CPU for physics calculations, at least at the beginning.
Official Release Notes are unknown.
Update: we have received an information that 9.13.0325 PSS is a release candidate for future GPU drivers, does not contain any enhancements for the DLLs and is not recommended to use currently.
You can download PSS 9.13.0325 from our server (25 mb)
Thanks to Stefan for the link.
More or less detailed information on GPU PhysX support level in the upcoming Metro: Last Light title was revealed today in the “Metro: Last Light Graphics Breakdown & Performance Guide” article by NVIDIA.
Update: GPU PhysX in Metro: Last Light
Similar to the previous Metro 2033 game, Last Light features two levels of PhysX integration – standart, CPU based physics calculations like rigid body physics and ragdolls, working on all platforms from PC to consoles, and extra, so called “Advanced PhysX” effects, designed to be accelerated on the GPU.
According to the article, advanced physics effects will include:
- Physically simulated particles such as impact debris, sparks, extra chunks from destructible objects and other types of environmental particles.
- SPH based smoke and fog simulation, that reacts to players movements and actions. With the advanced physics disabled, players will see only pre-backed non-interactive animation instead of real-time simulation.
- Interactive cloth objects, such as banners, flags and drapes. Yet again, without advanced PhysX option enabled, most cloth will remain pre-animated or static.
- Dynamic forcefields, such as shockwaves from grenade explosions, that will affect all types of the PhysX effects decribed above, for example, repell all nearby particles and rigid bodies upon detonation.
Looks solid and it seems that PhysX effects in Last Light will end up being more vibrant and diverse than in previous Metro title.
As always, you can expect full PhysX review here on PhysXInfo.com short after Metro: Last Light release, which will happen this week.
Recent “The Evolution of PhysX” article has unvealed the current situation with performance improvements among various PhysX SDK vesions, however, one interesting case has remained outside the coverage – performance scaling in multithreaded environments.
It is known that, while PhysX SDK 2.8 has rather limited multi-threading capabilities (mostly working on per-scene or per-compartment basis), PhysX SDK 3.x can distribute various tasks across worker threads much more effective, and thus offer better support for multi-core CPUs.
But how well does multi-threading actually work in PhysX 3 (we’ll take the latest 3.3 version)? Using the same PEEL (Physics Engine Evaluation Lab) tool to the record the performance metrics, we will try to shed the light on this question.
Scene #1 – random dynamic primitives in a box
Static container filled with 256 random primitives (sphere, box, capsule).
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.
The performance tests were performed using PEEL – Physics 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.
Recently, the PhysX SDK team began to offer a preview of the upcoming version, PhysX SDK 3.3, to advanced PhysX users — professional developers, who have the time and experience to try out the latest offering, test it and provide feedback to the PhysX SDK team.
If that describes you or your team, do not hesitate to contact PhysXlicensing@nvidia.com and use the words ‘beta-3.3 request’ in the subject line to apply for the SDK 3.3 Closed Beta Testing.
|PhysX SDK 3.3 – Feature Highlights|
Performance and stability optimizations for rigid body solver
Rigid body collision performance was improved up to 15-20% in comparison to SDK 3.2, while memory footprint was reduced.
Please note that we expect more performance improvements in final release
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.
- Rigid Bodies
- 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.