A digital interface showing the WireManager software with a list of driven targets and control buttons. A 3D wireframe model of a curved shape is displayed in the background, emphasizing the connection between the software and the model.

Free WaveManager Brings Procedural Motion to Maya

WaveManager for Maya adds procedural wave motion to any rig via expressions: no keyframes, full control, free download.

Character rigger Julen Armendariz has released WaveManager, a free Python-based tool for Autodesk Maya. The script generates procedural wave motion on any hierarchy of controls, using Maya’s native expression system instead of keyframes. WaveManager operates entirely through driven expressions, allowing a single driver control to manipulate the entire wave behaviour across a chain of objects. This approach makes it especially suitable for rigging and animating tentacles, tails, ropes, wings, or any FK-based control structure.

One Control to Rule Them All

All motion parameters are centralised in one driver. The available attributes—amplitude, speed, length, falloff, and offset—can be tuned independently or together, and they act simultaneously on the X, Y, and Z axes. The tool applies the wave procedurally, so timing and spacing adjustments propagate across the hierarchy in real time. Armendariz includes an optional Create Offset Group function. When enabled, the script inserts an additional node above each control, isolating the wave expression from the original animation channels. This keeps rigs non-destructive and clean for keyframed animation.

Fully Expression-Based

Unlike tools that rely on dynamic simulations or baked motion, WaveManager uses pure expressions in Maya. The result is a lightweight, deterministic system: behaviour is fully defined by a mathematical expression, with no simulation cache or physics overhead. Expressions can be removed per control or cleared globally with one command, returning the rig to its original state. The tool also includes Select Childs, an option that automatically collects all children of a selected control, simplifying setup for long FK chains.

Installation and Workflow

WaveManager is distributed as a single Python file. Installation is straightforward: drag and drop WaveManager.py into the Maya viewport, or execute it from the Script Editor. Users can create a custom shelf button for faster access. To use the tool, select the controls that should carry the wave, assign a single driver, and configure the desired parameters. All motion remains non-destructive and can be adjusted interactively during animation.

Non-Destructive, Animation-Friendly Design

Because expressions are stored separately from animation channels, artists can combine procedural motion with hand animation. This workflow is particularly valuable for rigging setups that require secondary motion or layered deformation without simulation. All expressions can be deleted at any time, leaving no residual data in the scene. The tool is entirely Python-based and uses only Maya’s built-in features, which ensures compatibility and avoids reliance on external plugins or compiled code.

Availability

WaveManager version 1.0 is available now as a free download under a pay-what-you-want model (listed at €0+). It can be obtained via Julen Armendariz’s release page. As with any utility, users should test the tool thoroughly before integrating it into production pipelines.