NVIDIA has released the version 18.104.22.168 of the PhysX SDK. Like for the PhysX Visual Debugger, you can download the SDK HERE (you need an account…).
This SDK has been compiled with the SSE2 option to improve performances in CPU modes. Here are two links to refresh your memory:
- CPU PhysX: x87, SSE and PhysX SDK 3.0
- Simple x87 vs SSE2 Performance Test With Matrix Multiplication
I just downloaded it and tried to compile FluidMark 1.2.x. The compilation has been a success but I didn’t manage to start FluidMark with the version 2.8.4 of the engine. Only the version 2.8.3 is valid to create a PhysX SDK object. I think there’s a relation with the new driverless model I saw in physxloader.h. There is a new function NxCreateModule() that allows to load different modules directly by their names like “PhysXCore” or “PhysXCooking”. I will investigate this point asap.
Here is PhysX 22.214.171.124 changelog:
- Removed PhysX Loader source code from source distribution.
- Discontinued the Training Programs.
- Added source code of NxTetra (tet-maker) utility to source distribution.
- Removed spin waits from sample code.
- Added API to permit the user to specify the order in which compartments are simulated.
- Added compression limits to cloth.
- Cloth simulation no longer performs prediction for kinematic rigid bodies for improved interaction behavior.
- New driverless loader option for PC CPU distribution.
- Better rotation matrix input validity checking.
- Made Desc::isValid() more verbose.
- CUDA errors are now reported to the debug stream.
- Added extended scene statistics for GPU memory usage.
- Lowered the default GPU memory heap size to 32 MB from 128 MB. You
may use NxPhysicsSDKDesc::gpuHeapSize to change how much GPU memory is
allocated for physics.
- Disabled GPU acceleration by default. Clear NX_SDF_NO_HARDWARE to
- Corrected inertia and volume computation for capsule. For the same capsule
dimension and density, the mass and inertia is slightly different compared to
the previous release.
- The supported devices are the same as for PhysX 2.8.1 (see below), except that the AGEIA PhysX Processor (PPU) device support was removed.
- Enabled /arch:SSE2 compiler switch for all optimized PC builds.
- Optimized PS3 SPU Memory Manager
- Optimized AgPerfmon AgPerfUtils wrapper
- Optimized cloth simulation on PS3, XBOX 360, PC CPU
- Debugged PS3 SPU Memory Manager
- Fluids now collide properly when static shapes are removed or added.
- Fixed crash bug in character controller sample.
- Fixed a number of bugs in the HSM.
Known Issues and Limitations
- Please also see the previous lists from 2.8.3 and earlier.
- NxCloth::getShapePointers() no longer returns shape flags.
- Added methods to NxCloth and members to NxClothDesc to set compression parameters.
- NxCloth::setFlag() can no longer be used to change NX_CLF_BENDING_ORTHO, use flag in NxClothDesc instead.
- Removed NxFluidFlag::NX_FF_ENABLE_STATIC_FRICTION. Static friction is enabled by default now.
- Removed NX_SDKF_EXTENDED_DESCRIPTOR.
- Added NxPhysicsSDK::resizeGpuHeap() to allow changing the GPU heap size after SDK creation. See the GPU Memory section of the User’s Guide for details.
- NxPhysicsSDKDesc::flags has NX_SDKF_NO_HARDWARE set by default.
- Added checkValid() method to descriptors that return an error code instead of the boolean of isValid().
- The experimental NxScene::simulateCompartments() method has been added. It gives more control over the order in which compartments get simulated.