앨리어싱(Aliasing)이 발생하는 이유
원본 데이터가 High frequency로 표현되는데, 이를 표현할 때 low frequency로 샘플되는 경우. 시간 샘플링이 문제인 경우 Temporal aliasing, 공간 샘플링이 문제인 경우 Spatial aliasing이라고 한다.
선분 안티 앨리어싱
먼저 선분을 두껍게 만들고, 선을 번지게 만든 다음, 샘플링을 수행한다. 적은 샘플 레이트에서도 쉽게 특징을 잡을 수 있도록 처리하는 것이다.
Sol 1: Unweighted Area Sampling
하나의 픽셀을 선분이 얼마나 커버하는가? 로 동등한 가중치로 샘플링. 간단하고, 납득 가능한 결과물을 보여준다.
Sol 2: Weighted Area Sampling
픽셀 하나에 대해서 원뿔 모양의 가중치를 준다고 가정한다. 살짝 더 비싸지만 더 나은 결과물이 나온다.
Sol 3: Super-sampling
픽셀 하나의 크기를 2x2, 3x3, ... 로 더 늘리고 선분을 그린다. 이후 다시 각 픽셀 내부의 색칠된 점들로 평균을 내어 최종 결과물을 완성시킨다. 구현하긴 쉽지만 비싸다.
Super-sampling을 어떻게 할 것인가? 도 중요한 토픽이다.
1) Grid: 간단하지만 여전히 규칙적인 사각형으로 샘플링 하기 때문에(regularity) 앨리어싱이 발생할 수도 있다.
2) Random: Grid의 규칙성은 피했지만, 샘플점들이 한 구간에 몰릴수도 있다.
3) Poisson disc: 두 샘플점들끼리 너무 가깝지 않게 조정하지만, 컴퓨팅 자원을 많이 사용한다.
4) Jittered: 영역을 나눠서 랜덤하게. Poisson disc를 근사하는 방법이지만 여전히 편중이 일어날 가능성이 있다.
5) Rotated grid: Grid를 살짝 회전 시킨다. 이러면 샘플링 라인이 수직/수평선과 평행해지는 일이 없게 된다. 간단하면서도 효과적인 안티 앨리어싱 방법이다.