GitHub is filled with these because it’s always easier to make an engine than a game. You play with the fun tech and make the graphics engine. You never make any tough tradeoffs because you don’t have a target to aim at.
When an engine becomes useful is when it has to make a game. All your abstractions tend to get rearranged and hard decisions are made.
> it’s always easier to make an engine than a game.
It could just be different interests. The kind of person who makes a game engine is a technical optimization-focused tech-focused person, sort of like a mechanic. In order to make a game, you have to deal with softer concepts like "is this fun" which is more like a designer/artist. Game studios need to bring these people together, but in the FOSS world the mechanics are happy to spend their time building an engine that runs beautifully without concerning themselves with the art side of things.
Yes and no. It’s true that some people really only care about a slice of the process, but if you’ve been around the gamedev scene long enough you’ll also see people working on very technically ambitious projects while they’re fooling themselves thinking they’re making a game.
I just need a few more years working on my 4D non-euclidian voxel MMO engine before I can make my game!
I'd disagree. Just like how no one needs to find an engine usable, no one needs to find a game fun. My personal itch.io account is full of games no one finds fun :)
Why assume that a game has to be made? Making a handful of tech demos doesn't come with that baggage and deflects criticism of making an empty shell of an engine with nothing to speak of.
In the real industry the very technical people are focused on very concrete problems like level 3 is causing too much overdraw on Xbox. What can we do without breaking X,Y, and Z.
Having spent a couple decades making engines that did ship games, now I spend a fair bit of free time helping noobs make engines even though statistically nearly none of them end up shipping games.
Making a game engine is a fun and highly-engaging means to learning high-performance programming. Yes, it would be better if you also were able to invest enough to ship a game. But, don't let the infeasibility of that goal stop you from learning and having fun.
>At what point of optimization does it turn into 'real' high performance programming?
somewhat past optimizing the frame count of an entirely empty scene.
on that matter : is it a game engine if there isn't a game?
I totally agree with other comments though -- if there is no pressure to meet specific metrics or accomplish certain things with the product then there is no real pressure to improve past a window or framebuffer drawn to video, just declare it's a game engine that makes a million FPS and throw it on the portfolio.
game engine work gets tough (and rewarding) with 1) goals and 2) constraints -- without those two it's more or less just spherical-cow style work that is too ambiguous or vague for real application.
When the goals are defined. What happens here is you make your cool particle System which is 10x faster than Ue5 but ignore that it uses all the ram or whatever.
Its a nice portfolio project. A toy renderer (at least, when the job market wasn't so dearth) leading to a thesis or an engine programmer position at some AAA studio is a very worthwhile tradeoff.
The skillset and ontent is also just different. You don't see games on github (publicly) because they are being made for sale. Very few engine projects are serious commercial projects. I think I'd be safe to say that a commercial engine is harder than making a commercial game. Especially since Unity and Unreal have mindshare and are free to start and learn with.
It's easier to throw yourself into a programming project as a programmer than learn completely new skills: art, design, music. Instead the fantasy is that either the game engine is so great people will come make games, or the game engine will support something so radically different the programmer art gets ignored (see simulation games like Minecraft or Factorio). I'm convinced that's why there are so many engines with no games.
Why would game engine developers want to make a game though? Plenty of devs prefer building the underlying frameworks and tools over the products those tools create.
OP is trying to make it seem like some sort of failing, where people aren't cut out for game dev or something so they just make game engines instead. But I can guarantee that anyone who can create a game engine can also create a game. They just choose to do something they enjoy more.
When an engine becomes useful is when it has to make a game. All your abstractions tend to get rearranged and hard decisions are made.