Teaching a Hoodie to Dance for AWE USA 2026

Teaching a Hoodie to Dance for AWE USA 2026

There's a hoodie. Point a phone at it, and a neon creature wakes up on the chest — an outline of pure red light wrapped around a small purple body, two eyes, the letters A-U-R-A floating nearby. That's the HerondoXR lens, and it's been live on Snapchat for a while. You scan the graphic, Aura appears, glowing with a neon bloom. Nice trick. But it just... sat there.
So we asked the obvious question: what if it danced? And not on a timer, not to a baked-in song — what if it danced to *you*? To whatever's happening in the room. Music, a voice, a clap. The lens listens through the phone's microphone and Aura moves to it. Quiet room, and it breathes gently. Turn something up, and it grooves.

This post is about how we got from "a logo that lights up" to "a character that responds to sound," and the handful of decisions that mattered along the way.

The first fork: how do you make something dance?


There are two tempting extremes, and both are traps.

The first is to drive everything procedurally — wire the microphone straight to the model and let the audio push the body around in real time. It sounds elegant. In practice it looks like a seizure. Raw audio is jittery, and a body driven directly by it twitches instead of dances. Nobody moves like that.


The second trap is the opposite: bake a perfect dance loop in advance and just play it. Smooth, professional, lifeless. It plays the same whether the room is silent or a concert. It isn't reacting to anything; it's just a video.

What actually shipping lenses do — and what we landed on — is a hybrid. There's a gentle "idle" loop that's *always* playing, so Aura is never frozen. On top of that sits a "dance" loop, and the microphone controls how much of it bleeds through. Silence, and you're seeing pure idle. As the room gets louder, the dance blends in, harder and harder. Underneath both, a separate tap on the *bass* gives the whole character a physical bounce on the beat. Two signals, two jobs: overall loudness decides *how hard it dances*, bass decides *when it bounces*. Both are smoothed so the motion feels musical instead of twitchy.

That split is the whole trick. It's the difference between a puppet and a thing that seems to be listening.



The rig: where the plan met the art


To animate Aura, it needed a skeleton — bones the animation can move. The original plan was conservative: treat Aura like a paper puppet. It's flat artwork extruded into 2.5D, not a sculpted figure, so a few rigid bones — body, two feet — seemed like the right, cheap tool. Don't overbuild it.

Then we actually started moving it, and the art pushed back.

The thing that makes Aura *Aura* is that red outline — the glowing silhouette that wraps around the body. With a rigid rig, the moment the body leaned, the outline detached and slid off like a sticker peeling. It looked broken. The fix was to stop treating the outline as a prop stuck onto the body and start treating it as its own living layer. So Aura ended up with a proper skinned rig of seven bones: an inner body that bends and sways, and the aura outline on *its own little spine* so it can billow and expand independently — breathing with the body but never locked rigidly to it. Its base stays wrapped around the feet; its top is free to flare.

That's the part we're proudest of, and it's invisible if it's working. The expanding, independent glow is what sells Aura as a creature made of light rather than a cutout that happens to wiggle.

A few other small fights worth mentioning, because they're the texture of this kind of work: the feet needed to be squared off, scaled, and tucked *inside* the outline so they didn't punch through the glow. The dance got a left-foot toe-tap so it reads as keeping time. The idle got an actual breath. None of these are big features. All of them are the difference between "convincing" and "off."

The boring miracle: getting it out of the tool


Here's the part nobody puts in the highlight reel. Aura was built and animated in Blender. The lens runs in Snap's Lens Studio. Getting a rigged, animated character from one to the other means an export step — and export steps are where good work quietly dies. Bones get renamed. Animations vanish. The clever thing you built that depended on bone-*scale* — exactly the trick that makes the aura expand — is precisely the kind of thing that doesn't survive the trip.

So we did the unglamorous thing: export, re-import, and verify every piece individually. Seven bones, still there. Both animation loops, idle and dance, still named correctly. The aura's scale animation — the whole independent-glow effect — confirmed intact on the other side. It's tedious. It's also the difference between a demo that works on your machine and a lens that works on a stranger's phone.

What's next


The current build is exporting clean and round-trip verified. The remaining work lives inside Lens Studio: loading the character in, wiring the microphone to the dance blend and the bass to the bounce, and — the real test — putting it on an actual phone. Microphones behave differently on a device than in a simulator, and "does this feel good?" is a question only a real room full of real sound can answer.

After that, the architecture leaves the door open in a fun way. Because animation data is tiny — a few kilobytes of motion on a handful of bones — you can imagine shipping a whole *library* of dances, or even swapping the setlist remotely without republishing the lens. A "dance of the week." We're shipping the simple version first. But the bones are in place, literally, for a lot more.

That's the through-line for the kind of work we like at A Glitch House: take something static that people already recognize, and give it a pulse. A hoodie is just a hoodie. Until it's listening.

---

HerondoXR is an ongoing experiment in spatial, audio-reactive AR. If you want to see Aura move, scan the hoodie — and turn the music up.
Back to blog