It's been about two weeks since I was last agonizing over the visual style for my game. The good news: the main scene is now essentially locked in, and the character designs are mostly settled too. The image above is the game's first real preview. Before moving on, it's worth writing down the tangled mess of thoughts from the past couple of weeks—it usually helps.

Everything is static for now. Animated effects and some interactivity will come later.

Art style: trying everything, then coming back to where I started

I spent the past stretch bouncing between visual directions. The earliest attempt was pixel art. I set that aside, built things in 3D with Blender, and quickly ran into the limits: given my technical skill, controlling color, materials, and animation in 3D was very constrained, and getting the style right was extremely difficult. I dropped it. 2D became the obvious direction, but the specific look still needed to be chosen.

That turned out to be the sticky part. I'm an amateur artist, and I have plenty of ideas that my hands simply can't execute. After going in circles, pixel art came back around. In hindsight it suits me: working with pixels feels closer to writing code, and it's straightforward to draw. This time it's settled. No more switching.

Someone will inevitably ask why I don't just use AI to draw the scenes and characters. Control is the main problem—generated output is hard to steer precisely. That said, it's genuinely useful for fast prototyping. Have AI produce a rough version of what's in your head, then trace and refine it yourself, and you save a fair bit of time. Using AI directly for final in-game characters and scenes is something I haven't tried. Even if it works, it would take a lot of time to figure out, and in the end you'd likely find that AI still can't deliver what you actually want.

Carrying every part alone

Zhihu has been serving me articles about Godot and indie game development. Making a game spans planning, coding, art, marketing—each area needs someone responsible. Independent developers don't have that luxury. Everything has to be carried alone, which naturally makes progress slow.

Writing game code takes time, and so does making a game. You have to prioritize, and you have to be decisive—constantly switching directions and trying everything burns through your time. But sometimes trying things is unavoidable: without testing, you won't know which approach is right. I dip into those indie developers' postmortems on Zhihu now and then, and I always come away with something.

Early on in any field, the whole thing seems daunting, and technical problems can give you a headache for weeks. As your understanding deepens, the technical side eventually turns into physical labor. At that point your sense of the work shifts, which is itself a sign of progress. When you stop discussing technology and start discussing the industry itself, you've figured something out.

The road is long

Indie game development—or any kind of startup—is a long process. Some people get lucky and land a good result quickly, but those are other people's stories. Most of us are ordinary. Never mind success—simply sticking with it is admirable enough. Keep going.