SplineOffset
the ultimate tool for 3D spline cloning and distribution.
SplineOffset is a modifier for 3ds Max that creates multiple clones of splines with the option to incrementally increase or decrease offset, translation, and rotation. In many ways it is similar to 3ds Max's built-in array tool combined with a spline offset function, but with two major benefits: Firstly SplineOffset is fully parametric so you can change the number of clones, the size of the offsets, and their distribution at any time. Secondly, SplineOffset is able to heal overlapping splines so that they form one continuous path, a feature that's missing from Max and opens up the plugin to a huge range of applications.
Features
- Procedurally clone and offset any spline.
- Increment translation, rotation and offset.
- Fully non-destructive. Edit settings at any time.
- Automatically heals intersecting splines caused by the offset operation.
- Set, increment and create patterns of Material IDs on cloned splines.
- Choose between 5 end types: Butt, Square, Round, Closed Spline or Closed Polygon.
- Choose between 3 bevel types: Square, Chamfer, or Round.
- Multiple SplineOffset modifiers can be used to create sophisticated nested effects
- Compatible with Max 2013 and above.
Tutorial
Procedures
To incrementally offset, translate or rotate parallelss
- Add a SpineOffset Modifier
- Use the # Parallels value to determine how many times the base spline is cloned
- Use the Translation values to incrementally Translate each parallel. There are separate values for X, Y and Z axes.
- Use the Rotate values to incrementally Rotate each clone. There are separate values for X, Y and Z axes.
To create parallels inside, outside or inside and outside a closed spline
- To create parallels outside a closed spline, use a positive Distance value.
- To create parallels inside a closed spline, change End Type to Closed Line and enter a negative Distance value.
- To create parallels inside and outside a closed spline, change End Type to Closed Line, enable Double Sided Offset and enter a positive Distance Value.
To fix a material ID
- Add a SpineOffset Modifier
- Increase # Parallels and incrementally Translate, Rotate or Offset splines as described above.
- Change Material ID mode to Fixed
- Enter a Material ID value to be used for the new splines. Note that the original spline is unaffected and that if multiple values are entered, only the first will be used.
To Increment material IDs
- Add a SpineOffset Modifier
- Increase # Parallels and incrementally Translate, Rotate or Offset splines as described above.
- Change Material ID mode to Increment By
- Enter a value by which the material ID for each spline will be incremented, starting with the material ID number on the source path. Note that if multiple values are entered, only the first will be used.
To Sequence material IDs
- Add a SpineOffset Modifier
- Increase # Parallels and incrementally Translate, Rotate or Offset splines as described above.
Change Material ID mode to either
Sequence by Segments to create a pattern of material IDs based on the segments of the spline
Sequence by Spline to create a pattern of material IDs based on the parallels
- Enter a comma separated list to define a repeating sequence.
To auto-heal overlapping Splines
- Add a SpineOffset Modifier
- Increase # Parallels and incrementally Translate, Rotate or Offset splines as described above.
- Splines from the same sub-splineare healed when the offset operation causes them to overlap
- To heal splines for different Sub Splines, enable Heal Intersecting Splines.
To set the pivot point
- Select the Spline object, remove any SplineOffset modifiers that are already present
- Go to the Hierarchy Panel and enable Affect Pivot Only
- Move the Pivot to its new position and orientation.
- Disable Affect Pivot Only
- Use the Reset XForm tool found in the Utilities panel
- Add SplineOffset modifiers as normal. They will now use the new pivot position for translate and rotate operations.
To Offset open splines
- Add a SplineOffset Modifier to an open spline
- Increase # Parallels and incrementally Translate, Rotate or Offset splines as described above.
- Change the End Type to either Open Butt, Open Square or Open Circle
To Offset splines that are not planar
- Add a SpineOffset Modifier
- Increase # Parallels and incrementally Translate, Rotate or Offset splines as described above.
- Change Mode to 3D
Interface
# Parallels
Specifies the number of times the input spline is duplicated.
Spacing
Controls the incremental offset of the cloned splines using two parameters
Distance
Sets the offset distance between each parallel
Offset
Allows you to modify the offset value for just the first parallel.
Rotation
Incrementally rotates splines using the stepped values set for the X, Y, and Z axes.
Translation
Incrementally translates the splines using the values set for the X, Y, and Z axes.
Material ID
Allows the user to control the material IDs on cloned splines. Five options are available
Don't change
Parallels retain the Material ID(s) assigned to the source spline
Fixed
Sets a new value for the parallels. The new Material ID is set using the input list at the bottom of the Material ID group UI. Note that in the event of a comma separate list, only the first entry is used for this mode.
Increment by
Increments the Material ID on each parallel by the first value stored in the input list
Sequence by Segment
Creates a pattern of material IDs using a comma separated list. The modifier then loops through these, moving to the next material ID in the sequence for each spline segment.
Sequence by Spline
Creates a pattern of material IDs using a comma separated list. The modifier then loops through these, moving to the next material ID in the sequence for each parallel
Mode
SplineOffset includes two algorithms for performing offset and healing operations: 2D Mode and 3D Mode.
2D
The 2D algorithm provides the most robust healing solution and has two additional options to define how the parallels are created by setting their Bevel Type and End Type. It also has the ability to auto-heal splines that are being generated by different sub-splines Though more featured, 2D mode will always flatten all splines on the Z axis before performing any further translation rotation or offset operations.
Bevel Type
Choose from 3 types of bevel type for intermediary corners: Square, Round or Chamfer
End Type
Choose from 5 options for the way the ends of spline are terminated: Closed Polygon, Closed Line, Open Butt, Open Square, or Open Round.
Heal Intersecting Splines
When enabled intersecting parallels from different sub-splines are auto-healed. When disabled, parallels from different sub-splines are not healed and simply overlap.
3D
3D mode lacks the Bevel Type and End Type features of 2D mode and has a less robust auto-healing algorithm, but it will retain the spline's position and orientation and attempt to make appropriate clones.
New Vertex Type
Sets the type used when new vertices are created, particularly useful on curved Splines. This setting can be used with the Conditional nodes and/or Corner settings in RailClone to help differentiate the original vertices in the source spline to the ones added by the SplineOffset modifier.
Keep Original Spline
When enabled, the source spline is retained. When disabled the source spline is removed.
Apply Backwards
When enabled, translation and rotation operations are performed backwards, i.e. from from the last parallel to the first. When disabled, translation and rotation operations are performed in the order from the first parallel to the last.
Double Sided Offset
When enabled, splines are created inside and outside of the source spline. When disabled, splines are only on one side of the source spline.
Installation
SplineOffset supports 3ds Max 2013 and above. There is no automatic installer application, so you will need to install SplineOffset manually by following these steps:
- Download SplineOffset from either the ITOOSOFT Website or Autodesk App Store.
- Extract the downloaded ZIP.
- Once extracted you will find a folder for each supported version of 3ds Max. Open the appropriate plugin folder and select SplineOffset.dlm.
- Copy SplineOffset.dlm to 3ds Max's plugin directory, usually located at C:\Program Files\Autodesk\3ds Max #####\Plugins.