그래픽 파이프라인
그래픽 파이프라인 - Win32 apps | Microsoft Learn
그래픽 파이프라인 - Win32 apps
이 섹션에서는 Direct3D 11 프로그래밍 가능 파이프라인에 대해 설명합니다.
learn.microsoft.com
Direct3D 11 그래픽 파이프라인은 Direct3D 10 그래픽 파이프라인 동일한 단계를 지원 + 고급 기능 지원
세이더 코어는 HLSL 프로그래밍 언어를 사용해 프로그래밍 가능
Input Assembler IA : GPU가 처리할 정점 데이터(Vertex)와 인덕스 데이터를 조립(Assemble)
Direct X 11 Input Assembler Stage — 게임 개발 공부기
1. Vertex Buffer, Index Buffer 설정
2. Primitive Topology(삼각형, 선 점 등) 설정
3. 정점 데이터와 인덱스를 조합해 Primitive 생성
Vertex Shader VS : 정점 데이터의 변환 및 처리
Direct X 11 Vertex Shader Stage — 게임 개발 공부기
1. 모델 -> 월드 -> 뷰 -> 투영 좌표 변환
2. 정점 위치(Position) 및 부가 속성(색상, UV) 등 계산
3. 조명 연산(기본적인 per-vertex lighting)
Hull Shader HS(선택) : TS 이전에 패치 데이터 처리 및 TS 레벨 결정
1. 패치 단위로 제어점 데이터 처리
2. 테슬레이션 요소 결정
Tessellator TS : HS에서 정의한 테셀레이션 레벨에 따라 패치를 세분화
1. Direct3D 11에서 하드웨어 가속
2. 세분화된 정점 좌표 생성
Domain Shader DS(선택) : TS의 세분화된 좌표를 실제 3D 공간 좌표로 변환
1. 세분화된 정점 위치 계산
2. 추가 조명, 변형 효과 적용
Geometry Shader GS(선택): Primitive 단위(점, 선, 삼각형)로 입력을 받아 새로운 Primitive를 생성하거나 변형
1. 새로운 정점 추가
2. Dynamic Tessellation, Shadow Volume 생성, Particle Expansion
Stream Output SO(선택) : Geometry Shader 출력 데이터를 GPU 메모리에 저장하여 이후 단계나 다른 렌더 패스에서 재사용
ex) Particle System 시뮬레이션 데이터 캐싱
Rasterizer Stage RS : Primitive를 픽셀 단위로 변환(래스터화)
1. Viewport Transform (정규화 좌표 → 화면 좌표)
2. Clipping, Culling (Back-face 제거 등)
3. Depth, Scissor Test 준비
Pixel Shader PS : 픽셀 색상 계산
1. 텍스처 샘플링
2. 조명 연산
3. 색상 혼합
Output Merger OM : 픽셀 쉐이더에서 출력된 색상 데이터를 프레임 버퍼에 결합(Merge)
1. Depth/Stencil Test
2. Alpha Blending
3. Render Targer에 최종 결과 쓰기
'DirectX 11' 카테고리의 다른 글
Direct X 11 Vertex Shader Stage (0) | 2025.08.01 |
---|---|
Direct X 11 Input Assembler Stage (0) | 2025.08.01 |
Direct X 11 1일차 (0) | 2024.04.30 |