modo bubbble logo

Spline Effector


Home >> Rigging & Animation >> Deformer List >> Spline Effector

back next
comment balloon Comments (2) RSS Icon
0/5 (0 votes)

The Spline Deformer is an excellent way to apply deformations in a continuously smooth manner (as opposed to the somewhat rigid deformations created with Joint sections). This can be extremely useful for long tube-like structures, such as tentacles, tails, whips and a multitude of other applications.

The Spline Deformer works as a Group of locators that define a Spline curve through their collective locations. Their initial positions (defined as the Setup Position) determine the undeformed state of the target mesh, and as each locator is moved the difference between the unmodified curve is calculated and applied to the mesh as the deformation (this is why Spline Deformers will always appear to have two actual curves associated with them). As with many functions of modo, there are several ways to go about assigning and applying a spline curve for deformations.

No Initial Spline

It is not a requirement that a user create a Spline curve prior to applying a Spline Deformer, as a 'Create Curve' dialogue box opens whenever the Spline Deformer is applied to a Mesh item layer. Users must keep in mind that the resulting curve generated aligns along one of the three axes in a perfectly straight line. Users will either need to model the target geometry to match this requirement, or enter Setup Mode after the fact and reposition the curve to coincide with appropriate locations for the curve, relative to the geometry its meant to deform. To apply the Deformer itself, users must first select the target Mesh Item layer either in the Items list or the 3D viewport. With the target item selected, users can either press the interface button "Spline" found in the toolbox within the 'Setup' and 'Animate' toolboxes, under the 'Deformers' subtab or they can RMB+click on the target layer and select the "Add Deformer > Effectors > Spline Effector" from the contextual menu. This opens the following menu-

Create Spline

The only values that need to be modified are the 'Number', 'Axis' and 'Length'. Number represents the number of locator control positions generated along the length of the spline. More control points will provide finer control over the deformation, but also are more difficult to control. Since the deformation smoothly attenuates between each location, users should define the bare minimum number of point necessary to obtain the desired effect. The 'Axis' value determines along which axis the resulting spline will be generated, and 'Length' determines overall length of the resulting Spline, originating at the world origin and scaling outward in the positive direction along the specified axis (and not centered at the world origin as one might expect). Clicking 'OK' or pressing 'Enter' will accept the values and generate the 'Spline Deformer'. If modifications are necessary, users can press the 'Setup' button found in the 'Setup' and 'Animate' interface tabs, or press 'Enter' on the numeric keypad and enter the 'Setup' action state, allowing users to modify the curve relative to the target geometry without generating any deformations (it will also temporarily disable any positions changes applied to the curve outside of 'Setup)'. When properly positioned, users can exit the 'Setup' action state and then change the positions of any of the locators to deform the target mesh. Simply select the associated locator and move it, setting keyframes as necessary (if animation is desired).

User Created Spline

If it is desired to create a custom Spline Curve to use as a Deformation controller, users will need to generate this curve in the same Item layer as the target mesh its meant to deform (this can also be done by a cut-and-paste action prior to invoking the add 'Spline' deformer command). Users can draw the spline with the 'Curve' tool (Beziers are not supported by the Spline Deformer). This particular process requires the user to be in the 'Polygons' component mode with the target Curve selected (and only the target curve). With the target curve selected, users can either press the interface button "Spline" found in the toolbox within the 'Setup' and 'Animate' toolboxes, under the 'Deformers' subtab or they can RMB+click on the target mesh item layer and select the "Add Deformer > Effectors > Spline Effector" from the contextual menu. This opens the following menu-

Spline B

The only value that will need to be modified in the case of the user created curve is to enable the "Use Selected Mesh" option, instructing the tool to use the previously selected curve. The rest of the options are unnecessary, as everything else will key off the curve itself. Clicking 'OK' or pressing 'Enter' will accept the values and generate the 'Spline Deformer'. Once applied users only need to change the positions of any of the locators to deform the target mesh. Simply select the associated locator and move it, setting keyframes as necessary (if animation is desired).

 

Spline Effector--
To access the options related to the Spline Effector, users can select the Spline Effector item itself within the 'Items List', as a descendant of the item it is related to, in the 'Groups' viewport as the parent of the locators, or in the 'Deformers' palette and view the associated attributes in the 'Properties' panel.

Spline DeformerEnable: Toggles the effect of the layer on or off. When unchecked (disabled), the layer has no influence on the scene. However, disabled layers are still saved with the scene and its values are persistent across modo sessions.

Curve Axis: The 'Curve Axis' setting is critical for twisting and scaling as it decides how the Locator transform channels are used, so rotations along the axis add twist, the other rotation axes are ignored. Scaling perpendicular to the axis stretches the mesh perpendicular to the Curve Axis.

Y is Up: The 'Y is Up' toggle is used with the 'Curve Axis' option to set where the twist coordinates' zero-twist is. Disabling this option may be helpful to avoid kinking in a deformed mesh when twisting (in certain cases).

Elastic: The 'Elastic' option determines to what degree the deformed item is stretched along the curve to match its overall length. A setting of 100% (default) stretches the deformed area to the same lengths as the target curve, this deformation attenuates toward 0% where the item will retain its original undeformed length along the curve. Deforming always originates from the start of the curve itself. For items that are shorter than the target deformation spline, apply the 'Slide' option to position the geometry along the curve.

Elastic 1
Elastic Value 100%
  Ealstic 2
Elastic Value 50%
  Ealstic 3
Elastic Value 0%

Slide: The 'Slide' option is meant to move the target along the length of the curve, especially when the target item is shorter than the deforming curve. One example of how this could be useful is to animate a snake along a pre-determined path, by setting the 'Elastic' value to 0# and then using the 'Slide' option to deform the snake along the curve.

Elastic 1
Slide Value 0m
  Ealstic 2
Slide Value 1m
  Ealstic 3
Slide Value 2m

Source/Target Curve: The Source and Target Curve options allow an additional way for users to deform a target mesh using a custom created curve that is itself deformed by another Deformer (bypassing the need to create any handles to manipulate the curve). You'll first want to create the curve and then duplicate the curve to a new item (so there are two identical versions). Only the single curve should be in each item layer. Next, assign the deformation to the curve that will represent the 'Target Curve' (for example creating a Morph for the curve). Next, by adding a Spline Curve Deformer to an Item (see above) and not specifying a specific curve, just the Effector will be created. Users can then select it and specify the deforming curve as the 'Target' and the undeformed version as the 'Source'.

Tip icon

TIP: When you find a curve is reversed from what is desired, the point order can be inverted simply by selecting the target curve in one of the component modes and pressing 'F', now what was the start will be the end and vice-versa (This is the same command and action as flipping a polygons face normal).

 

comment balloon Comments (2) RSS Icon

Matelot March 20, 2012 at 12:12 AM

Matt Cox made two videos to explain this function : http://forums.luxology.com/discussion/topic.aspx?id=63105

François Caillaud July 11, 2012 at 9:39 AM

Locators of spline deformer should all be equidistant in the setup mode. if it is not the case, the distortion is bad

Top

back next