November Tool: Center of Mass

Apologies on being a couple days late on this one.

This months tool is inspired by a workflow laid out by Richard Lico in this video:

Center of mass script from Richard Lico on Vimeo.

His idea is really clever and the workflow is great for hunting down elusive physicality issues that come from having your root not be necessarily where the character’s center of gravity is all the time.

The script is an attempt to automate this set-up in a generic way that should hopefully work with most characters. I’ve tested it on a handful of free rigs, but every rig is different and so it’s very probable that it wont work perfectly for everyone. Ideally the way it works is you select the root control of your puppet, and then run the tool either to create a locator which is constrained to the center of mass, or to transfer animation from the root to a center of mass locator. I wanted it to be as streamlined as possible.

It’s also using a very rough approximation to calculate the relative masses. I think I’ll try some different approaches in the future, but for the time being, it simply looks for visible geometry that is being driven by the root, and then tries to discover a skinCluster in the history of that geometry. It uses the skinCluster weights to get the surface area of the mesh that is being affected by each joint, and then uses those surface area values to weight a point constraint. So for simple characters this seems to work pretty well, but for example if your character has a lot of hair geometry, there will be a lot more relative surface area on the head, and so it will be assumed to be more massive. If you hide geo that you don’t want included in the calculation, that should solve that problem.

It also may have trouble finding the appropriate geometry to use. It will have the best success if your rig scene is referenced, so consider referencing your rig if that is a problem.

Anyway, I consider this to be pretty beta since there’s a lot of different rigs out there, give it a try and let me know if you get any useful sounding errors, or especially if you can share a scene that has issues.

Special thanks to Richard Lico, wherever you are! And to my Patreon supporters!

Center Of Mass
Center Of Mass
ml_centerOfMass.py
Version: 1
17.9 KiB
23 Downloads
Details

Also note that this requires the latest ml_utilities script:

Ml Utilities
Ml Utilities
ml_utilities.py
Version: 26
70.7 KiB
4814 Downloads
Details

Enjoy!

Share Button
Posted in Animation, Python, Tools | Leave a comment

October Tool: Copy Skin Clusters

Another rigging tool this month. This will simply copy a skinCluster from one skinned mesh to another, with a couple simple but key additions to maya’s existing Copy Skin workflow. First of all, the destination mesh doesn’t need to have a skinCluster, or the same influences. If there is no skin, one will be created, and missing influences will be added. That just makes life easier in the majority of situations where you copy skins. Secondly, it also supports copying weights to a selection of vertices, rather than the whole mesh, which is often necessary but not always straightforward.

So it’s a pretty simple and basic little tool, but the underlying workflow has saved me a lot of tedious time over the years. Give it a go:

Copy Skin
Copy Skin
ml_copySkin.py
Version: 1
6.9 KiB
83 Downloads
Details

Just two tools left this year, and then the Patreon experiment will be over for now. Thanks so much to my Patrons!

Share Button
Posted in Crowdfunding, Python, Rigging | 5 Comments

September Tool: Ballistic Animation

A lot of times while animating, you need to create simple but convincing physics. This is one of the reasons a bouncing ball is the quintessential animation exercise. This month’s tool is about quickly and easily generating a ballistic arc.

For example, say you’re animating a character throwing a ball. You could animate the ball up to the point where physics should take over, select the frame range to simulate, and then run the tool to generate the animation.

Ballistic Animation
Ballistic Animation
ml_ballisticAnimation.py
Version: 1
5.0 KiB
170 Downloads
Details

If this proves useful, I’d definitely like to add more features in the future, in this initial release it’s actually quite simple. Hope you enjoy, thanks to my Patreon supporters for making this possible!

Share Button
Posted in Animation, Crowdfunding, Tools | Leave a comment

August Tool: Color Control

This month’s tool compliments last month. In a recent Maya update Autodesk added support for coloring curves with RGB values, rather than the limited color index. This tool is an interface for coloring a range of controls while gradually changing the color as it goes along. This can be nice for long tails or tentacles which have lots of consecutive controls.

