hey vg what do you think of unity compared to games maker for making 2d games..... or anyone else who has used both.....

i attended a unity tutorial today & tried it out for the first time, but we just made this silly game where you fly a ufo around a square so i didnt really get much of a feel for what serious use is like.....

the main thing that stuck out to me is that the "scene editor" seems much more cumbersome for building levels than the gm room editor.....

Unity can be really dumb, especially with 2D. I think newer versions might have better 2D stuff, but it's originally made for 3D, so there are a fair bit of weird things resulting from that. And some things are dumb either way. I had to build a lot of my own framework to do things that make sense to me.

- The scene editor isn't great for level design, no. It doesn't have a thing to automatically snap objects to grid, though you can hold Ctrl to drag things in increments of your a customizable grid size. In general, it's not set up for sticking to integer positions unless you take control of that yourself; there are "world units" that aren't necessarily pixels, and the camera needs to be set up properly too to get square pixels.

- There are "FixedUpdate" and "Update" methods, with the former calling at fixed time intervals (i.e. 60 FPS if you set the time interval to 0.01666~ seconds), but the latter calling at inconsistent intervals, so you have to use the time delta in all calculations to use that one. (I use FixedUpdate almost exclusively, but it means you get slowdown rather than frame skipping.)

- Drawing arbitrary things on screen isn't really in there natively, so I had to make functions that can draw shapes and text all using GUI.DrawTexture (like, a line or solid rectangle can be drawn as a stretched 1-pixel texture). I think what it wants you to do is build most GUI things visually in the editor?? Also, objects' DrawGUI methods can draw on different GUI layers, but the GUI is always above the objects, and can't have post-processing shader effects applied to it (which allow things like sepia tone or the fuzzy effects from Libretta).

- Getting references to resources or object "prefabs" (to create instances from) requires either manually dragging it onto a public variable in the object that needs it (awful, horrible), or putting it in the Resources folder, from which you can arbitrarily load anything (way easier). The latter is a discouraged practice according to the manual, because it uses a search tree, so there's a more-than-linear load time increase at game start the more files there are. It's still what I use anyway.

- There are default physics, but primarily because of the integer position issue, I found it better to disable all of it and build my own. Basically all I use from it is the Collision Box, to define object hitboxes. One feature that is actually useful: you can set "object layers," and restrict collision checks to a layer or set or layers. ...Although I think you could more or less do this in GM too, just less conveniently.

- You normally can't play arbitrary music/sounds?? I think you're "expected" to give every object that could play sounds "audio player" components, one for every sound they could use. I instead made music and sound player objects that have a few of those "audio players" that just swap out the audio clips.

So yeah, there's a lot of garbage to worry about (even if some of it may be a result of expectations from GM), though it's generally been fine once I got past all of it. The few times I've looked at GM Studio, it seemed to have its own fair share of awkwardness, so I dunno which is really better.

sounds like if i ever wanted to switch to unity it would be a pain..... im pretty happy with gm but i was curious what its like..... unity & unreal seem to be the hot new shit these days now that gm costs $900 or whatever

maybe im misinterpreting but it seems like you are planning to use unity for future projects rather than gm.... what was your reason for switching? gm studio definitely has some weird quirks but a lot of them were also in gm8 and earlier so i dont think it would take you too long to get used to....

Initially, I was just kind of fed up with GM's performance and quirks and wanted to try something new. It's hard to say why exactly I still feel like sticking with Unity now... I think it is a bit more comfortable and reliable than GM after I built myself a foundation. Also, hell if I'm moving Loverinth over to another engine at this point.

a lot of the things vg detailed in her post are why i dont think i will be using unity ever: i think i am very exhausted of having to learn hacks to work with other people's design decisions. if i develop for switch i want to make a bare-bones game engine in c++ like the java one we've used for sbw2....

did gamer make studio nusty 2 add any useful features yet? i saw that terrible flowchart programming bs they had that makes no sense for an imperative language. i wonder how many more decades before they hack in the ability to name arguments in scripts

ive been playing around with the haxeflixel library lately for 2d stuff, using a program called tiled for level design, although i remember ogmo editor being good too when i used it a few years back. i've not made anything super complicated, but i'm happy with what it lets me do, and what i've seen other people do with it, but i never used gamemaker so i'm not sure how it compares to working with that.

ive used unity a bit too, but only for 3d stuff and yeah, it seems like kind of a mess to do anything through the scene editor.

i havent tried gm studio 2 lol im not paying for that..... maybe i will check out the free trial sometime.... the room editor might be less janky than the gms 1.4 one but they also took out some stuff i think.... i think you cant set room backgrounds anymore or something and have to use tiles for everything?? the tile system is improved a lot obviously but taht still sounds weird

ive heard of tiled before.... i think some people use that with unity too.... one thing i like about gm tho is i dont need to switch programs for anything other than music/sound

thats probably nice but i dont think the built in image editors work for my great aesthetic anymore... but when i actually used gm the gm sprite editor was all i ever used. nowadays theres a nice paint.net spritesheet extension that does the trick for our engine

i think if you really cared about the classiq gm backgrounds you could easily build your own object that emulates that (object with max depth). funny that they would remove that since it seems pretty trivial to keep lol