Skip to content

v0.4.1-beta.4.1

Latest
Compare
Choose a tag to compare
@jamesa08 jamesa08 released this 29 Aug 01:18
ded5715

For those who are still looking to get some use out of this addon, you may find this new experimental change a surprise!

Added 6 new overlapping methods:

  • Min
  • Max
  • Previous
  • Next
  • Rest Value Crossing (experimental)
  • Keyframe Pruning (experimental)

Take a look at how they work here:

Overlap Methods

Simple:

Min:

  • When two animations overlap, use whichever mapping value is the minimum of the two at each moment in time.
  • In the example, both curves would interpolate, and only pick the lowest values

Max:

  • Use whichever mapping value is the maximum of the two at each moment.
  • In the example, both curves would interpolate and only pick the highest values

Previous:

  • During the conflict, maintain the mapping value from the animation that started first, disregarding the second.
  • In the example, the green curve would play out entirely during the overlap region, and once it is done overlapping, the blue curve would start.

Next:

  • During the overlap, switch to using the mapping value from whichever animation started most recently, dropping the previous one.
  • In the example, the green curve would stop immediately and the blue curve would begin.

Complex:

Rest Value Crossings:

  • Smoothly transition between conflicting mappings by crossing at the rest value (often zero).
  • This ensures first-order continuity, but may cause second-order discontinuities.
  • Assume the "rest value" is 0 for the parameter being mapped.
  • As mapping 1 reaches the end of its animated range, it will cross 0 while fading out.
  • Meanwhile, mapping 2 crosses 0 while fading in from its rest value, starting its animation.
  • So there is a smooth crossfade between the two mappings at the rest value of 0.
  • However, the acceleration of mapping 2 may not perfectly match mapping 1 at that instant, which could cause a slight visual jerk even though position/value is continuous.

Keyframe Pruning:

  • Remove some keyframes from the overlapping animations to eliminate the conflict.
  • Keyframes are selected to maintain second-order continuity (smooth motion flows).
  • More complex, but can resolve conflicts while preserving smoother animation.
  • The keyframe times are analyzed to find overlapping segments between the two mappings.
  • Keyframes are strategically removed to eliminate the conflict.
  • For example, the last couple keyframes of mapping 1 faded down to the rest value may be pruned so its animation ends sooner.
  • Any accelerations specified in those pruned keyframes are lost, which may cause subtle visual changes.
  • So the seamless position continuity comes at the cost of losing some original nuances of motion.

Image.png

Full Changelog: v1.0.0-beta.4.0...v1.0.0-beta.4.1