Gustavo Pezzi outlines the essential libraries, architectural patterns, and computer science concepts needed to build a 2D game engine in C++.
This video is a summary of my favorite C++ libraries and dependencies to create a game engine from scratch.
Game development has always been a great helper to get my students motivated to learn more about more advanced computer science topics. Creating a game engine is a great opportunity for us to grow as programmers.
Links:
Create a 2D Game Engine with C++: courses.pikuma.com/courses/2dgameengine
Should You Make Your Own Game Engine?: pikuma.com/blog/why-make-a-game-engine
Game Loop (Glenn Fiedler): gafferongames.com/post/fix_your_timestep/
EnTT ECS: github.com/skypjack/entt/wiki
Flecs ECS: github.com/SanderMertens/flecs
Learn OpenGL: learnopengl.com/
Basic Game Math: gamemath.com/
Chapters:
Introduction
What is a Game Engine?
Should You Write a Game Engine?
Game Development & Computer Science
Classic Game Engines
How to make a C++ Game Engine?
Windowing System and Multi-platform Libraries
The Game Loop
Input & Event Handling
Representing Game Objects in Memory
ECS
2D Rendering
3D Rendering
Importing 3D Mesh Files
Physics
Dear ImGui
Scripting
Conclusion
Useful Resources
Thumbnail illustration by @WesleySales3d (thanks, Wesley!)
Hopefully, these recommendations are useful for you to create a good roadmap on how to start coding your own game engine using C++.
For comprehensive courses on computer science, programming, and mathematics, visit:
pikuma.com
Don't forget to subscribe to receive updates and news about new courses and tutorials:
youtube.com/channel/UC8GR0g1deJB_gxWxi_vuxhA?sub_confirmatio…
Enjoy!
Why it's here
1 person recommends this
What people say. Recommended as a great high-level overview of the tools and libraries needed to start building a C++ game engine.
r
u/robaye_xin r/gameenginedevs • Recommends
On “Beginner in game engine development”
Maybe we (this sub) should get a wiki started.
Here's a couple videos/links that give a high level overview
* Game Engine Architecture: Bill Clark
* Tools to make a Game Engine in C++
* Game Engine Development - Articles
* Isetta Engine