정점 셰이더(Vertex Shader)에서 처리한 정점의 특성(예: 색상, 텍스처 좌표, 노멀 등)을 픽셀 단위로 전달할 때, 삼각형 내부의 픽셀들에 대해 선형적으로 계산해서 보간한다.
여기서 "정점 특성"이란 정점(vertex)이 가지는 속성들(예: 위치, 색상, 법선 벡터, 텍스처 좌표 등)을 의미한다.
| 보간 방식 | 설명 |
|---|---|
| 선형 보간 (Linear Interpolation) | 화면 공간(Screen Space) 기준으로 선형 보간을 한다. 일반적으로 가장 많이 사용된다. |
| Perspective-Correct Interpolation (원근 보정 보간) | 원근 투영 시 화면 공간에서의 선형 보간은 왜곡을 일으킴 → 보정을 적용해 실제 거리 비례로 보간한다. |
| Flat 보간 | 삼각형의 한 정점 값만을 사용 (보간 X). 모든 픽셀이 동일한 값을 가진다. |
| NoPerspective 보간 | OpenGL/GLSL에서의 옵션으로 원근 보정 없이 단순 선형 보간만 사용한다. |
HLSL / GLSL / Unity / Unreal 등에서는 각 attribute가 자동으로 보간된다.
예를 들어 HLSL에서
struct VS_OUT {
float4 pos : SV_POSITION;
float3 color : COLOR; // 자동 보간됨
};
color는 삼각형 정점에 따라 픽셀 셰이더에서 자동으로 보간된 값을 받는다.