Skip to content

NURBS spline/surface library for Unity

License

Notifications You must be signed in to change notification settings

p4jo/unity-nurbs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

NURBS spline/surface library for Unity

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 95.9%
  • ShaderLab 4.1%