Skip to content

mtSplineFX

mtSplineFX takes in multiple start and end objects of polygonal, spline and xpEmitter types and creates a variety of spline connections between them.


mtSplineFX_UI Update_v01.png

Object tab User Interface (UI) menu options.

In order for mtSplineFX to function, both a start and and object is required.

Drag and drop your polygon, spline or xpEmitter into these lists to create the start and end points.


Set as Origin, by default, select where on the object the start and end points will be generated.

The other options are: Points and Surface.

A single connection made at the center of the object.

mtSplineFX_Connection Type_Origin_v05.png

With a Connection Type of Origin, connections are generated from the axis points of the start end end objects (the Cube and the Sphere).

Connections from the actual vertices of polygonal objects, real points of a spline or particles (if xpEmitter is selected as Start Objects or End Objects).

mtSplineFX_Connection Type_Points_v02.png

With a Connection Type of Points, connections are generated from the points, or vertices, of the start and end objects.

Connection from a random surface of a polygonal object, at any distance along a spline or a particle (if xpEmitter is selected - as above).

mtSplineFX_Connection Type_Surface_v02.png

With the Connection Type of Surface, connections are generated from random points on the surfaces of the start and end objects..

Only available in the Surface setting, this is the number of points to generate on each start and end object.

mtSplineFX_Connection Type_Surface Points_v02.png

Here, in the Surface setting, the number of points generated come from the Surface Points value (of 50).

Gives a random connection, based on the settings above.


Set as First, by default, this is the number of connections made, between start and end points.

Without a limit, a connection is made between each start point and every end point.

mtSplineFX_Connection Limit_None_v04.png

In this image, with a Connection Limits setting of None, there is a connection between each vertex of the Cube and every point of the Sphere.

With the Connection Limits setting changed to Facing, the connections are now only between each vertex of the Cube and every point of the Sphere that are facing each other.

A single connection is made between a start point and the first free end point.

mtSplineFX_Connection Limit_First_v03.png

Here, with a Connection Limits setting of First, only one connection is made between a start point of the Cube and the first free end point of the Sphere.


Motion effects spline animations.

A large and small noise modifier is applied to each spline line, with random distribution.

These drop-down boxes contain all the standard Cinema 4D noise types.

The amplitude of the noise waves.

This animation demonstrates the effect of the Amplitude parameter.

The size of the wave.

In this animation, an increase in the Scale from 5 to 150% shows how it affects the Amplitude setting.

The speed at which the wave moves.

An increase in the Animation Speed is demonstrated in this animation.

The number of frames reached before the animation repeats.


When ticked, falloff is enabled for both noises.

mtSplineFX_Falloff_User_v06.png

Use Falloff disabled.

mtSplineFX_Falloff_User_v05.png

Use Falloff enabled, with the default Falloff setting.

The falloff curve is used as a strength modifier to the noise, along the length of spline.

mtSplineFX_Falloff_User_v04.png

In these two images, the Falloff curve is driving the spline patterns.

mtSplineFX_Falloff_User_v03.png


Each primary spline will start at this percentage along its original path.

Animation of the Growth Start parameter.

Each primary spline will end at this percentage along its original path.

Animation of the Growth End parameter.

A random value will affect each splines growth values by this strength percentage.

mtSplineFX_Growth Variation_v01.png

The Growth End setting is 100% here but, with the Variation at 50%, the splines are each at a different growth point.


The gravity settings will ‘drop’ the center of each spline downwards, using a curve.

The size of the drop.

Animation to demonstrate the effect of the Strength setting.

This animation demonstrates the effect of a negative gravity Strength setting, showing an inverted arcing of the splines.

Variation applies a random modifier to the gravity strength of each spline.

This animation has the same Strength increase from 0 (zero) to 100%, but there is also a Variation setting of 100% here, giving different spline patterns.

This slider offsets the lowest point of the curve towards whichever end you choose.

mtSplineFX_Gravity_Bias_1.png

Bias value of 0 (zero) %.

mtSplineFX_Gravity_Bias_3.png

Here, the Bias is increased to 50%.

mtSplineFX_Gravity_Bias_2.png

In this final image, the Bias is set at 100%.

Changes the Bias value randomly between splines.

mtSplineFX_Gravity_Bias_Variation_v01.png

With the Bias set at 100%, the Variation value of 100% ensures there is a different pattern to each spline.

Changes the shape of the curve, either to be more narrow or wider.

mtSplineFX_Gravity_Tension_1.png

Tension set at -100%.

mtSplineFX_Gravity_Tension_2.png

The Tension value is at 0 (zero) %, in this image.

mtSplineFX_Gravity_Tension_3.png

Tension raised to 100%.


Avoid will modify each spline to arc around collider objects.

The resulting arc will be different if gravity is enabled.

Check to enable the effect.

Enabling this will ensure that the Fork splines (generated in the Connections tab) also avoid objects.

A percentage value that affects the size of the arc.

