Create a Spline IK setup on a curve. The setup features variable stretch and squash, variable rotation and sliding on curve.

Installation

  • Extract the content of the .rar file anywhere on disk.
  • Drag the splineIK.mel file in Maya to permanently install the script.

Usage

A button on the MiscTools shelf will be created that will allow easy access to the ui, this way the user doesn't need to worry about any of the code. If user wishes to not use the shelf button the following commands can be used.

Command line:

from splineIK import SplineIK

sik = SplineIK()
sik.create(
    name,
    curve,
    numJoints,
    upDirection="y", 
    worldUpDirection="y", 
    forwardDirection="x"
)

Display UI:

import splineIK.ui
splineIK.ui.show()


UI Example

Note

The Spline IK module works on a curve and generates an joint chain that sticks to it's position on the curve. This means that stretch and squash will only occur in the areas that manipulates as opposed to it scaling as a whole.

Stretch and Squash Demo

The other benefit of using this module over a regular spline IK is the fact that the twist is divided over the controls that are generated and not just limited to the beginning and end.

Twist Demo

Shift Demo

Apart from the main settings, the control colour, position and orientation is adjustable. This can be done on the Spline IK class before the create function is called.

  • controlShape
  • rootControlShape
  • slideControlShape
  • tangentControlShape
  • controlColour
  • rootControlColour
  • slideControlColour
  • tangentControlColour
  • orientToCurve
  • orientRootToCurve