Create interactive animation with Rive. Constraints, animation layers and more!
In this tutorial, Joey Korenman dives deep into Rive to create an interactive spinner animation. He'll explore advanced features like constraints and animation layers in the state machine to achieve smooth transitions that you can't get with tools like Lottie or After Effects. Whether you're new to Rive or looking to deepen your skills, this video will open your mind to the possibilities of interactive animations in apps and websites. Follow along, experiment, and unlock the potential of Rive.
BONUS: Don't forget to check out our video, Intro to Interactive Animation in Rive.
Want to learn Rive from the ground up?
Check out our new course, Rive Academy Volume 1, the ultimate introduction to the world of interactive animation built with Rive. You’ll learn how to design, animate, and prototype interactive motion design that you can ship anywhere. By the end of the course you’ll be ready to use Rive in production, and go further in more advanced courses.
LEARN MORE ➔
12 Rive Terms to Know
If you're just hopping on the Rive bandwagon, here are some key terms from the tutorial that you'll want to know as you explore the app. Terms like "Keyframe" and "Timeline" will be familiar if you’ve used After Effects or other motion design tools. But some are unique to Rive and crucial for crafting interactive animations—Rive style.
🔑 Keyframe
A keyframe is a snapshot of your animation at a specific moment in time. In Rive, it helps define how objects move or change over time. By placing keyframes on the timeline, you can control movement, rotation, scaling, and more.
✨ Rive Timeline
The timeline in Rive is where all the animation magic happens. It stores keyframes and lets you control the flow of your animation—whether it’s a smooth loop or a more complex sequence. You can even use timelines to represent different states of your design without needing keyframes at all.
🤖 Rive's State Machine
A state machine is like the brain behind your interactive animations. It lets you create and manage different states—like rotating or oscillating dots—and handles how your design switches between those states based on user interaction.
💫 Animation States
Animation states are the different "modes" your object can be in. For example, your object could be rotating in one state and static in another. Using Rive’s state machine, you can blend between these states for smooth transitions.
👂 Listeners in Rive
Listeners detect user input, like mouse hovers or clicks, and tell your animation how to respond. For instance, if a user hovers over your design, the listener can trigger an animation that changes the object’s behavior.
🔣 Inputs
Inputs in Rive are like controls for your state machine. They determine how the animations react to user interactions. For example, a Boolean input could tell your animation whether a mouse is hovering over an object (true or false).
🥊 Rive Hitbox
A hitbox is an invisible area that detects user interaction. In Rive, you set up hitboxes to recognize when someone hovers or clicks on an object, triggering a specific animation or change in state.
↔️ Constraints
Constraints let you control how elements behave relative to each other. For example, you can parent one object to another, so when the parent moves, the child follows along. In Rive, this helps create smooth, dynamic animations without manually animating every element.
💨 Easing
Easing is how your animation speeds up or slows down at the beginning or end of a movement. In Rive, easing makes transitions feel more natural, like when something gently slows down instead of stopping abruptly.
📶 Interpolation
Interpolation is the smooth transition between keyframes. In Rive, adjusting interpolation settings allows you to create more fluid animations, whether it’s transitioning between different animation states or smoothly changing properties like rotation or position.
🔹 Bezier Handles
Bezier handles give you fine control over the speed and trajectory of your animation. You can stretch and adjust them to make your animations slow down, speed up, or follow a more complex curve.
👨👩👧👦 Parenting
Parenting is a way to link one object to another. In Rive, you can parent elements (like dots) to a null object or another animated element, so they move together in a coordinated way. It’s perfect for keeping animations smooth and organized.