AI summaryⓘ
The authors developed bbsolver, a tool that simplifies complex animations by reducing both the timing of key frames and the shapes of vector paths at the same time, without losing too much accuracy. Instead of treating time and shape separately, bbsolver works with both together to keep the animation looking close to the original. It works with popular software like After Effects and Blender by taking detailed animation samples and producing fewer keys while staying within a set error limit. Tests showed bbsolver can reduce thousands of samples to just a few hundred keys with small errors, making animations easier to edit and manage. The authors also included support for vector paths and diagnostics to handle changing shapes over time.
animation curve reductionvector path simplificationkey frame optimizationspatiotemporal reductioninterpolationAfter EffectsBlendermocap retargetingerror toleranceprocedural path compression
Abstract
Dense sampling records what an animation system actually evaluated, but it produces a poor final representation: every sampled frame can become a key, edit handles become noisy, and animated vector paths remain hard to adjust. Existing reducers usually treat the two axes separately: animation-curve reducers reduce key timing, while curve and path simplifiers reduce geometry. When applied independently to animated paths, these methods can break point identity across frames, change vertex structure over time, or provide no single error budget that covers both timing and shape. bbsolver frames the task as tolerance-bounded spatiotemporal reduction. A host application, such as After Effects or Blender, samples temporal and spatial animation into a documented JSON bundle; the standalone solver chooses sparse keys, interpolation metadata, and path representation; and the output is accepted only if replayed samples remain within the requested worst-case error. The same solver core can be used by any application that can export samples and write back returned keys or paths. In After Effects validation, solved keys written back into AE and re-sampled from AE playback reduce a DUIK humanoid walk cycle from 12,684 samples to 540 keys at epsilon=1, a 23.5x reduction, and an ant rig from 11,956 samples to 653 keys, an 18.3x reduction, with maximum errors below 1 px and 1 degree. A Blender-sampled FBX mocap retarget reaches 214 keys from 13,455 samples at epsilon=3; baselines tuned to matched measured accuracy require 4.5x to 27.5x more scalar key entries. For vector paths, bbsolver supports reduction when vertex identity/order is constant over time and diagnostics for variable-vertex-count streams, including a 6.7x After Effects-compatible procedural-path compression and exact transition-timing recovery in a diagnostic case.