I've had some free time recently and thought that maybe it's about time I stop playing so many vidya and work on one of my own. I haven't done any game development at a serious level so I knew it'd be a heap of learning, but what the heck, something new to put on the CV. I didn't consider Unity at first because I thought it was one of those all-encompassing things that would force me to use its built-in IDE rather than one I already use and am familiar with, but after doing some research and realizing that wasn't the case, I downloaded it and gave it a try.
Now what happens when you launch Unity? Well, Unity doesn't launch. Instead, Unity Hub launches. Unity Hub is a separate app to manage Unity projects and it looks like this.
View attachment 1875006
Now as a web developer, I recognized the look of this immediately. It's Material Design, the "design language" that Google uses in most of its sites as well as Android on the whole. But putting aside the fact that they have a separate app for project management rather than just including it in the base app, why the fuck is it Material? They didn't even go out of the way to customize the colors or anything; it looks like something Google would have made themselves. Is this not an actual app and instead some Electron garbage using Google's Material CSS assets (which they provide as FOSS) to quickly hack together a UI? Was this built in Android and then ported to desktop using one of those converter systems? mystery.gif
Well, whatever. I create a new project and follow along with a tutorial, but I'm finding that even though Unity isn't forcing me to use it as an IDE, it's still apparently assuming I'm going to be doing a
lot of work in this Unity program itself. And just like with Adobe's recent garbage, Unity completely forgoes using standard UI elements and has its own implementation of even the simplest form widgets for no apparent reason. Is Unity itself written in Unity? There's this massive list of properties and sliders and stuff to edit attributes of the sprites and stuff in the project. I don't know, perhaps it's possible to change all these attributes in code, but the newbie-level tutorials I was finding weren't going to teach me how to do that. I started to wonder how pros could really stand to build full-fledged AAA games in this thing.
This is where I lost it, though.
View attachment 1875023
If you're a Mac user, you already know what is wrong with this window. If not, feel free to compare it to the previous screenshot, which at least managed to implement the title bar correctly.
So fuck Unity. I've got a couple Cocos2d-x tuts open in some tabs and I'm going to give them a deeper look tomorrow; Cocos2d-x has a GUI tool like Unity, but it's entirely optional and it is apparently still possible to just use it as just a code library. If anyone has other suggestions, I'd appreciate it. (Requirements: Sprites and preferably tilemaps, at least Mac and Windows compatibility, free or with a reasonable free tier, preferably usable from C++, Swift, or C or C# as last resorts (no JS or Lua, please). Physics not necessary.)