|
> Again, I predict a couple weeks. I’ve made similar predictions in the past… these days, I predict that a couple years actually makes a lot more sense. Especially if you’re not familiar with game engines, and especially if you have to figure out: physics, input mapping, window systems, graphics pipelines, audio systems, game logic component systems (basically the game loop), level systems, transitions, platform support (switch, PC, PS5, Xbox, …), level editors, serialization, animation systems, particle systems, and more! I have a big fat book sitting on my bookshelf called Game Engine Architecture by some of the developers at Naughty Dog. That bad boy is 1,000 pages and just gives a high level overview. It does not teach you how to set up a graphics pipeline, open a window or write a shader. I have other big fat 1,000 page books for those. Those do not teach you the mathematics needed to fully grasp linear algebra. I have yet more big fat 1,000 page books for that. Those books do not teach you C++, I don’t believe any book is sufficient for that big fat language, but I have a few anyways. It’s cool if you enjoy tinkering on engine stuff, but boy am I glad that the Hollow Knight devs (I believe there were only 2 people) just used an engine. It’s an amazing game, and I could care less how it was made. I’m just glad that it was made. Edit: I forgot to mention game HUDs, UI systems, font rendering in general, and asset management pipelines to the list of things that come with an engine but you’d have to either code it yourself or just not have it if you don’t want to use an engine. All of these subdomains can have years of effort poured into them (speaking from experience). The rabbit hole never ends haha. |
Programming languages can be broken down to their syntax. For experienced programmers, I recommend starting by reviewing a language's reserved keywords then skim over any core lib, for example: https://en.cppreference.com/w/cpp/keyword
There are similar shorter paths for people. However, I'd note that most people who went to school for CS have already taken math classes through at least linear algebra, and because of interest, many also took game development classes. At least, I did. I actually wrote a game myself from scratch in C++ in high school in the days before youtube, when there was very little guidance on the internet. It was bad, but if I could do it as a child, others can certainly do better today.
Rabbit holes never end. Professionally, I learn in sort of random directions, at least learning what I need for my next task. But it's impossible and completely unnecessary to have complete knowledge of anything. YAGNI.