Namespace UnityEngine.Splines
Classes
CurveUtility
A collection of methods for extracting information about BezierCurve types.
Spline
The Spline class is a collection of BezierKnot, the closed/open state, and editing representation.
SplineAnimate
A component for animating an object along a Spline.
SplineComponent
Base class for SplineInstantiate and SplineExtrude, contains common elements to both of these Components
SplineContainer
A Component that holds a Spline object.
SplineData<T>
The SplineData{T} class is used to store information relative to a Spline without coupling data directly to the Spline class. SplineData can store any type of data, and provides options for how to index DataPoints.
SplineDataHandleAttribute
SplineDataHandleAttribute can be use to add custom handles to SplineData<T>. The custom drawer class must inherit from SplineDataHandle and override one of the Draw static method.
SplineExtrude
A component for creating a tube mesh from a Spline at runtime.
SplineFactory
Methods to create spline shapes.
SplineMesh
Utility methods for creating and working with meshes.
SplineUtility
A collection of methods for extracting information about Spline types.
Structs
BezierCurve
Control points for a cubic bezier curve.
Points P0 through P3 are in sequential order, describing the starting point, second, third, and ending controls for a cubic bezier curve.
BezierKnot
This struct contains position and tangent data for a knot. The Spline class stores a collection of BezierKnot that form a series of connected BezierCurve. Each knot contains a Position, Tangent In, and Tangent Out. When a Spline is not closed, the first and last knots will contain an extraneous tangent (in and out, respectively).
DataPoint<TDataType>
A pair containing an interpolation ratio and {TDataType} value.
DistanceToInterpolation
A key-value pair associating a distance to interpolation ratio ('t') value. This is used when evaluating Spline attributes to ensure uniform ditribution of sampling points.
NativeSpline
A readonly representation of Spline that is optimized for efficient access and queries. NativeSpline can be constructed with a Spline and Transform. If a transform is applied, all values will be relative to the transformed knot positions.
SplineComputeBufferScope<T>
SplineComputeBufferScope is a convenient way to extract from a spline the information necessary to evaluate spline values in a ComputeShader. To access Spline evaluation methods in a shader, include the "Splines.cginc" file:
#include "Packages/com.unity.splines/Shader/Spline.cginc"
Interfaces
IDataPoint
Defines an interpolation ratio 't' for a Data Point.
IInterpolator<T>
To calculate a value at some distance along a spline, interpolation is required. The IInterpolator interface allows you to define how data is interpreted given a start value, end value, and normalized interpolation value (commonly referred to as 't').
ISpline
ISpline defines the interface from which Spline types inherit.
ISplineProvider
Implement ISplineProvider on a MonoBehaviour to enable Spline tools in the Editor.
SplineMesh.ISplineVertexData
Interface for Spline mesh vertex data. Implement this interface if you are extruding custom mesh data and do not want to use the vertex layout provided by SplineMesh."/>.
Enums
PathIndexUnit
Describes the unit of measurement used by DataPoint<TDataType>.
SplineAnimate.AlignmentMode
Describes the ways the object can be aligned when animating along the Spline.
SplineAnimate.EasingMode
Describes the different ways the object's animation along the Spline can be eased.
SplineAnimate.LoopMode
Describes the different ways the object's animation along the Spline can be looped.
SplineAnimate.Method
Describes the different methods that may be used to animated the object along the Spline.
SplineComponent.AlignAxis
Describes the different types of object alignment axes.
SplineType
Describes the different supported Spline representations.