The Luminid character model, a small rounded glowing creature

This week was all creature work: modelling, rigging, and the first animation set. It is the first time the Luminids have felt like characters rather than placeholder blobs, and I want to write down why, because most of the reasons were smaller than I expected.

Getting the shape right

I spent the front half of the week just refining the body.

Luminids are a simple silhouette, and that is exactly why small adjustments matter more than they would on a detailed character. There is nothing to hide behind. A smoother head curve, a slightly wider base, shorter arms: each one noticeably changes the personality, and I could not have predicted which way from looking at the model in isolation.

I was balancing four things that pull against each other:

  • readable at small sizes, because most of the time you see them from a distance
  • expressive in motion, because they have no facial detail to speak of
  • easy to animate, because there will eventually be hundreds of them
  • distinctive without adding detail

What solved it was keeping the body as a single unified mesh with soft, rounded forms. No harsh angles, no separate parts. The constraint forced better decisions than a more flexible model would have: when you cannot add geometry to fix a problem, you have to actually fix the problem.

Model and rig walkthrough.

Rigging, in Blender

Once the model was locked I moved into Blender and built a deliberately minimal rig. It needs four things:

  • head control
  • spine bend
  • arm flaps
  • body squash and stretch

The trickiest part was deformation. The mesh is very soft and rounded, which means it dents and pinches in ugly ways under squash unless the weight painting is careful. I redid the weights more than once before the body compressed cleanly.

I also tested a few constraints for secondary motion, and this is where the biggest surprise of the week came from: a tiny rotation offset on the head, lagging slightly behind the body, is the difference between a curious creature and a robotic one. It is almost nothing mechanically. It is most of the personality.

Luminid rig and deformation test in Blender
Getting squash and stretch to behave.

The first animation set

I built four core animations this week.

Idle A slow breathing motion with micro-sways. Enough movement to look alive, not enough to pull your eye when you are trying to look at something else. Idle is the animation you see most and notice least, so it has to be nearly invisible while still reading as alive.
Walk This took the longest by a distance. Luminids have no legs, so forward motion has to come from body bob, arm float, and a glide. I tried a bounce cycle against a hover cycle: the hover read as more magical, the bounce read as more friendly, and friendly is the game. Bounce won.
Look around A head tilt with small rotations. The best value-for-effort animation in the set by a mile, and the one that most makes a creature seem to be thinking about something.
Glow pulse Shader-driven rather than skeletal. The animation sends a signal to the shader, which brightens the Luminid during idle or when it notices something. It is a small hook and it turns lighting into a channel for expression rather than just illumination.

That last one matters more than its size suggests. These creatures are named for their light, so their light should be part of how they communicate, not just how they are lit.

Idle, walk, and look-around cycles.

Putting one in the world

Dropping the first animated Luminid into the actual game world is where it clicked. Even just idle and walk completely change how a scene feels. A static world becomes a living one the moment something inside it moves on its own.

The thing that genuinely surprised me is how well the animations read at distance. I expected the subtlety to disappear once the creature was small on screen. It does not: the squash and stretch carries even at a few pixels tall, because what you are reading at that size is the rhythm of the motion rather than any detail of it.

That is a useful discovery for a game where you will often be looking at a whole colony from above.

In the world, at last.

Where that leaves them

The Luminids now have a finished model, a clean rig, a basic animation set, and working in-engine imports. That is the full pipeline end to end, which means every future animation is an addition rather than a rebuild.

Next I want to try:

  • a more expressive “surprised” reaction
  • float and hover variations, so different personalities can move differently
  • tighter syncing between the animation and the glow shader
  • and mostly, seeing what a group of them looks like together

That last one is the real test. One Luminid is a character. A field of them either becomes a crowd or becomes a colony, and I do not yet know which.

The behaviour underneath all this came later, and I wrote it up in Dev Log 8.

Nick