untiy-nurbs
NURBS spline and surface module for Unity. Both spline/surface are modifiable in the runtime, and all the data is automatically serialized in ScriptableObject.
Spline
The spline module has Standard, Loop, and Clamped options. The GetCurve
function converts [0, 1) to a position on a curve. First & second derivatives are available with methods named GetFirstDerivative
and GetSecondDerivative
, which are currently available in Standard or Loop mode.
Surface
Same as Spline, the NURBS surface module has Standard, Loop, and Clamped options for each direction (because NURBS surface is a Tensor of NURBS spline). This means the surface module supports Plane, Cylinder, Torus, Sphere (Clamped top and bottom). By moving control points using unity built-in handle UI, you can modify a mesh in runtime. Once you finish modifying you can bake the mesh out and save it as an asset with CreateOrUpdate
method.
TODO
- Weight support in derivatives of spline.
- Derivatives in clamped spline.