Spline Tools
A novel system for crating animations and pathing using Splines/bezier curves in the Unity 3D engine. Originally developed to compliment the FOE MMO/MOBA combat systems. A version of the complete project is available here
Huge thanks to Freya Holmer for their incredible articles and presentations on bezier curves which heavily inspired this system.
Motivation
Inspired by this video-essay: How the fundamentals of animation apply to game design with League of Legends
Warning
Warning: depicts some anime violence - skip to 1:30 to bypass.
Goals
-
Reduce difficulty prototyping complex ability interraction chains
-
getting meaningful logging data
-
Create tools to implement essential principles of animation in the movement of non-ambulatory actors
-
Ability to randomly seed/generate abilities and animations to kick-start the creative process
Examples
- "Justice rains from above..."
- loopy loops
-
Editor and Game views
Example
Switching between the game and Editor views while an animation plays. This shows the custom editor gizmos created to help customize spline paths and animations -
Spline Manager Editor
Example
-
Spline Profile Editor
Example
-
Editor Gizmos in-scene
Example
Maths
Heres what the math for all that looks like in code.
Basic Spline
1 2 3 4 5 6 7 8 9 10 11 12 |
|
Advanced Spline
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
|
Moving an object
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|