Blender Studio
  • Films
  • Projects
  • Training
  • Assets
  • Tools
  • Blog
  • Join
  • BLENDER.ORG

    • Download

      Get the latest Blender, older versions, or experimental builds.

    • What's New

      Stay up-to-date with the new features in the latest Blender releases.

    DEVELOPMENT

    • Roadmap

      See which projects are currently being worked on and what's next.

    • Documentation

      Guidelines, release notes and development docs.

    LEARNING & RESOURCES

    • Blender Studio

      Access production assets and knowledge from the open movies.

    • Manual

      Documentation on the usage and features in Blender.

    • Benchmark

      A platform to collect and share results of the Blender Benchmark.

    • Blender Conference

      The yearly event that brings the community together.

    DONATE

    • Development Fund

      Support core development with a monthly contribution.

    • One-time Donations

      Perform a single donation with more payment options available.

Training Highlights
Advanced Facial Rigging
3D Printing with Blender
Story Tools
Blender Fundamentals 4.5 LTS

Training types
Course Documentation Production Lesson Workshop

Training categories
Animation Geometry Nodes Lighting Rendering Rigging Shading
Film Highlights
Singularity
2026
Wing It!
2023
Hero
2018
Spring
2019
Project Highlights
Impulse Purchase
Other
Project Storm
Rigging R&D
DOGWALK
Interactive
Project Gold
Showcase
Assets Highlights
Characters
Models & rigs
Assets
All production files
Libraries
Curated sets
Vault
Everything
  • Impulse Purchase

Impulse Purchase Production File

Sharing production knowledge and files for Impulse Purchase.
  • Article
  • 3 Sep 2025
  • 3 min read
Francesco Siddi
Francesco Siddi Executive Producer

Other Authors

Will Anderson
Will Anderson Director
Report Problem

The animated video of Impulse Purchase is a Blender Studio open project. This means that the production files and assets are all available to Blender Studio subscribers to explore, dissect, and learn from.

This article breaks down the technical setup of this unique project, and at the end you’ll get the file that makes it all happen! There are a few interesting aspects here:

  • The entire project is contained in a single .blend file, which uses the EEVEE viewport and can run in realtime
  • The main character and runway is fully procedural, built with Geometry Nodes
  • The camera dynamically updates to however the characters parameters change
  • Part of the animation (mouth, eyes, head tilt) can be driven by a live-linked app via OSC

Performance

One of the goals of the production was to build a highly interactive, viewport-centric setup, so that the video could be recorded in one take. By adding the music as a sound strip in the VSE, keyframing strategic set pieces, shaders and node setups, we were able to build a solid scaffolding upon which we could record the live facial performance. The setup uses straightforward shaders and simple shapes to achieve 30fps viewport playback when using EEVEE.

Procedural setup

The main character is built out of simple shapes, following Lucas Zanotto's design language. The shapes, the overall proportions and color palette are driven by a set of bones, which in turn controls in Geometry Nodes setups. This allows the creation of thousands of potential variants for the character.

Simulation nodes play a big role in the setup, as they are used to spawn bubbles, scene elements, handle jiggling limbs, and also the dynamic positioning of the camera towards the character.

Building the scene as procedurally as possible, and yet following a clear design system, helped to achieve countless variants that feel consistent and make the video really fun to watch.

A screenshot of the production file, available below
A screenshot of the production file, available below

Live animation and Puppeteering

To achieve an entertaining facial performance by the main character, we choose to use live motion capture, rather than relying on keyframe animation. By developing a bespoke add-on, we have enabled the integration of Live Link Face, a free facial motion capture app, with Blender to drive parts of the procedural character setup.

At the core of it lies the OSC (Open Sound Control) protocol. This is a well-known network communication protocol used by applications to exchange live data, usually in the context of musical performances.

The Blender + OSC + Geometry Nodes Setup
The Blender + OSC + Geometry Nodes Setup

The setup is straightforward: on the Blender side, we set up a “receiver” mesh with a number of shape keys matching the ARKit blendshapes, which are used to drive the bones controlling the Geometry Nodes setup of the main character. We use the Foscap add-on to run a very minimal OSC server, which listens to network traffic and processes it to set (live) the value of the shape keys in the receiver mesh.

Get the production file

And there it is. It’s one file! Download it, open it, and see how everything works. The outliner and the node editor are the best tools to help navigate the setup to discover how things come together.

okgo_impulse_purchase-v3.blend
Blender File · 8.9 MB · CC BY-SA okgo_impulse_purchase-v3.blend
Subscribe to download

If you have questions, feel free to leave a comment below. Thanks!

Join to leave a comment.

7 comments
ArRazzaaq Bey
ArRazzaaq Bey
Oct. 11th, 2025

Cartoon music video

ArRazzaaq Bey
ArRazzaaq Bey
Oct. 11th, 2025

I need someone to make my cartoon

Alison Mueller
Alison Mueller
Oct. 6th, 2025

Hello! I've run into an issue where many of the shapekeys do not receive any data from LiveLink, keeping their shapekey numbers at 0. It's consistent across the demo scene, the production scene, and the file I custom set up using Demeter's blendfile from his "Rigging with Geo Nodes" talk. I just can't figure out what the issue could be, in particular mouthSmileLeft does not work among roughly 30 or so others.

Alison Mueller
Alison Mueller
Oct. 7th, 2025

@Alison Mueller Okay follow up! I discovered the issue; it was just that in the code of Foscap itself it didn't have all the names of the shapekeys. So I duplicated the stack from Jim West as referenced and now I have full Facial mocap capabilities

Patrick  Lawson
Patrick Lawson
Sept. 15th, 2025

This is fantastic! learning a lot. Hope they do a behind the scenes. Look like they didn't render it in the youtube video just real time playback and a bit of editing switching view types.

Jinze Li
Jinze Li
Sept. 8th, 2025

Crazy project! Love it so much

gabrielle madrid
gabrielle madrid
Sept. 4th, 2025

I am so excited. Thank you!

Films Projects Training Blog Blender Studio for Teams
Pipeline and Tools
  • CloudRig
  • Blender Kitsu
  • Brushstroke Tools Add-on
  • Blender Studio Extensions
Characters
  • Critter Evolved
  • Critter
  • One
  • Space Creatures
Studio
  • Terms & Conditions
  • Privacy Policy
  • Contact
  • Remixing Music
Blender Studio

The creators who share.

Artistic freedom starts with Blender The Free and Open Source 3D Creation Suite