• Stars
    star
    143
  • Rank 257,007 (Top 6 %)
  • Language
    C#
  • License
    MIT License
  • Created about 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

NURBS spline/surface library for Unity

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.

Reference