2020.11.10
Performance!
- NEW Multi-threading
- Ragdoll now supports multiple solvers in the same Maya scene, each of which run in parallel offering a 2-3x increase in FPS
- NEW UI
- Menu items now have additional customisation with a new UI interface.
- NEW Animation Influence
- Dynamic Controls can now respond to animation input, either kinematically or as a guided influence to your simulation. This means you can turn your controllers dynamic, and add additional animation to steer the simulation!
- NEW Exploratory Menu
- The menu is now fully unlocked, with user-friendly messages letting you know how to use it if you are unfamiliar. The goal is facilitating exploration and curiosity in a safe environment with reliable undo.
- FIXED Hinge Constraint
- A constraint being converted to/from a hinge constraint no longer breaks the constraint.
- FIXED Set Initial State
- Modify the position and orientation of your rigid bodies after creation with this feature.
Multi-Threading
Ragdoll is now multi-threaded!
There are two mechanisms for managing performance.
- Scene-level parallelism
- Solver-level parallelism
With 2 or more Ragdoll solvers in the same Maya scene, Maya will run these in parallel. Which means they will both run independently, on separate hardware cores on your CPU. Currently, you can expect a 2-3x performance increase through use of multiple solvers, with more optimisation to come.
A single Ragdoll solver can be automatically broken up into simulation "islands" that run in parallel. Islands are created when two or more groups of rigid bodies are unlikely or unable to interact. For example, two characters in the same solver far away from each other. To leverage solver-level parallelism, adjust the rdScene.threadCount
attribute (under Advanced in the Attribute Editor). A value of 0
(default) means it will run on a single thread, on the same thread as the rest of Ragdoll and Maya.
For small scenes, with less than 100 rigid bodies, you should expect improved performance from a single thread. Each thread comes with some amount of overhead.
Option Dialogs
Some menu items now have option dialog boxes for further customisation. Settings are stored with Maya's preferences and persists across scenes and between application launches.
Animation Influence
The "Dynamic Control" feature now enables control of the simulation using the animation used for blending.
- See Tutorial for details.