You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+13-2Lines changed: 13 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,10 +12,14 @@ So if you ever need to see how something works, understand a concept,
12
12
check the types, or find out what certain options do,
13
13
it'll all be in the code and explained.
14
14
15
+
This implementation is also _extremely_ optimized compared to the original, being able to call the GetPointAtTime method ***100,000 TIMES*** in only **18ms** with an equal amount of unique "time"s being used. It is also the fastest implementation available on the Roblox platform with an API this extensive.
16
+
15
17
There is also a demo provided which you can use to play around with
16
18
the options and points. **Start the demo by (Run)ning a Server in Studio**.
17
-
You can drag the points around in the live-view to see the path change in
18
-
real-time. Then go in the code to change the "Curviness" and other options.
19
+
Common use-cases found in the Demo:
20
+
- Path Rendering
21
+
- Time to Point Location and Curvature Details at Time (Normal/Tangent being used)
22
+
- Locating Closest Point on Curve to a Provided Position
19
23
20
24
Get the [Roblox Model](https://create.roblox.com/marketplace/asset/15493350845/Curve-Interpolator) if you want to add it from within Studio.
21
25
@@ -51,4 +55,11 @@ are represented in Vector3.
51
55
it begins and you'll have trouble finding where it ends.
52
56
- This was done because the codebase was not capable of explaining itself
53
57
and most names were simply confusing/ambiguous.
58
+
- Module/Function Collapsing
59
+
- A lot of performance can be saved by localizing methods and collapsing functions
60
+
into inline code. This can be done because a majority of these module functions
61
+
and utility functions have only one location use, so inlining them into the code
62
+
and transferring the comments is the best way to go not only for ease of debugging
63
+
but also for the performance since its inlined and not having to go through
0 commit comments