C++ RTTI 완벽 이해: dynamic_cast부터 커스텀 RTTI까지 (시리즈 정리)
예제 코드 깃허브 링크 🚀 들어가며 👉 이 시리즈는 RTTI 개념에서 시작해 엔진 구조까지 단계적으로 확장됩니다. C++에서 타입을 다루는 방법은 단순한 문법 이상의 의미를 가집니다. dynamic_cast로 시작해서👉 직접 RTTI를 구현하고, 나아가 엔진 수준 구조로 확장하는 과정은게임 엔진을 이해하는 데…
게임 개발 및 프로그래밍에 관련된 주제에 대한 카테고리 입니다.
예제 코드 깃허브 링크 🚀 들어가며 👉 이 시리즈는 RTTI 개념에서 시작해 엔진 구조까지 단계적으로 확장됩니다. C++에서 타입을 다루는 방법은 단순한 문법 이상의 의미를 가집니다. dynamic_cast로 시작해서👉 직접 RTTI를 구현하고, 나아가 엔진 수준 구조로 확장하는 과정은게임 엔진을 이해하는 데…
예제 코드 깃허브 링크 🚀 들어가며 이번 글에서는 C++ TSubclassOf 구현을 통해 타입 정보를 기반으로 객체를 생성하는 방법을 살펴봅니다. 이전 글에서 우리는 다음의 내용을 이해하고 구현했습니다. dynamic_cast의 원리 이해 다운캐스팅의 위험성 TypeId 기반 RTTI TypeInfo 기반 엔진 수준 RTTI 🎯…
예제 코드 깃허브 링크 🚀 들어가며 이전 글에서는 TypeId 기반으로👉 dynamic_cast 없이 타입을 비교하는 방법을 구현했습니다. if (obj->Is(Player::TypeId())) 이 방식은 매우 빠르고 단순합니다.하지만 실제로 사용하다 보면 한 가지 한계에 부딪힙니다. ❗ 타입에 대한 “정보”가 부족하다 🎯 이번 글의 목표 이번…
예제 코드 깃허브 링크 🚀 들어가며 이전 글에서 C++의 dynamic_cast와 RTTI 개념을 살펴봤습니다. 그리고 중요한 사실을 확인했습니다. ❗ dynamic_cast는 안전하지만, 런타임 비용이 발생한다 또한 다운캐스팅이 왜 위험한지도 메모리 관점에서 확인했습니다. 그렇다면 자연스럽게 이런 질문이 나옵니다. ❓ dynamic_cast 없이 안전하게 타입을…
[1.5편] C++ 다운캐스팅이 위험한 이유: 메모리 구조와 포인터 관점에서 이해하기 🚀 들어가며 이전 글에서 dynamic_cast와 RTTI에 대해 살펴봤습니다. 그런데 여기서 한 가지 중요한 질문이 남습니다. ❓ 왜 C++에서 다운캐스팅은 위험하다고 할까? 단순히 “안전하지 않다”는 설명만으로는 부족합니다. 이번 글에서는 메모리 구조와…
🚀 들어가며 C++을 공부하다 보면 한 번쯤 이런 상황을 만나게 됩니다. Base* obj = GetObject(); Derived* derived = dynamic_cast<Derived*>(obj); if (derived) { // Derived 타입일 때만 처리 } 이 코드는 너무 익숙하지만,면접에서 이런 질문을 받으면 답변하기가 막막합니다. ❓ dynamic_cast는 내부적으로…
들어가며 게임 엔진 구조 이해는 많은 개발자들이 어려워하는 부분입니다. 게임 개발을 공부하다 보면 “엔진 구조를 이해해야 한다”는 이야기를 자주 듣게 됩니다. 하지만 막상 어떻게 해야 하는 지에 대해 정보를 찾아도 잘 나오지 않습니다. 문서를 보고, 강의를 듣고, 검색을 해봐도 결국…
유니티나 언리얼을 써도 게임 엔진 구조가 이해 안 되는 이유 유니티나 언리얼을 사용해서 게임을 만들다 보면 어느 순간 이런 생각이 들 때가 있습니다. 기능은 만들 수 있는데 왜 이렇게 동작하는지는 잘 모르겠다 특히 이런 부분에서 많이 막힙니다. BeginPlay와 Tick은 언제…
AI 시대에는 단순히 코드를 사용하는 능력보다, 코드와 시스템의 동작 원리를 이해하고 활용하는 능력이 더 중요해지고 있습니다. 유니티나 언리얼 같은 상용 게임 엔진을 사용하는 게임 개발자 역시, 엔진의 동작 원리를 이해해야 AI를 더 잘 활용할 수 있습니다. 또한, 현재 많은…
안녕하세요, 장세윤입니다. 유니티 RPG 게임 개발을 주제로 한 책을 출간했습니다. 책 이름은 [유니티 엔진 개발자가 알려주는] 유니티를 활용한 RPG 게임 개발입니다. 이 책은 그동안 진행해 온 RPG 제작 수업 내용을 정리한 실습형 개발서입니다. 이 책은 하나의 RPG 게임을 완성해 가는…