Unity is a game engine. I’m using Unity to make a video game. But, more accurately, I’m lurking on the edges of Unity while the three guys I’m making this game with use Unity to make the game. I’m sloooowly learning how to make changes and fixes, but I still have to ask for help a lot of the time, and I have a bad attitude about it. I just don’t like Unity.
The picture above is what James, the project lead, sent me to explain to me how to find the image I was trying to replace.
Here’s the exchange that led up to James sending this image.
Unity wants everything to be an object in 3D space, with attributes attached to it. The “blank canvas” for Unity is a 3D level with stuff in it and a camera and giant time-release medicine capsule cruising around interacting with that stuff. Think Resident Evil. Think Supermario 64. You can make Asteroids in Unity, but really, you’d be making a version of Asteroids that is playing on the arcade machine in the garage of Project Gotham Racing, an easter egg buried inside the “real game” which is a 3D world with race cars and a camera and some other stuff.
Don’t get me wrong. I love Supermario 64. And Resident Evil is fine, I guess, as far as it goes. And I’m sure Project Gotham Racing has its fans. But, for whatever reason, this piece of software just rubs me the wrong way.
I love Photoshop. I’m not ashamed to admit it. Photoshop is my jam. When it comes to software, Photoshop represents, for me, the gold standard of power + intuition. Photoshop used to cost 1 million dollars and no one paid for it and it was a huge pain in the ass to get it onto your new machine. Now it costs 100 dollars a month and follows you around like a curse. But I don’t care about that, I’m talking about the way it treats images. Photoshop treats images like a grid of pixels. This is not what images are, but it’s close enough for computer work.
Martin, one of the guys I’m making this game with, is, like most younger designers, more comfortable in Figma, which sees images as cogs in a larger process - action items, best practices, deliverables, stakeholders.
Photoshop has no such pretense. It just rips the bandaid off and makes you deal with every image as if it was a cartesian grid, a simple n-dimensional matrix. Raw data.
In one sense, the difference between Figma and Photoshop is a matter of scale. How zoomed in are we? What’s the right level of abstraction? Figma has a grid, but it isn’t the grid of pixels, it’s the grid of images in the state space of an overarching interactive experience.
I am intensely aware of the way my preference for Photoshop over Figma is the result of arbitrary effects due to historical circumstances, like someone preferring Bob Dylan to Kendrick Lamar. But I also feel like Photoshop imagines its user as a craftsperson and Figma imagines its user as a small business owner, so go figure.
I don’t know what the right level of zoom is for making a video game. Or for making software in general. But I loved Basic when I was just starting out. I hated Flash. I eventually learned to love JavaScript when I was using that. I know very little about GameMaker but I suspect it’s punching above its weight, given how many great games it’s produced. I assume Unreal is basically just Unity but slightly better graphics and even more annoying.
Speaking of which, look at how much this promotional image of UE5 from 2022 looks like a screenshot from The Witness…
Rest assured, I’m not planning on making my own game engine. The universe in which I make my own game engine is one in which anyone reading this post is either a decadent hedonist in a simulation where they’re a worker trapped in a slave camp or a worker trapped in a slave camp hallucinating that they are a decadent hedonist, and we’re clearly not living in that universe wink wink.
I am, however, making a new game. It’s called Q-UP. It’s a Unity game. Stand by for more details.
And here follows the obligatory "try Godot" response :P
Oh, that bit about being forced into a 3D space even if you're making a game in two dimensions is so true. (It's like Plato's cave lol.) All game engines should be 2D. Even if you're making a 3D game. Especially if you're making a 3D game!