inflearn logo

Game Engine Framework with C++ (Learning Engine Architecture through Sokoban and Shooting Games)

If you want to understand game engines, building one yourself is the fastest way. This is a project-based course where you will implement the core structure of a console game engine using C++ and complete projects including Sokoban and a flight shooting game. It provides a perspective that allows for a deep understanding of the structures of the Unreal and Unity engines.

(5.0) 24 reviews

153 learners

Level Basic

Course period Unlimited

C++
C++
oop
oop
Architecture
Architecture
C++
C++
oop
oop
Architecture
Architecture

News

3 articles

  • ronniej님의 프로필 이미지

    Hello, I'm Seyoon Jang.
    A new part has been added to the 'Game Engine Framework with C++' course.

    In this update, we will expand the Actor-centered game engine completed in the previous lecture into a Component-based structure.

    We will separate the responsibilities of Transform, SpriteRenderer, and BoxCollision into Components and implement a Transform Scene Graph to represent parent-child relationships. Afterwards, we will update the Sokoban and flight shooting games to the new structure, and finally, explore expansion directions leading to Prefabs, ActorIDs, and DOD/ECS.

    Rather than building a completely new game engine, this extended lecture is structured to help you experience why a Component structure is necessary by directly refactoring the engine and game code created in the previous lectures.

    Along with the new lecture videos, the class notes for each lecture and the step-by-step project ZIP files have all been uploaded.

    Those who have already completed the existing course can continue by starting from the new section following the previous final lecture.

    For those who are reviewing the lectures, it will also be helpful for organizing the relationships between Actor, Component, and Scene Graph.
    I look forward to seeing you in the newly expanded lectures!

    Thank you!

    0
  • ronniej님의 프로필 이미지

    I am sharing a series of posts organized by each stage of the rendering pipeline.

    I tried to explain terms like Vertex Shader, Rasterizer, and Pixel Shader by focusing on why the GPU evolved into this structure, rather than just providing simple functional descriptions.

    I have also organized the content by connecting it to Draw Calls, CPU/GPU bottleneck structures, and game engine optimization.

    I hope this is helpful for those studying the rendering structures of DirectX, OpenGL, Vulkan, Unity, and Unreal Engine.

    https://ronniej.sfuhost.com/rendering-pipeline-series-guide/

    0
  • ronniej님의 프로필 이미지

    Hello, I'm Seyun Jang!

    I am writing this post to share a follow-up summary and example code that expands upon the RTTI (TypeId-based) content covered in the lecture.

    While the lecture focused on directly implementing structures for distinguishing types and casting, in this post, I have expanded on that flow to cover everything from dynamic_cast to custom RTTI, the type system concepts used in Unreal Engine, and structures for creating objects using type information, such as TSubclassOf.

    In particular, I structured it to help you understand how the architecture implemented in the lecture can be expanded in practice and how it is utilized within the engine.

    You can find the related article at the link below.
    👉https://ronniej.sfuhost.com/cpp-rtti-guide/

    Additionally, I have organized all the code included in the blog post, starting from the custom RTTI implementation part, into an example project so that you can run it yourself.
    👉https://github.com/hamtol2/Cpp_RTTI/

    I hope this is helpful for those who want to summarize the lecture content or gain a deeper understanding 🙂

    0

$107.80