Pip is an interactive weather mascot built to run inside a live product experience, not as a pre-rendered animation.
A single Rive State Machine uses an Enum input and View Model to switch Pip between Sunny, Rainy, Snowy, Stormy, and Clear Night states. Each change updates the character’s pose, expression, and accessories in real time.
What I built
Character animation and interaction design
Rive State Machine architecture
Enum-driven weather states
Reusable accessories and transitions
A lightweight .riv handoff designed for web or app implementation
Why it matters
A product team can connect live weather data to one reusable Rive asset, giving the experience more personality without managing separate video files for every forecast state.
Rive implementation details
Inside Rive
State Machine
State Machine
The Process
Legs are IK-rigged with Target Groups, giving him grounded weight shifts when he braces against wind or stomps through snow. Accessories: umbrella, scarf, sunglasses, swap through Solos tied to the same enum, no duplicate artboards required.
Delivered as a single lightweight .riv, wired for Data Binding, so any frontend (React Native, Flutter, Expo, or web canvas) can feed in live weather data, and Pip reacts in real time.
Credits
Rive Animator
Interactive Designer
Motion Designer
Tools: Rive
Like this project
Posted Jul 6, 2026
A live, data-driven Rive mascot for weather products. Pip changes mood, pose, and accessories by forecast, using one state machine and reusable .riv logic.