렌더링 파이프라인 완벽 이해하기
시리즈 바로가기 1. 렌더링 파이프라인 완벽 이해 – 게임 엔진은 화면을 어떻게 만들어낼까? 2. Input Assembly 단계는 왜 필요할까? 3. Vertex Shader 단계는 왜 필요할까? 4. Rasterizer 단계는 왜 필요할까? 5. Pixel Shader 단계는…
Series Archive
이 주제와 관련된 글을 시간순으로 정리한 목록입니다.
시리즈 바로가기 1. 렌더링 파이프라인 완벽 이해 – 게임 엔진은 화면을 어떻게 만들어낼까? 2. Input Assembly 단계는 왜 필요할까? 3. Vertex Shader 단계는 왜 필요할까? 4. Rasterizer 단계는 왜 필요할까? 5. Pixel Shader 단계는…
이전 글에서는 Output Merger 단계가 왜 필요한지를 정리했습니다. Output Merger 단계에서는 Depth Test와 Blending, 그리고 Frame Buffer 갱신 같은 작업들이 수행되며, 최종적으로 GPU가 실제 화면 이미지를 완성하게 된다는 점도 함께 살펴봤습니다. 지금까지 렌더링 파이프라인…
이전 글에서는 Pixel Shader 단계가 왜 필요한지를 정리했습니다. Pixel Shader 단계에서는 Fragment마다 최종 색상을 계산하게 되며, Texture Sampling, 조명 계산, Material 표현 같은 다양한 그래픽 처리들이 이 단계에서 수행된다는 점도 함께 살펴봤습니다. 그리고 이…
이전 글에서는 Rasterizer 단계가 왜 필요한지를 정리했습니다. Vertex Shader 단계에서 공간 변환이 끝난 삼각형은 아직 실제 화면 이미지 형태가 아닙니다. GPU는 여전히 삼각형이 화면 위의 어떤 픽셀을 차지하는지를 계산해야 합니다. 그리고 바로 이 작업을…
이전 글에서는 Vertex Shader 단계가 왜 필요한지를 정리했습니다. Vertex Shader 단계에서 GPU는 단순히 Vertex를 처리하는 것이 아니라, 3D 공간 정보를 화면 계산이 가능한 형태로 변환한다는 점도 함께 살펴봤습니다. 특히 아래와 같은 핵심 공간 변환이…
이전 글에서는 렌더링 파이프라인의 첫 단계인 Input Assembly 단계가 왜 필요한지를 정리했습니다. GPU는 처음부터 “캐릭터”나 “건물” 같은 개념을 이해하는 것이 아니라, Vertex 데이터를 읽고 Primitive 형태로 조립한다는 점도 함께 살펴봤습니다. 이번 글에서는 렌더링 파이프라인의…
이전 글에서는 렌더링 파이프라인(Rendering Pipeline)이 왜 등장했는지, 그리고 GPU가 화면 이미지를 만들기 위해 어떤 흐름으로 발전해왔는지를 정리했습니다. 이번 글에서는 렌더링 파이프라인의 첫 번째 단계인 Input Assembly 단계에 대해 정리해보려고 합니다. 처음 IA(Input Assembly)라는 이름을…
게임 엔진을 처음 공부하기 시작하면 언젠가 반드시 만나게 되는 단어가 있습니다. 바로 렌더링 파이프라인(Rendering Pipeline) 입니다. 특히 DirectX나 OpenGL, Vulkan 같은 그래픽 API를 공부하기 시작하면 렌더링 파이프라인 각 단계와 마주하게 됩니다. Input Assembly Vertex…
Direct3D-11 렌더링 엔진 만들기: 2-2 창 클래스 만들기 지난 포스팅을 통해 창을 생성하고 창에서 발생하는 기본 메시지를 처리하는 방법에 대해 살펴봤습니다. 이번에는 WinMain 함수에 모두 작성했던 로직을 별도의 클래스로 분리하는 과정을 진행합니다. Engine…
들어가며 지난 포스팅을 통해 프로젝트를 구성했습니다. 이번에는 앞으로 Direct3D를 활용해 그림을 그릴 창을 생성합니다. Application 프로젝트에 Main.cpp 파일 추가 먼저 실행 파일이 생성될 Application 프로젝트에 cpp 파일을 추가합니다. 추가하는 파일의 이름은 Main.cpp라고 지정합니다.…