Book Image

UI Animations with Lottie and After Effects

By : Mireia Alegre Ruiz, Emilio Rodriguez Martinez
Book Image

UI Animations with Lottie and After Effects

By: Mireia Alegre Ruiz, Emilio Rodriguez Martinez

Overview of this book

Lottie is a small and scalable JSON-based animation file. LottieFiles is the platform where Lottie animations can be uploaded, tested, and shared. By combining the LottieFiles plugin and the LottieFiles platform, you’ll be able to create stunning animations that are easy to integrate in any device. You’ll also see how to use the Bodymovin plugin in After Effects to export your animation to a JSON file. The book starts by giving you an overview of Lottie and LottieFiles. As you keep reading, you’ll understand the entire Lottie ecosystem and get hands-on with classic 2D animation principles. You’ll also get a step-by-step guided tour to ideate, sketch for storytelling, design an icon that will fulfill the needs and expectations of users based on UX, and finally animate it in Adobe After Effects. This will help you get familiar with the After Effects environment, work with vector shape layers, create and modify keyframes using layer properties, explore path and mask features, and adjust timing easily to create professional-looking animations. By the end of this animation book, you’ll be able to create and export your own Lottie animations using After Effects and implement them in mobile apps using React Native. You’ll also have an understanding of 2D animation best practices and principles that you can apply in your own projects.
Table of Contents (16 chapters)
1
Part 1 - Building a Foundation With After Effects and LottieFiles
5
Part 2 - Cracking Lottie Animations
9
Part 3 - Adding Your Lottie Animations Into Mobile Apps

5. How can I reverse an animation?

The simplest approach to achieve reverse playback is to use the speed prop on the LottieView component, as negative values will make the animation play backward. If you want to play the animation in reverse but at its original speed, you need to set the speed prop to –1, but you can also play it at double speed by setting it to –2 or half-speed by changing it to –0.5:

<LottieView
  source={require('./assets/animations/loadingBar.json')}
  speed={-1}
/>

If you are using the animated API to control the progress of your animation, you can use methods such as Animated.timing, and make sure you are passing descending values:

  // start animation at frame 300 and go decrementally to frame      0
  const progress = useMemo(() => new Animated.Value(300), []);
  useEffect(() => {
    Animated.timing...