1. Rendering Pipeline
1.1 Pixel Shader
- 프로그래머가 작성해서 GPU에서 실행하는 프로그램
- 각각의 픽셀 단편마다 실행, 보간된 정점 특성들을 입력받아 하나의 색상을 출력
- 고정된 상수 색상을 돌려주는 아주 간단한 형ㅌ채에서부터 픽셀별 조명이나 반사, 그림자 효과를 수행
float4 PS(VertexOut pin) : SV_Target { return pin.Color; }
1.2 Output Merger
- 픽셀 셰이더가 생성한 픽셀 단편들은 렌더링 파이프라인의 출력 병합기단계로 입력
- 출력 병합기 단계에서 일부 픽셀 단편들이 폐기 (깊이 판정이나 스펜실 판정에 의해 폐기)
- 폐기되지 않는 픽셀 단편은 후면 버퍼에 기록, 혼합도 이 단계에서 일어남
1.2.1 Blending
- 새 픽셀이 후면 버퍼의 기존 픽셀을 완전히 덮어 쓰는 것이 아닌 두 픽셀을 일정한 공식에 따라 혼합한 결과를 기록
- 반투명 같은 특수 효과를 내는데 쓰임
'C++ Algorithm & Study > Game Math & DirectX 11' 카테고리의 다른 글
[Direct11] 9. Direct3D API Interface & Function #2 (0) | 2023.06.14 |
---|---|
[Direct11] 8. Direct3D API Interface & Function #1 (0) | 2023.06.14 |
[Direct11] 6. Rendering Pipeline - Tessellation & Rasterizer (TS & RS) (0) | 2023.06.13 |
[Direct11] 5. Rendering Pipeline - Vertex Shader (VS) (0) | 2023.06.13 |
[Direct11] 4. Rendering Pipeline - Input Assembler (IA) (0) | 2023.06.13 |