FBX/Maya Import — Cubic Curves Cause Vertical Velocity Spikes and Axis Trips¶
Summary¶
Maya uses cubic splines for its animation curves. These produce smooth positions and continuous velocity values — but at zero-speed crossings, the velocity graph hits zero as a straight vertical line, which represents an instantaneous (infinite) acceleration. This causes axis trips when the move is imported into Flair. The fix is to apply the Smooth function 3–4 levels in Flair after import. Position stays smooth; velocity transitions are rounded to physically achievable ramps.
Symptoms¶
- FBX or CGI move imported from Maya causes an axis to trip immediately or early in the run
- Velocity graph in Flair shows straight vertical lines at points where velocity crosses zero
- Position curves look smooth — the problem is only visible in the velocity or acceleration graph
- Axis with hardest deceleration / stop trips first
Systems Affected¶
- Flair Classic and Flair 7
- Any FBX or CGI import from Maya (or tools that export Maya-style cubic curves)
- Particularly acute on fast moves with hard stops and reverses
Cause¶
Maya uses cubic splines (Bezier/Hermite cubics) to generate animation curves. These guarantee a smooth position profile but make no guarantee about acceleration continuity. At points where velocity reaches zero and reverses, the cubic polynomial produces a zero crossing where the velocity slope (i.e., acceleration) is effectively vertical — a mathematical discontinuity.
In physical motion, a vertical line in the velocity graph means infinite acceleration at that instant. No real motor can follow this. Flair detects the resulting axis error and trips.
"Maya uses Cubics to generate its curves (mostly) and these do NOT guarantee a smooth acceleration. See the graph: smooth position blue and continuous velocity, but notice how the green velocity hits the 0 point as a straight line and the resultant spike in the acceleration (red)." — Simon Wakley, 2022-08-25
Reading the Graphs in Flair¶
Open the curve editor and examine the velocity graph (green) for the affected axis:
- A smooth, rounded curve through zero = acceptable
- A straight vertical line at zero = an acceleration discontinuity — will trip
Also check the acceleration graph (red):
- Spikes are acceptable
- Vertical discontinuities (instantaneous jumps) are not — they indicate the velocity transition is too abrupt
Fix — Apply Smooth Function 3–4 Levels¶
After importing the FBX/CGI move into Flair:
- Select the affected axis (or all axes).
- Apply the Smooth function in the Flair curve editor.
- Apply 3–4 levels of Smooth.
- Re-examine the velocity graph — the straight vertical lines at zero should now be replaced with rounded transitions.
- Re-examine the acceleration graph — spikes may still appear, but there should be no vertical discontinuities.
- Run a test at low speed before full speed.
"Use the Smooth function 3-4 levels and you get a smooth result. The acceleration can have spikes, but not totally vertical discontinuities." — Simon Wakley, 2022-08-25
Smooth affects the position profile slightly
Applying Smooth will introduce small deviations from the exact Maya position curve. 3–4 levels is typically sufficient to make the move physically executable while keeping positions close to the original intent. More levels of Smooth will deviate further from the original CGI data.
Source: talk.mrmoco.com — Importing from Maya Curves etc — Post by Simon Wakley, 2022-08-25
Official Documentation¶
Related Tutorials¶
Related Issues¶
- See also: FBX Import Forces Elbow-Up Even When Rig is Pre-Positioned Elbow-Down — another FBX import issue on Bolt robots
Revision History¶
| Date | Change | Editor |
|---|---|---|
| 2026-05-29 | Initial extraction from forum topic 1051 | Tom D / Claude Code |