Start typing to search packages!
curve
By @ddavness
Roblox
Mirrored from WallyThis version ships no README. Showing the README from v0.0.1, mirrored from wally.
Curve Library
A Roblox library that provides utilities to create and manage 3D curves (may also consider having 2D curves in the future).
Curves are created from certain key variables (start point, control point(s), etc.) and stored as [0, 1] -> CFrame functions. May be used for any purpose, including for example camera animations or procedural race track creation.
Since this library does not interact with the DataModel, it may be ported to another Luau platform (outside Roblox) if alternative Vector3 and CFrame implementations are provided.
Curve Type Support/Roadmap
:locationAt() | :dt1() (Velocity) | :dt2() (Acceleration) | :lengthAt() | |
|---|---|---|---|---|
| Lerp (line) | ✅ | 🚧 | 🚧 | 🚧 |
| Bézier (Quad) | ✅ | ✅ | ✅ | ❌ |
| Bézier (Cubic) | ✅ | ✅ | ✅ | ❌ |
| Bézier (nth degree) | Evaluating | |||
| Bézier chain/spline | Evaluating | |||
| Hermite Spline | Evaluating | |||
| Circle Arc | ✅ | 🚧 | 🚧 | 🚧 |
| Euler Spiral | ✅(1) | 🚧 | 🚧 | 🚧 |
| Archimedian Spiral | Evaluating |
Legend
- ✅ Implemented
- 🚧 Not yet implemented, will be implemented in the future
- ❌ Will not implement (not solvable analytically or not feasible to compute)
Notes
- (1) Analytical solution involves Fresnel Integrals which do not have a closed-form solution, but can be expressed via a Taylor Series expansion (more info); implemented via approximations of that expansion over a finite amount of terms
Quick Start
Implentation Details
Package Details
Install command (Click to copy)
Version
0.2.0
License
MIT
Safe for commercial use
License identified from the packaged LICENSE file; the manifest declared none.
Automated license review — not legal advice.