This animation shows the effect of increasing the Weight setting.

A value which makes the arc shape more narrow.

In this animation, the Pinch value is being increased, narrowing the arc.

Drag and drop any objects to be avoided into this list.

mtSplineFX_Avoid Multiple Objects_v01_ConPatch.png

Three Platonic polygons have been dropped into the Avoid Objects list here, directing the splines to avoid them.

2mtSplineFX_Avoid_Gravity_v01_ConPatch.png

The splines are avoiding the Oil Tank, in the Avoid Objects list, working together with a negative gravity Strength value.


The standard Cinema 4D options for each spline.

Set as Linear, by default, this changes how the spline shape is calculated.

The alternative options are: Akima, Bezier, B-Spline and Cubic.

mtSplineFX_Spline Type_Linear_v01.png

Linear spline Type setting.

mtSplineFX_Spline Type_BSpline_v01_ConPatch.png

In this image, the Type setting is B-Spline.

Enabling this will create a final section between the first and last points, closing the spline.

Set as Natural, by default, these are the standard Cinema 4D options.

Alternatives are: None, Uniform, Adaptive and Subdivision.

These options are relevant to different Type and Intermediate Point selections.


Untitled

Connections tab menu options.

Connections expand the system by generating additional splines around the primary splines.

As the Connection list is hierarchical, a child node will generate its splines around a parent, rather than primary splines.

A list-button, which lets you add in either a Fork or Nearest Distance layer connection node.

A Fork connection will generate additional splines (forks) along either primary splines or along splines created by its parent node.

mtSplineFX_Connections_Fork_v01.png

This images shows the Fork connection layer.

The Nearest Distance connection type creates splines between generated points, or parent splines, within certain distance parameters.

mtSplineFX_Connections_Nearest_v02.png

The Nearest Distance connection layer.

The list of all current Connections.

This is a hierarchical list so order is important.


Untitled

Fork connection menu settings.

Set as None, by default, the user can choose the direction of the forks.

The other settings are: Start Objects, End Objects and Custom Object.

Each new Fork spline will point away from the center of the spline.

2mtSplineFX_Connections_Fork_Connect to_None_v01.png

Here, the Connect To setting is None, with Fork splines pointing away from the spline.

Forks will face towards a random surface of a random start object.

2mtSplineFX_Connections_Fork_Connect to_Start_v01.png

In this image, the Connect To setting is Start Objects.

Similar to above, but with end objects.

2mtSplineFX_Connections_Fork_Connect to_End_v01.png

The End Objects setting shows almost a mirrored version of the above.

Forks will face towards a random surface on a user-chosen object.

2mtSplineFX_Connections_Fork_Connect to_Custom_v01.png

In the Custom Object setting, with the Fork connection layers facing the Cylinder, which is dropped in the Custom Object field.

This field accepts different objects for forks to point towards, if Connect To is set as Custom Object.

How many forks are generated per spline.

mtSplineFX_Connections_Fork_Count_v01.png

A Fork Count setting of 3.

2mtSplineFX_Connections_Fork_Count_v02.png

Fork Count increased to 30.

Forks will inherit the main noise value, which can be toned down by decreasing the Noise Strength value.

2mtSplineFX_Connections_Fork_Noise Strength_v02.png

In this image, the Noise Strength is at 50%.

2mtSplineFX_Connections_Fork_Noise Strength_v01.png

Here, the Noise Strength is increased to 500%.

If Connect To is not set as None, the length of fork is set equal to the distance from the start point, to the random point on the object surface.

The Stretch value affects this size as a percent.

2mtSplineFX_Connections_Fork_Stretch_v01.png

Stretch value set at 30%.

2mtSplineFX_Connections_Fork_Stretch_v02.png

Here, the Stretch value has been raised to 100%.

If Connect To is set as None, each fork is given this arbitrary distance as a length.

2mtSplineFX_Connections_Fork_Length v01.png

The Length setting is 30cm, in this image.

2mtSplineFX_Connections_Fork_Length v02.png

With the Length increased to 150cm, the Fork connections are longer.

Varies the length between each fork.

2mtSplineFX_Connections_Fork_Length Variation_v02.png

A Length Variation of 75%, giving a large variety of Fork connections.

Forks can have their initial direction offset by this amount.

2mtSplineFX_Connections_Fork_Angle_v02.png

Angle setting of (negative) -30 degrees.

2mtSplineFX_Connections_Fork_Angle_v01.png

With the Angle setting at 0 (zero) degrees, the Fork connections are at their default.

2mtSplineFX_Connections_Fork_Angle_v03.png

In this image, the Angle is raised to 30 degrees.

Varies the angle of each fork.

2mtSplineFX_Connections_Fork_Angle Variation_v01.png

Here, there is no Angle Variation, set at 0 (zero) %.

2mtSplineFX_Connections_Fork_Angle Variation_v02.png

Angle Variation raised to 60%.

