Hacker News new | ask | show | jobs
by johnnyanmac 1015 days ago
> Everybody's jumping ship to Godot or Unreal or whatever else because we all need a game engine. But why?

I'm assuming we're talking about 2D games so I won't dwell on the "because they want to make a 3D game". See musings below

1) not everyone has that technical prowess, they may not even want to code to begin with. I may be able to whip something up in a few weeks for a 2D game, but someone new will simply be learning how to code first and then finagle with libraries they can't full piece together. So engines that can heavy lift and let a user do simple scripts (if that) to do their movements is a big demand.

2) engines differentiate from frameworks by offering different suites for other parts of development. Designers would love a level editor and that is annoying to make (even in 2D). Artists may want to tweak the lighting or even do some light procedural generation, so the ability to get feedback of how it looks in-game helps a lot more than guessing in their artist suite. even other programmers may want conveniences for front-end annoying stuff like UI, where the correctness isn't based on the code

3) Familiarity. Just because you CAN work on your own engine doesn't mean you want to. I'm sure the Hollow Knight devs simply followed up on their game jam project in Unity because they knew Unity. You can't spend all your waking hours thinking about how your tools may go to shit in 10 years. You'd never get anything done.

I'm all for encouraging more engines, but I can understand reasons to seek out something rather than prioritize ownership.

-----------

>But every indie developer I've talked to about game engine development acts like it's a dark art. That it's just impossible for mere mortals to do such a thing, and if you do, then you'll never ever release a game, or you'll spend literal years on the engine. Again, I predict a couple weeks.

As someone who's gone down that rabbit hole: it is black magic combined with pixie dust when working on a 3D game. There is just so many edge cases to resolve and techniques to implement to make a 3d scene look good. And now you need to build something that lets non-devs be productive on op of that (or accept that you will have an artist backseat driving you, losing efficiency). You will spend years and end up with a much worse product, likely very buggy (no pun intended). There's just too much to learn before you even start making the game. Make games, not engines (I say as an engine programmer).

For a 2d engine, sure. Hollow Knight probably could have been made in Gamemaker with no technical hiccups. And if you know what you're doing you can utilize a couple of libraries and whip up a decent 2D engine that is all yours. You'll still have issues, but it isn't insurmountable if you're making a simple game that moves around a few hundred sprites on screen.