OF

pixel envy, part two

After not even three months I had the basics of a game engine working…

Back in early 2025 I started work on a cozy game.

The goal was as much the journey as the destination: I picked a solid but newish programming language (Rust) and a game development library for the same (Bevy) and started writing code. Real to goodness lines upon lines of code.

After not even three months I had the basics of a game engine working: player movement, inventory management, two-dimensional world physics, in game economics and timekeeping, and all the constituent parts of a proper game. All built from scratch.

I shared the code repository with a friend who is a programmer by trade (unlike me who is more of a jack of all tech trades dabbler) and let him compile it to have a look.

“You sure did this the hard way.” he noted after he had spent a few hours with it. “Why didn’t you just use one of those game generator engines or something?”

Again: journey versus destination. That notion was crystal clear in my mind. 

But he wasn’t entirely wrong either.

Many people before me have come and built tools to skip all the fiddly bits into which I had sunk the past three months. I had expelled nearly all of my start up energy (and thankfully it was only energy and not money) into recreating the efforts of a million people travelled before me.

Deep breath: journey not destination. 

Even knowing that my journey was as much about my privilege to explore while ignoring the real world economic calculus of actual game development, the time and resources saving shortcuts that would not be casual afterthoughts for a game studio that needed to be profitable as soon as possible. 

How is a mere human to keep up?


Brad Salomons is a time traveller and intergalactic secret agent for hire. He writes blogs about technology, creativity and life between gigs.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.