boneDynamicsNode is a lightweight, modular dynamics plug-in for Autodesk Maya that simulates one bone section per node.
Instead of solving a whole-chain in a single solver, each node works independently on a two-joint section. This makes it easy to insert dynamics only where needed, while naturally supporting chains, branching structures, and per-section control.
Designed for easy integration into rigs, supporting features such as collision handling, angle limits, target pose control, and more.
Warning
This plug-in uses internal-use Maya node IDs:
0x7b001, 0x7b002, 0x7b003, 0x7b004, and 0x7b009.
- Simple integration with standard Maya joints
- Multiple collision types: sphere, capsule, infinite plane, ground, and mesh
- Dedicated collider nodes and visualizer node
- Python helper package for scripted setup
- Angle limits
- Target pose control
- Transform cancellation for specific nodes
- Per-section scaling
- Turbulent wind
- Support for branching structures
Download the release zip from the Releases page.
After extracting the zip file:
- Copy the
boneDynamicsNode.mllfile for your Maya version from theplug-insfolder toC:\Users\<USERNAME>\Documents\maya\<MAYAVERSION>\plug-ins. - Copy the
scriptsfolder toC:\Users\<USERNAME>\Documents\maya.- The
scriptsfolder installs thebdnPython helper package andAEboneDynamicsNodeTemplate.mel.
- The
For additional instructions, refer to the Installation wiki page.
- Windows: Developed and tested on Windows. Pre-built plug-ins are provided for Windows.
- Linux: Build verified under WSL. Runtime testing in Maya on Linux has not been performed.
- macOS: Not tested.
Please try running the following script. It creates a single-section joint with bone dynamics applied.
from maya import cmds
cmds.select(cl=True)
bon = cmds.joint(p=[0,0,0])
end = cmds.joint(p=[10,0,0])
import bdn
bdn.create_dynamics_node(bon, end)
cmds.currentTime(1)
cmds.select(bon)Important
Please set "Playback speed" to Play every frame.
Refer to Quick Start and Basic Usage for details.
Full documentation is available in the wiki:
- Installation
- Quick Start
- Basic Usage
- Dynamics Parameters
- Visualizer
- Collision Guide
- Advanced Features
- Practical Examples
- FAQ & Troubleshooting
- Change Log
Several third-party tools have been created for working with boneDynamicsNode. Many thanks to the developers for creating and sharing these tools!
- nkBdnEditor by imaoki
- G3DSetupBoneDynamics by GACCHI [Documentation]
- mGear Spring Manager (mGear 5.4.0+) by mGear Framework - as a solver backend. [Documentation]
If you only need to open and evaluate scenes that are already set up with boneDynamicsNode, the main .mll plug-in file is enough.
Pre-built boneDynamicsNode.mll files are available in the plug-ins directory. Download the file that matches your Maya version and place it in your Maya plug-ins path.
Click "Download raw file" from the linked file page.
- Maya 2022 Update 5 Win64
- Maya 2023 Update 3 Win64
- Maya 2024 Update 2 Win64
- Maya 2025 Update 3 Win64
- Maya 2026 Update 3 Win64
- Maya 2027 Update 1 Win64
If you want to create new setups using the bdn Python helper package or use the Attribute Editor template, follow the instructions in the Installation section.