- Substance 3D home
- User guide
- Glossary
- Getting started
- Interface
- Interface
- Customizing your workspace
- Home screen
- Main toolbar
- Preferences
- Explorer
- Graph view
- Library
- Properties
- 2D view
- 3D view
- Dependency manager
- Resources
- Resources
- Importing, linking and new resources
- Bitmap resource
- Vector graphics (SVG) resource
- 3D scene resource
- AxF (Appearance eXchange Format)
- Font resource
- Warnings from dependencies
- Substance graphs
- Substance graphs
- Substance graph key concepts
- Creating a Substance graph
- Exposing a parameter
- Graph parameters
- Inheritance in Substance graphs
- Output size
- Values in Substance graphs
- Publishing Substance 3D asset files (SBSAR)
- Exporting bitmaps
- Exporting PSD files
- Sample Substance graphs
- Warnings in Substance graphs
- Nodes reference for Substance graphs
- Nodes reference for Substance graphs
- Atomic nodes
- Node library
- Node library
- Texture generators
- Texture generators
- Noises
- Noises
- 3D Perlin noise
- 3D Perlin noise fractal
- 3D Ridged noise fractal
- 3D Simplex noise
- 3D Voronoi
- 3D Voronoi fractal
- 3D Worley noise
- Anisotropic noise
- Blue noise fast
- BnW spots 1
- BnW spots 2
- BnW spots 3
- Cells 1
- Cells 2
- Cells 3
- Cells 4
- Clouds 1
- Clouds 2
- Clouds 3
- Creased
- Crystal 1
- Crystal 2
- Directional noise 1
- Directional noise 2
- Directional noise 3
- Directional noise 4
- Directional scratches
- Dirt 1
- Dirt 2
- Dirt 3
- Dirt 4
- Dirt 5
- Dirt gradient
- Fluid
- Fractal sum 1
- Fractal sum 2
- Fractal sum 3
- Fractal sum 4
- Fractal sum base
- Fur 1
- Fur 2
- Fur 3
- Gaussian noise
- Gaussian spots 1
- Gaussian spots 2
- Grunge concrete
- Grunge Damas
- Grunge galvanic large
- Grunge galvanic small
- Grunge leaks
- Grunge leaky paint
- Grunge map 001
- Grunge map 002
- Grunge map 003
- Grunge map 004
- Grunge map 005
- Grunge map 006
- Grunge map 007
- Grunge map 008
- Grunge map 009
- Grunge map 010
- Grunge map 011
- Grunge map 012
- Grunge map 013
- Grunge map 014
- Grunge map 015
- Grunge rough dirty
- Grunge rust fine
- Grunge scratches dirty
- Grunge scratches fine
- Grunge scratches rough
- Grunge shavings
- Grunge splashes dusty
- Grunge spots
- Grunge spots dirty
- Liquid
- Messy fibers 1
- Messy fibers 2
- Messy fibers 3
- Microscope view
- Moisture noise
- Perlin noise
- Plasma
- Caustics
- Voronoi
- Voronoi fractal
- Waveform 1
- White noise
- White noise fast
- Patterns
- Patterns
- 3D linear gradient
- 3D volume mask
- Alveolus
- Arc pavement
- Brick 1
- Brick 2
- Brick generator
- Checker 1
- Cube 3D
- Cube 3D GBuffers
- Fibers 1
- Fibers 2
- Gaussian 1
- Gaussian 2
- Gradient axial
- Gradient axial reflected
- Gradient circular
- Gradient linear 1
- Gradient linear 2
- Gradient linear 3
- Gradient radial
- Height extrude
- Mesh 1
- Mesh 2
- Panorama shape
- Polygon 1
- Polygon 2
- Scratches generator
- Shape
- Shape extrude
- Shape mapper
- Shape splatter
- Shape splatter blend
- Shape splatter data extract
- Shape splatter to mask
- Splatter
- Splatter circular
- Star
- Starburst
- Stripes
- Tile generator
- Tile random
- Tile random 2
- Tile sampler
- Triangle grid
- Weave 1
- Weave 2
- Weave generator
- Filters
- Filters
- Adjustments
- Adjustments
- Apply color palette
- Auto levels
- Channel mixer
- Chrominance extract
- Clamp
- Color match
- Color to mask
- Contrast/Luminosity
- Convert to linear
- Convert to sRGB
- Create color palette (16)
- Grayscale conversion advanced
- Hald CLUT
- HDR range viewer
- Height map frequencies mapper
- Highpass
- Histogram compute
- Histogram equalize
- Histogram range
- Histogram render
- Histogram scan
- Non-uniform histogram scan
- Histogram select
- Histogram shift
- ID to mask grayscale
- Invert
- Lighting cancel high frequencies
- Lighting cancel low frequencies
- Luminance highpass
- Min max
- Modify color palette
- Pow
- Quantize color (Simple)
- Quantize color
- Quantize grayscale
- Replace color
- Replace color range
- Threshold
- View color palette
- Blending
- Blurs
- Channels
- Effects
- Effects
- 3D texture position
- 3D texture SDF
- 3D texture surface render
- 3D texture volume render
- Ambient occlusion (HBAO)
- Ambient occlusion (RTAO)
- Anisotropic Kuwahara color
- Anisotropic Kuwahara grayscale
- Bevel
- Bevel smooth
- Cross section
- Curvature
- Curvature smooth
- Curvature sobel
- Diffusion color
- Diffusion grayscale
- Diffusion UV
- Directional distance
- Edge detect
- Emboss with gloss
- Extend shape
- Flood fill
- Flood fill mapper
- Flood fill to Bbox size
- Flood Fill to gradient
- Flood Fill to grayscale/color
- Flood Fill to index
- Flood Fill to position
- Flood Fill to random color
- Flood Fill to random grayscale
- FXAA
- Glow
- Mosaic
- Multi directional warp
- Non-uniform directional warp
- Reaction diffusion fast
- RT irradiance
- RT shadow
- Shadows
- Shape drop shadow
- Shape glow
- Shape stroke
- Summed area table
- Swirl
- Uber emboss
- Vector morph
- Vector warp
- Normal map
- Tiling
- Transforms
- Material filters
- Material filters
- 1-click
- Effects (Material)
- Transforms (Material)
- Blending (Material)
- PBR utilities
- Scan processing
- Mesh-based generators
- Mesh-based generators
- Mask generators
- Weathering
- Utilities (Mesh-based generators)
- Spline & Path tools
- Spline & Path tools
- Working with Path & Spline tools
- Path tools
- Spline tools
- Spline tools
- Paths to Spline
- Point list
- Scatter on Spline color
- Scatter on Spline grayscale
- Spline 2D transform
- Spline (Cubic)
- Spline (Poly quadratic)
- Spline append
- Spline bridge (2 Splines)
- Spline bridge (List)
- Spline bridge mapper color
- Spline bridge mapper grayscale
- Spline circle
- Spline fill
- Spline flow mapper
- Spline mapper color
- Spline mapper grayscale
- Spline merge list
- Spline render
- Spline sample height
- Spline sample thickness
- Spline select
- Spline warp
- UV mapper color
- UV mapper grayscale
- 3D view (Library)
- 3D view (Library)
- HDRI tools
- Node library
- Substance function graphs
- Substance function graphs
- What is a Substance function graph?
- Create and edit a Substance function graph
- The Substance function graph
- Variables
- FX-maps
- FX-Maps
- How it works
- The Iterate node
- The Quadrant node
- Using Substance function graphs in FX-Maps
- Warnings in Substance function graphs
- Sample Substance function graphs
- Nodes reference for Substance function graphs
- MDL graphs
- Bakers
- Best practices
- Pipeline and project configuration
- Color management
- Package metadata
- Scripting
- Scripting
- Plugin basics
- Plugin search paths
- Plugins packages
- Plugin manager
- Python editor
- Accessing graphs and selections
- Nodes and properties
- Undo and redo
- Application callbacks
- Creating user interface elements
- Adding actions to the Explorer toolbar
- Using color management
- Using spot colors
- Logging
- Using threads
- Debugging plugins using Visual Studio Code
- Porting previous plugins
- Packaging plugins
- Scripting API reference
- Technical issues
- Release notes
In: Spline & Path Tools > Spline Tools
Description
Generates a spline along several points. The amount and locations of these points may be arbitrary or gathered from a Point List node.
The trajectory of the spline can be smoothed away from its intermediary points, in that each intermediary point is the meeting point of the ‘out’ and ‘in’ tangents of its neighbours.
Input connectors
Preview Grayscale
The preview of the input splines as a grayscale image.
Spline Coords Color
The coordinates of the input splines’ points encoded in the RGBA channels of a color image:
R - X position
G - Y position
B - Height
A - Packed data:
- Sign: Spline is closed (negative) or open (positive);
- Absolute value: Thickness + 1.
Spline Data Color
Additional data of the input splines encoded in the RGBA channels of a color image.
R - Tangents X
G - Tangents Y
B - Unused
A - Unused
Spline Amount Integer
The number of input splines.
Points Preview Grayscale
The preview of the points as a grayscale image.
Input Point List Color (available when ‘Use Input Point List’ is True)
A list of points encoded in the RGBA channels of a color image:
R - X position
G - Y position
B - Height
A - Packed data:
- Integer part: Smoothness;
- Fractional part: Thickness.
Point Number Integer (available when ‘Use Input Point List’ is True)
The number of points.
The Point List and Point Number connectors are not compatible with Spline Coord, Spline Data and Spline Amount connectors, for they rely on different data.
Output connectors
Preview Grayscale
The preview of the output splines as a grayscale image.
Spline Coords Color
The coordinates of the output splines’ points encoded in the RGBA channels of a color image.
R - X position
G - Y position
B - Height
A - Packed data:
- Sign: Spline is closed (negative) or open (positive);
- Absolute value: Thickness + 1.
Spline Data Color
Additional data of the output splines encoded in the RGBA channels of a color image.
R - Tangents X
G - Tangents Y
B - Unused
A - Unused
Spline Amount Integer
The number of output splines.
Parameters
Points Amount Integer
The arbitrary number of points used to build the spline.
Input Spline Connection Mode Integer
The method used to connect the input Splines:
- Auto: The end of the last input spline is connected to the start of the generated spline, and the end to the generated spline is connected to the start of the first input spline;
- Manual: You can specify which of the input splines should be connected to the extremities of the generated spline, and where on the input splines these connections should land.
Close Spline Boolean
Controls whether the end point of the spline should be connected to its start point.
The smoothing applied to the spline at the start and end points is specified by the Smoothness values of those points.
Flip Direction Boolean
Inverts the direction of the spline.
Use Input Point List Boolean
Use the list of points supplied to the Input Point List and Point Number input connectors instead of an arbitrary list of points.
The list of points can be supplied by a Point List node.
Connect Start to Input Spline Boolean
When True, the start of the generated spline is connected to the last point of the last spline in the input splines.
Start Connection Spline Index Integer (Available when ‘Input Spline Connection Mode’ is set to ‘Manual’ and ‘Connect Start to Input Spline’ is set to ‘True’)
The index of the input spline which should be connected to the start of the generated spline.
Start Connection Position Float (Available when ‘Input Spline Connection Mode’ is set to ‘Manual’ and ‘Connect Start to Input Spline’ is set to ‘True’)
The position on the selected input spline where the connection to the start of the generated spline should land.
This value is the normalized length of the selected input spline.
Connect End to Input Spline Boolean
When True, the end of the generated spline is connected to the first point of the first spline in the input splines.
End Connection Spline Index Integer (Available when ‘Input Spline Connection Mode’ is set to ‘Manual’ and ‘Connect End to Input Spline’ is set to ‘True’)
The index of the input spline which should be connected to the end of the generated spline.
End Connection Position Float (Available when ‘Input Spline Connection Mode’ is set to ‘Manual’ and ‘Connect End to Input Spline’ is set to ‘True’)
The position on the selected input spline where the connection to the end the generated spline should land.
This value is the normalized length of the selected input spline.
Uniform Distribution Boolean
When True, the points of the spline are evenly spaced from start to end.
Append Input Spline Boolean
Adds the generated spline to the end of the list of splines connected to the Spline inputs.
Non-Square Correction Boolean
Adjust the points’ positions and thickness to retain the spline shape in non-square resolutions.
This also impacts uniform distribution.
Global Smoothness Adjustment Float
Applies a uniform offset to the smoothness value of all points.
The resulting smoothness value is clamped to the [0;1] range.
p# Properties Float3
Sets the properties of the p# point.
- Height: Adjusts the height of the point where a lower value means a lower or deeper location;
- Smoothness: Offsets the start of the smoothing of the spline at p#, where a value of 0 results in a hard trajectory and 1 in an entirely smooth one;
- Thickness: Adjusts the thickness of the spline at p#. Thickness is used by specific Spline nodes.
p# Float2
Sets the position of the p# point in texture space.
Show Tangents Boolean
Displays the tangents of the p1 and p3 points to p2 in the Preview output.
Show Direction Helper Boolean
Displays a dot at the start of the spline and an arrowhead at its end in the Preview output.
Show Thickness Envelope Boolean
Displays additional lines at the edges of the spline’s thickness.
Show Points Label Boolean
For each point, displays the point's name next to it in the 'Preview' output.
Points Label Size Float (Available when 'Show Points Label' is set to 'True')
The size of the label for each point in texture space, where 0.1 is a tenth of the texture's width.
Show Points Boolean
Displays the control points for the spline.
Points Size Float (Available when 'Show Points' is set to 'True')
The radius of the points in texture space, where 0.1 is a tenth of the texture's width.
Segments Amount Integer
Adjusts the number of segments used to draw the spline visualization in the Preview output.
A higher value results in a smoother line.
Thickness (px) Float
Adjusts the thickness of the spline visualization in pixels in the Preview output.
Examples