I know it might be fun to develop your own engine but it will take a lot of time and it still won't be as usable as an engine developed by 100x more engineers.
I know it might be fun to develop your own engine but it will take a lot of time and it still won't be as usable as an engine developed by 100x more engineers.
That's it right there. You can spent years pretending to write a game while optimizing your from-scratch engine for features that probably no-one will ever use [1]. But I think it depends on what your goal is.
If it's a small hobby project, and you enjoy the process of writing your own engine (which, granted, can also be a great learning experience), then why not? You're probably in for the fun anyway.
I know some indie devs who learned the hard way that if your goal is in fact to eventually release a game, doing it without using an existing engine can reaaally drag things out.
I think it's tempting: you can get started on a new "engine" pretty easily, and get something up and running in a day or two. But then comes the long tail of adding all the other stuff, which often isn't so much fun.
A lot of the game development process isn't actually programming, so by writing everything from scratch, a programmer can artificially shift the focus into the direction they're more comfortable with.
If you have some amount of self-discipline and implement your custom engine to be minimal and only tailored to your game (as many indie games have demonstrated), I don’t see how it can’t be done.
The problems usually start when people are more interested in writing the engine than making a game. Then they gravitate towards all sorts of fun technical problems that would be useful in a general purpose engine but not really for their specific set of problems. I’ve also seen this tinkering trap with general purpose engines but quite technical projects.
Please don't make assumptions about my experience based on that though. It's pretty impolite before I'm even able to respond to the new criteria and makes you look like you're not actually responding in good faith.
I'll also direct you towards the HN Guidelines: https://news.ycombinator.com/newsguidelines.html
Be kind. Don't be snarky. Have curious conversation; don't cross-examine. Please don't fulminate. Please don't sneer, including at the rest of the community.
Comments should get more thoughtful and substantive, not less, as a topic gets more divisive.
When disagreeing, please reply to the argument instead of calling names. "That is idiotic; 1 + 1 is 2, not 3" can be shortened to "1 + 1 is 2, not 3."
In regards to developing your own engine - it's almost never more efficient to do so nowadays, but it is almost always significantly more fun. If the author has enough wealth accumulated to quit their job and work on a passion project full time, I imagine they can afford to do something just for fun as the baseline.
Even ignoring that. I think there is a more fundamental question here as well. What type of maker do you want to be?
Before making my decision to go with Zig I've built small game in UE5 (https://michalziulek.itch.io/upacman). I've also used UE5 and Unity at AMD. I simply don't like those engines.
Different people have different approaches and mindsets. I'm much faster building my small, minimal codebase that does only what I need. Also, I'm improving my low-level programming skills and experimenting, doing things differently than most people (not using Unity) might lead to very original game.
In my case, simplicity is the key for productivity.