대부분의 내용은 Rookiss님의 [C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12 강의를 듣고 정리한 내용입니다
코드보다는 개념 위주로 정리하고 있습니다
강의 들으러 가기
- 유니티나 언리얼 같은 게임 엔진에서 모두 처리해 주지 않나..?
라는 의문점이 생겼다
DirectX를 공부하는 이유는 3D 게임 개발에 대한기본기를 쌓기 위해서이다
유니티를 약 3년 간 공부해왔지만 렌더링 파이프라인에 대해서는 잘 모르는 상태였다
엔진의 사용법만 알고 있을 뿐 내부적으로 어떤 방식으로 3D -> 2D 가 되는 지 모르고 있었다
DirectX를 공부한다면 내부 원리를 배우고 엔진 응용력을 늘릴 수 있을 것이다
학교 선생님이나 Rookiss님 모두 DirectX의 모든 것을 이해하고 가려 하지 말고 3D -> 2D 변환 과정에 대한 흐름에 집중하라고 하셨다

모든 모델은 무수히 많은 삼각형, 정점으로 이루어져 있다
이 모델들의 연산까지 CPU가 처리하긴 힘들다
때문에 간단한 연산들은 GPU로 일을 넘겨 주어 처리해야 한다
이를 DirectX에서 처리
https://www.youtube.com/watch?v=-P28LKWTzrI
위 링크의 영상을 보면 CPU와 GPU의 차이점을 이해할 수 있을 것이다
