게임 엔진 Component 기반 구조 완벽 이해
최근 게임 엔진 구조가 지금과 같은 방향으로 발전한 이유와 왜 Component, ECS, Data Oriented Design 같은 기법들이 등장하게 되었는지를 정리했습니다.
시리즈 열기Game Engine Framework Notes
C++와 실제 엔진 사례를 바탕으로 메모리, 자료구조, Unreal/Unity 내부 구조를 설명하는 기술 블로그입니다.
최근에 직접 정리한 허브 글을 기준으로, 먼저 읽으면 좋은 시리즈를 모아 둡니다.
최근 게임 엔진 구조가 지금과 같은 방향으로 발전한 이유와 왜 Component, ECS, Data Oriented Design 같은 기법들이 등장하게 되었는지를 정리했습니다.
시리즈 열기게임 엔진 Transform 구조를 정리한 시리즈 글입니다. Position, Rotation, Scale부터 Local 좌표와 World 좌표, Parent/Child 구조, 행렬까지 게임 엔진의 공간 계산 구조를 함께 설명합니다.
시리즈 열기게임 렌더링 구조와 Rendering Pipeline의 전체 흐름을 입문자 기준으로 정리한 시리즈입니다. GPU가 Vertex 데이터를 어떻게 화면 픽셀로 변환하는지, Vertex Shader와 Rasterizer, Pixel Shader, Output Merger 단계는 왜 필요한지, 그리고 CPU와 GPU는 어떤 방식으로 협력하면서 화면 이미지를 만들어내는지를 전체 흐름 기준으로 설명합니다.
시리즈 열기함수 포인터, callback, std::function, delegate, multicast delegate까지 엔진 관점으로 이어서 읽을 수 있게 정리한 시리즈 허브 글입니다.
시리즈 열기fixed timestep, variable timestep, hybrid loop, deltaTime, FPS 제어를 엔진 관점에서 이어서 정리한 게임 루프 시리즈 허브 글입니다.
시리즈 열기allocator 설계, memory pool, placement new까지 C++ 게임 엔진 메모리 흐름으로 이어서 읽을 수 있게 정리한 시리즈 허브 글입니다.
시리즈 열기C++ RTTI의 기초부터 custom RTTI, Unreal 스타일 reflection 흐름까지 한 번에 따라갈 수 있게 정리한 시리즈 허브 글입니다.
시리즈 열기stack, heap, cache miss, AoS, SoA, ECS까지 게임 메모리 구조 관점에서 이어서 읽을 수 있게 모아 둔 시리즈 허브 글입니다.
시리즈 열기최근에 올린 글을 시간순으로 확인할 수 있습니다.
예제 코드 깃허브 링크 🚀 들어가며 이전 글에서 C++의 dynamic_cast와 RTTI 개념을 살펴봤습니다. 그리고 중요한 사실을 확인했습니다. ❗ dynamic_cast는 안전하지만, 런타임 비용이 발생한다 또한 다운캐스팅이 왜 위험한지도 메모리…
[1.5편] C++ 다운캐스팅이 위험한 이유: 메모리 구조와 포인터 관점에서 이해하기 🚀 들어가며 이전 글에서 dynamic_cast와 RTTI에 대해 살펴봤습니다. 그런데 여기서 한 가지 중요한 질문이 남습니다. ❓ 왜 C++에서…
🚀 들어가며 C++을 공부하다 보면 한 번쯤 이런 상황을 만나게 됩니다. Base* obj = GetObject(); Derived* derived = dynamic_cast<Derived*>(obj); if (derived) { // Derived 타입일 때만 처리 }…
들어가며 게임 엔진 구조 이해는 많은 개발자들이 어려워하는 부분입니다. 게임 개발을 공부하다 보면 “엔진 구조를 이해해야 한다”는 이야기를 자주 듣게 됩니다. 하지만 막상 어떻게 해야 하는 지에 대해…
유니티나 언리얼을 써도 게임 엔진 구조가 이해 안 되는 이유 유니티나 언리얼을 사용해서 게임을 만들다 보면 어느 순간 이런 생각이 들 때가 있습니다. 기능은 만들 수 있는데 왜…
AI 시대에는 단순히 코드를 사용하는 능력보다, 코드와 시스템의 동작 원리를 이해하고 활용하는 능력이 더 중요해지고 있습니다. 유니티나 언리얼 같은 상용 게임 엔진을 사용하는 게임 개발자 역시, 엔진의…
안녕하세요, 장세윤입니다. 유니티 RPG 게임 개발을 주제로 한 책을 출간했습니다. 책 이름은 [유니티 엔진 개발자가 알려주는] 유니티를 활용한 RPG 게임 개발입니다. 이 책은 그동안 진행해 온 RPG 제작…
수업 및 프로젝트 멘토링을 하다 보면, 프로젝트 구조나 클래스 설계에 굉장히 많은 고민을 하는 수강생들을 자주 만나게 됩니다. 그럴 때마다 저는 오히려 설계에 너무 많은 시간을 쓰지 않는…