unity-nurbs
unity-nurbs copied to clipboard
NURBS spline/surface module
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.