Forks will inherit the main Points Per Spline count (Object tab), but this can be reduced by lowering the quality.

Check the box to enable the Falloff settings.

With Use Falloff enabled, the strength of noise along the fork will be adjusted by this gradient value.

2mtSplineFX_Connections_Fork_Falloff_01.png

2mtSplineFX_Connections_Fork_Falloff_02.png

2mtSplineFX_Connections_Fork_Falloff_03.png

Use Falloff is enabled in all three of these images, with the differing noise settings being driven from the Falloff gradients shown.


Manipulate this curve to change the probability of forks being generated at each point along the line.

2mtSplineFX_Connections_Fork_Distribution_v01.png

The default Distribution setting.

2mtSplineFX_Connections_Fork_Distribution_v03.png

The Distribution spline setting is driving the generation of Fork connections on this spline.

2mtSplineFX_Connections_Fork_Distribution_v02.png

A slightly amended setting gives this look.

2mtSplineFX_Connections_Fork_Distribution_v04.png

This setting ensures the Fork connections are restricted to the start of the spline.


Similar to Distribution, above, this affects the scale of the forks.

2mtSplineFX_Connections_Fork_Scale_v02.png

An increasing linear Scale Bias spline setting results in smaller forks at the start with a linear increase in scale to the larger forks at the end.

2mtSplineFX_Connections_Fork_Scale_v01.png

With the Scale Bias at full strength, all forks are at true to the Length value.

2mtSplineFX_Connections_Fork_Scale_v04.png

This custom user spline emphasises the scale of the second to last fork and reduces the scale of the other forks.

2mtSplineFX_Connections_Fork_Scale_v03.png

This downward linear setting is the opposite of the top image and results in larger forks at the start with a linear decrease in scale towards the end.


Untitled

Nearest Distance connection menu settings.

Set as Distance, by default.

The alternative setting is Split

A spline will be generated from a point along a parent spline, to a random point on an object chosen below.

A spline will be created between points generated on the surface of each object.

Points must be closer than this to be connected.

2mtSplineFX_Connections_Nearest_Split_Min_02.png

Only points within the 300cm Min Distance value are connected.

2mtSplineFX_Connections_Nearest_Split_Min_01.png

With Min Distance lowered to 200cm, less points are close enough to be connected.

Points must be further away than this to be connected.

2mtSplineFX_Connections_Nearest_Split_Max_v01.png

Conversely, only points further away than the Max Distance value of 160cm are connected, here.

Limit the number of connections per each point.

2mtSplineFX_Connections_Nearest_Split_Max Number_v01.png

The Max Number value of 3 means only 3 connections are made per point.

2mtSplineFX_Connections_Nearest_Split_Max Number_v02.png

In this image, the Max Number value has been raised to 50, giving 50 connections per point.


If the Mode is set to Distance, this value will shift the new spline away from the surface of the object.

2mtSplineFX_Connections_Nearest_Distance_Surface Push_v01.png

This first image has Surface Push set at 100%.

2mtSplineFX_Connections_Nearest_Distance_Surface Push_v02.png

With Surface Push raised to 245% the splines are pushed away from the surface of the objects.


If the Mode is set to Connections, shift the connection point along the parent spline by this value.

2mtSplineFX_Connections_Nearest_Split_Position_v07.png

The Position value of 25% moves the connection point to a quarter of the way along the parent spline.

2mtSplineFX_Connections_Nearest_Split_Position_v08.png

With the Position raised to 60%, the connection point is moved further along.

2mtSplineFX_Connections_Nearest_Split_Position_v09.png

And, finally, Position is set at 90% here, putting the connection point almost at the end of the parent spline.

Randomly adjust the starting position of each spline by this value.

2mtSplineFX_Connections_Nearest_Split_Position_v06.png

Variation at 0 (zero) %, meaning there is no variation to the starting points.

2mtSplineFX_Connections_Nearest_Split_Position Variation_v01.png

Here, with Variation set at 100%, every spline has a different starting point.

Set as Points, by default, this defines where, on the connecting object, the generated points should be.

The alternative setting is Surface.

The generated points should be on existing vertices of the connecting object.

2mtSplineFX_Connections_Nearest_Points_v02.png

Connect To set as Points, with Connections disabled.

2mtSplineFX_Connections_Nearest_Points_v01.png

Connect To set as Points, with Connections enabled, in the Nearest connection mode.

The generated points should be on a random surface of the connecting object.

2mtSplineFX_Connections_Nearest_Surface_v01.png

Connect To set as Surface, with Connections disabled.

2mtSplineFX_Connections_Nearest_Surface_v02.png

Connect To set as Surface, with Connections enabled, in the Nearest connection mode. The Cylinder is dropped in the Objects list, with connecting points on its surface.

If the mode is Connections, this is the list of objects which will have a random point generated on their surface for use as an endpoint.


General options to change the display of splines, connections and contact points.

Display.png


Copyright © 2026 INSYDIUM LTD. All rights reserved.