Alternative Curves

thumb
Identjimbomcb.altcurves
Typelibrary
Created
Updated
Latest Version 105475 72.8 KB ~8
Tags editor tool curve curves
Links s&box
SummaryAn alternative Curve structure featuring better performance and editor features like undo, snapping, and automatic interpolation
Description
Alternative Curves + Editor This is a replacement to the stock Curve structure, with improved performance and an expanded editor including features such as automatic tangents, pre/post-infinity controls, snapping, undo/redo, and more. More performant? At the time of publishing, the stock Curve asset uses O(n log n) time complexity to find and access keyframes because of the internal workings of ImmutableList. We use a single binary search and constant time array lookups, resulting in us instead running in O(log n) time. Profiling shows evaluation running at least 85% faster than the stock Curve evaluations in the worst case, only improving as more keyframes are added. Shortcuts: Navigation and View: F: Focus view Middle-Mouse: Create keyframe at location Left-Mouse (Hold): Box select Delete: Remove selected keyframes Ctrl+A: Select all Ctrl+Z: Undo Ctrl+Y: Redo Scroll: Zoom Scroll (Shift): Zoom Vertical Scroll (Ctrl): Zoom Horizontal Snapping and Axis Locking: Z: Toggle time snapping X: Toggle value snapping Alt (Hold): Disable snap Shift (Hold): Lock keyframe movement axis Keyframe Manipulation: 1: Cubic interpolation - Auto tangents 2: Cubic interpolation - Mirrored tangents 3: Cubic interpolation - Split tangents 4: Linear interpolation 5: Stepped/Constant interpolation 6: Flatten tangents Source: github.com/jimbomcb/sbox-altcurves
Alternative Curves + Editor This is a replacement to the stock Curve structure, with improved performance and an expanded editor including features such as automatic tangents, pre/post-infinity controls, snapping, undo/redo, and more. More performant? At the time of publishing, the stock Curve asset uses O(n log n) time complexity to find and access keyframes because of the internal workings of ImmutableList. We use a single binary search and constant time array lookups, resulting in us instead running in O(log n) time. Profiling shows evaluation running at least 85% faster than the stock Curve evaluations in the worst case, only improving as more keyframes are added. Shortcuts: Navigation and View: F: Focus view Middle-Mouse: Create keyframe at location Left-Mouse (Hold): Box select Delete: Remove selected keyframes Ctrl+A: Select all Ctrl+Z: Undo Ctrl+Y: Redo Scroll: Zoom Scroll (Shift): Zoom Vertical Scroll (Ctrl): Zoom Horizontal Snapping and Axis Locking: Z: Toggle time snapping X: Toggle value snapping Alt (Hold): Disable snap Shift (Hold): Lock keyframe movement axis Keyframe Manipulation: 1: Cubic interpolation - Auto tangents 2: Cubic interpolation - Mirrored tangents 3: Cubic interpolation - Split tangents 4: Linear interpolation 5: Stepped/Constant interpolation 6: Flatten tangents Source: github.com/jimbomcb/sbox-altcurves
Votes 9 0 12
Error Rate0%
Reviews
1 reviews
100% Recommended (1) 0% Promise (0) 0% Needs Work (0)
Data
{}