Introduction to video game engine development : learn to design, implement, and use a cross-platform 2D game engine - Brusca, Victor G. (Apress, 2021)
Start your video game development journey by learning how to build a 2D game engine from scratch. Using Java (with NetBeans as your IDE and using Java graphics framework) or by following along in C# (with Visual Studio as your IDE and using the MonoGame framework), you'll cover the design and implementation of a 2D game engine in detail. Each class will be reviewed with demonstration code. You'll gain experience using the engine by building a game from the ground up. Introduction to Video Game Engine Development reviews the design and implementation of a 2D game engine in three parts. Part 1 covers the low-level API class by class. You'll see how to abstract lower-level functionality and design a set of classes that interact seamlessly with each other. You'll learn how to draw objects, play sounds, render text, and more. In Part 2, you'll review the mid-level API that is responsible for drawing the game, loading resources, and managing user input. Lastly, in Part 3, you'll build a game from the ground up following a step-by-step process using the 2D game engine you just reviewed. On completing this book, you'll have a solid foundation in video game engine design and implementation. You'll also get exposure to building games from scratch, creating the solid foundation you'll need to work with more advanced game engines, and industry tools, that require learning complex software, APIs, and IDEs. You will: Gain experience with lower-level game engine APIs and abstracting framework functionality Write application-level APIs: launching the game, loading resources, settings, processing input, and more Discover cross-platform APIs in the game engine projects written in both Java and C#/MonoGame Develop games with an SDK-based game engine and simplified tool chain focused on direct control of the game through code Master creating games by using the game engine to build a game from the ground up with only code and an IDE.