#parser #bevy #animation #graphics #lottie

lottie-renderer-bevy

Bodymovin lottie file renderer using Bevy engine

1 unstable release

0.1.0 May 5, 2024

#265 in Rendering


Used in lottie-player

MIT/Apache

205KB
5.5K SLoC

lottie-render-bevy

A Lottie JSON file renderer using Bevy as the rendering engine

lottie-render-bevy

Using Bevy as the engine to render Lottie files.

Bevy is chosen as a renderer because:

  • It is relatively mature, has an active community and clean design
  • Allows interacting with entities as a game engine, this enables future interactive Lottie file editing apps
  • Supports both 2D and 3D
  • Supports lyon, which is a good choice for vectorized graphics rendering on GPU

Known limitation

Audio looping

Due to https://github.com/RustAudio/rodio/issues/176 , Bevy do not support audio seeking, so audio playback when looping animation in this renderer is bugged.

We may try to directly use Symphonia to play audio in the future.

Dependencies

~49–90MB
~1.5M SLoC