What is a game engine?
Game development is complex and involves a wide variety of knowledge and skills. To build a modern game, you need a great deal of underlying technology before you can make the actual game itself. Imagine that you had to build your computer and write your own operating system before you could even start programming. Game development would be a lot like that if you truly had to start from scratch and make everything that you need.
There are also a number of common needs that every game has. For example, no matter what the game is, it’s going to need to draw things on the screen. If the code to do that has already been written, it makes more sense to reuse it than to create it all over again for every game. That’s where game frameworks and engines come in.