The source code of the 11th tutorial of the C++ 3D Game Tutorial Series is now available in early access on GitHub!

The source code of the 11th tutorial of the C++ 3D Game Tutorial Series is now available in early access on GitHub!
This tutorial establishes the foundational GameObject-Component System, implementing the core architecture for managing GameObject instances within a World. While the actual Component classes will be introduced in the next step, this tutorial defines the object-oriented structure they will inhabit. Key changes include:
World and GameObject Classes: New World and GameObject headers and sources create a framework where the World manages the lifecycle and update loop for GameObject instances.
Type Safety System: A new Identifiable.h introduces the Identifiable class and dx3d_typeid macro, enforcing that every GameObject has a unique type identifier, a requirement for the upcoming Component system.
Game Lifecycle Hooks: The dx3d::Game class now contains a World member and exposes virtual onCreate and onUpdate methods, allowing derived game classes to customize initialization and update logic.
Inheritance Examples: Concrete implementations like MainGame and MyObject were added to demonstrate the inheritance hierarchy. MyObject specifically showcases a derived GameObject that inherits from the base GameObject class.
You can find the full source code on GitHub here: GitHub Link
I hope you enjoy the tutorial, and thank you for all your support!