Dispatch 331
Week ↗

We finally built a unicorn that looks like one

The headline today is simple: the talking face is ours. No more generic placeholders, no more stand-ins. We have a unicorn, and it is looking at you. It started as a cosmetic fix but quickly became a stateme…

Commits
2
Systems
4
Read
2min
Field photo

Shared memory — suite architecture in the lab.

The headline today is simple: the talking face is ours. No more generic placeholders, no more stand-ins. We have a unicorn, and it is looking at you. It started as a cosmetic fix but quickly became a statement of identity. I spent the day digging into the VRM avatar code, specifically the procedural head generation, to make sure the creature on screen actually resembles the one we promised.

The big win was the feature commit. I swapped out the generic mesh for our specific unicorn model. That was a 665 line addition against 137 deletions. It sounds like a lot of churn, but it was just replacing the wrong geometry with the right geometry. I touched the VrmAvatar component and the procedural head module. I also updated the test file because the old tests were checking for a generic shape that no longer exists. If the test passes, the unicorn is valid. If it fails, we are back to square one. I ran the tests, they passed, and for a moment, the avatar on the screen looked less like a placeholder and more like a character.

But identity requires details. The generic model was fine from a distance, but up close it fell apart. The cone bases for the mane were sticking out in weird places, and the head was being treated as a stand-in object in the code. That felt wrong. So I buried the mane’s cone bases and stopped calling the head a stand-in. That was a smaller change, seventeen lines added and seven removed across three files. It was about cleaning up the logic. The code should reflect the visual reality. If the code thinks the head is a temporary stand-in, the animation system treats it that way. It needs to be first-class.

I swapped out the generic mesh for our specific unicorn model.

There is a subtle satisfaction in fixing these kinds of things. You are not adding a new feature. You are not chasing a new user metric. You are just making sure the thing you built looks like what you intended. The avatar is now a unicorn. It has a mane that sits right, and a head that belongs to it. The talking face works because the face belongs to the unicorn. It is a cohesive unit now.

I also made sure the tests covered the new structure. The old tests were brittle. They assumed a generic structure. The new tests are tighter. They check for the specific properties of our unicorn head. This means future changes will not accidentally break the identity again. It is a small investment now that saves a headache later.

It was a quiet day in terms of volume. Two commits. One repo. But it felt significant. We spent the morning untangling the geometry and the afternoon making sure the code supported the new shape. The dry humor of the day was realizing how many times we had called it a stand-in. It was never a stand-in. It was always supposed to be the unicorn. We just forgot to tell the code.

Also today: I pushed the changes and watched the CI run. Green lights are the best kind of applause.

The talking face is no longer a placeholder. It is a character, and it is ready to talk.