colorControl

You can also grab the color from a node which has been previously colored, or choose a random color. Enjoy, and thank you!

Color Control
Color Control
ml_colorControl.py
Version: 1
8.4 KiB
150 Downloads
Details
Share Button
Posted in Crowdfunding, Tools | Leave a comment

Windows Support Update

Once again the latest tool has been a lesson in cross-platform compatibility. If you’re on windows and ml_controlLibrary was giving you errors when exporting controls, download the latest ml_utilities for the fix.

If you’re curious, something I wrote ages ago was splitting a environment path list by “:”, which is the character used to separate paths on linux and mac. On windows though, you can imagine what sort of havoc that wreaks on a path starting with “C:\”. Instead, use os.pathsep and you get the right separator depending on the operating system.

Thanks for the debugging help, my testers!

Share Button
Posted in Tools | Leave a comment

I’m on GitHub

I’ve finally got my act together and created a repository on gitHub for all my tools. I still want them to be downloadable individually, but in order to stay up to date, cloning this repository might be a good option for some people or facilities.

Share Button
Posted in News, Tools | Leave a comment

July Tool: Control Library

Rigging tool this month! This is a way to build and keep track of a control curve library. Simply create a nurbsCurve (or open that file you use to save all your control curves), select a curve and export it. An icon gets rendered and the curve is cleanly written out to your library, so you never have to go searching through your old rigs or or re-create it for the 5th time.

controlLibrary

Thanks again to all my Patrons for making this possible, and enjoy!

Download below (Please note you’ll need the latest ml_utilities update, and this also requires the ml_parentShape script in order to work.)

ControlLibrary
ControlLibrary
ml_controlLibrary.py
Version: 3
11.7 KiB
206 Downloads
Details
Share Button
Posted in Crowdfunding, Rigging, Tools | 15 Comments

June Tool: ml_pivot

It’s the end of the month, and thanks to my Patreon supporters that means a new tool. This months flavour comes by request, though it remains to be seen whether it works as they hoped. It was a bit of a science experiment, and there’s probably more features which could be added in the future, so I’m interested in hearing feedback from you about it.

So it’s a tool for changing the pivot of an animated transform in maya. The workflow is like this:

  1. Animate something.
  2. With it selected, run the tool and press “Edit Pivot”
  3. Your selection will change to a handle. Position the handle to where you want the pivot to be, and then press Return. If you deselect the handle or press Escape it will cancel.
  4. The scene will play through to bake, and afterward you should have the exact same animation but with a different pivot.

Disclaimer! Because everyone’s rigs are set up differently, in some cases changing the pivot position may break a rig. Before you try this on a new rig, please save your scene, and do let me know if you have found a bug that causes trouble. Also if you haven’t updated ml_utilities in a while, you may want to grab that too.

Give it a go:

Pivot
Pivot
ml_pivot.py
Version: 1
10.2 KiB
248 Downloads
Details
Share Button
Posted in Crowdfunding, Tools | 6 Comments

Pixar Tentacles

Here’s my friend and mentor Jeremie Talbot talking about octopus rigging. Can’t wait to see this guy in action!

Share Button
Posted in Rigging | Leave a comment

New Tool: Graph Editor Mask

I’ve added a new tool at the end of last month, but have been slow to post about it. Graph Editor Mask is a way of quickly isolating or masking curves in the graph editor by channel, axis, or selection. So if you want to look at just ty for all the selected objects, or just rotates, or just the selected curves. It’s designed to work as hotkeys, if you can spare the keyboard real-estate.

GraphEditorMask
GraphEditorMask
ml_graphEditorMask.py
Version: 2
8.7 KiB
355 Downloads
Details

Also wanted to add that once I started using Maya 2016 I realized it broke my options to create hotkeys from within tools. I’ve updated ml_utilities with a dirty patch to just print to the command instead, and I’ll need to investigate the best way to get that fixed in the future.

As always, thanks for the support on Patreon to keep these tools coming!

Share Button
Posted in Crowdfunding, Tools | 1 Comment