SlideShare a Scribd company logo
1 of 225
대충 살펴보는
Anti Aliasing.
mgun.
하고 싶은 이야기
1. Sampling
2. Aliasing & Anti Aliasing.
3. Super Sampling Anti Aliasing. (SSAA or FSAA)
4. Multi Sampling Anti Aliasing. (MSAA)
5. Transparency Anti Aliasing. (TAA)
6. Adaptive Anti Aliasing. (AAA)
7. Gamma Corrected Anti Aliasing. (GAA, GCAA)
8. Coverage Sample Anti Aliasing. (CSAA)
9. Quincunx Anti Aliasing. (QAA)
10. Temporal Anti Aliasing. (TAA)
11. Fragment Anti Aliasing. (FAA)
12. Rotated Sampling Anti Aliasing. (RSAA)
13. Morphological Anti Aliasing. (MLAA)
14. Practical Morphological Anti Aliasing (Practical MLAA)
15. Fast Approximate Anti Aliasing. (FXAA)
16. Enhanced Subpixel Morphological Anti Aliasing. (SMAA)
17. Temporal Approximate AA. (TXAA)
봐야 할 것도 많고
할 것도 많은 AA….
그래서!!
천천히,
하나하나
이야기 해보려 합니다.
1. Sampling
What is Sampling?
Turn continuous function into discrete samples.
Sampling : 아날로그 신호(연속신호)를
이산신호(discrete)로 바꾸기 위해 사용하
Sampling을 통해 만들어진 이산신호 값들
해당 2진수 값으로 바꾸어 주면(Quantiza
디지털 신호가 된다.
Turn continuous function into discrete samples.
조금만 더 자세히 보자면..
Turn continuous function into discrete samples.
표본화 : 시간축을 분역속으로 만드는 과
양자화 : 진폭을 불연속으로 만드는 과정
부호화 : 이진값으로 부호화 시키는 과정
Turn continuous function into discrete samples.
표본화(Sampling) : 시간축을 분역속으로
양자화(Quantization) : 진폭을 불연속으로
부호화 : 이진값으로 부호화 시키는 과정
Turn continuous function into discrete samples.
그래픽스에서는..
그래픽스에서는 샘플링 + 양자화 + 부호화를 통틀어 그냥 샘플
Turn continuous function into discrete samples.
그래픽스에서는..
아날로그 이미지를 컴퓨터에서 직접 처리하거나 저장할수 없기
표본화와 양자화 과정을 거쳐 디지털 이미지로 변환.
표본화를 거친 이미지..
아날로그 이미지의 연속적인 위치 데이터
불연속적인 디지털 데이터로 변환하는 과
Turn continuous function into discrete samples.
그래픽스에서는..
아날로그 이미지를 컴퓨터에서 직접 처리하거나 저장할수 없기
표본화와 양자화 과정을 거쳐 디지털 이미지로 변환.
양자화를 거친 이미지..
- 연속적인 색상 데이터를 불연속적인
디지털 데이터로 변환하는 과정.
- 각 화소의 밝기 또는 색을 컴퓨터에서
인지할 수 있는 숫자로 표현하는 과정.
Turn continuous function into discrete samples.
Rasterization (2D)
- Vertex 표현을 pixel 표현으로 변환하는 과정.
Turn continuous function into discrete samples.
Rasterization (2D)
Audio (1D)
- 아날로그 신호중 음성신호(speech signal).
Turn continuous function into discrete samples.
Rasterization (2D)
Audio (1D)
Video (2D + time)
- 2D 이미지의 연속적인 모음.
2012, 04, 09 – Goolgle HomePage.
Turn continuous function into discrete samples.
Rasterization (2D)
Audio (1D)
Video (2D + time)
Triangulation (3D)
- 삼각형화.
간단한 표현, 하지만 정보의 손실.
간단한 표현, 하지만 정보의 손실.
때로는 손실된 정보를 복원할 수 있다.
간단한 표현, 하지만 정보의 손실.
때로는 손실된 정보를 복원할 수 있다.
하지만 정보를 복원못할 수도 있다.
하지만 정보를 복원못할 수도 있다.
간단한 표현, 하지만 정보의 손실.
때로는 손실된 정보를 복원할 수 있다.
어떤것을 복원 해야 하는지 애매하다…
어떤것을 복원 해야 하는지 애매하다…
복원하는 간단한 한가지 방법.(lowest frequency)
어떤것을 복원 해야 하는지 애매하다…
Aliasing : 복원방법이 잘못된 경우 발생.
복원하는 간단한 한가지 방법.(lowest frequency)
어떤것을 재생성 해야 하는지 애매하다…
더 간단한걸 재생성.(lowest frequency)
Aliasing : 복원방법이 잘못된 경우 발생.
어떤것을 재생성 해야 하는지 애매하다…
더 간단한걸 재생성.(lowest frequency)
Aliasing : 복원방법이 잘못된 경우 발생.
이러한 문제를 고칠 수 없다.
샘플링시 손실된 정보가 필요하다.
2. Aliasing &
Anti Aliasing
Aliasing이라는 디지털 왜곡현상은 우리가 흔히 생각하는
픽셀 경계면 왜곡현상보다 더 넓은 개념.
Aliasing
어떤 시각정보가 디지털 장치로 이동되면서 주
파수, 해상도등의 변경이
발생할 때, 시각적으로 발생하는 여러가지 왜곡
현상을 모두 가리키는 개념.
Aliasing :
Aliasing
Aliasing
Sampling와 Reconstruction때문에 Aliasing 발생.
돌아가는 바퀴 속도(원래사진 찍는 속도(샘플링 속도).
VS
Wagon Wheel Effect
바퀴의 속도가
사진찍는 속도보다 빠르다면?
낮은 샘플링 속도(사진 찍는 속도)는 바퀴
돌아가는 것 처럼 보이게 하는 부작용이
이를 Temporal Aliasing 이라 한다.
Wagon Wheel Effect
- 왜곡 현상을 최소화 하는 모든 기술을 총괄하는 말.
- 100% 없앨 수 없기 때문에 디-앨리어싱 이라 하지 않
최소화하기 때문에 안티-앨리어싱 이라 한다.
Anti Aliasing
Jaggies & Aliasinig
: edge가 계단 모양으로 보이는 시각적 결함
Anti Aliasing
Crawlies & Aliasing
: 애니메이션에서 슬금슬금 움직이는 것 같이 보이는 현상
Anti Aliasing
Aliasing은 Graphics에서 늘 일어난다.
Aliasing은 Graphics에서 늘 일어난다.
Interaction between complexity of function
and sample rate
Interaction between complexity of function
and sample rate
Nyquist Sampling 법칙
한정된 대역의 주파수를 갖는 함수의 경우, 적절한 샘플링 간격을
정보의 유실없이 재생할 수 있다는 이론.
Nyquist Sampling 표준
Sampling시 Aliasing현상을 막는 Sampling 속도는 측정하고자 하
신호원의 최고 주파수의 2배 이상으로 한다.
Aliasing을 막기 위해 우리가 할 수 있는 일은?
-More real samples
-More logical samples + averaging
-Turn it tinto noise
-Use a Different function (prefilter)
More real samples
Sample rate의 값이 작다면 문제를 일으킬 수 있다.
현실적인 해결책은…
More real samples
Sample rate의 값이 작다면 문제를 일으킬 수 있다.
현실적인 해결책은…
iPhon4, Retina Display
326 + DPI
More real samples
Sample rate의 값이 작다면 문제를 일으킬 수 있다.
현실적인 해결책은…
iPhon4, Retina Display
326 + DPI
iPhone4 Retina Display vs GalaxyS Super Amoled
iPhone4 Retina Display vs GalaxyS Super Amoled
iPhone4 Retina Display vs GalaxyS Super Amoled
More real samples
현실적인 해결책은…아이뻐라는거…
More logical samples + averaging
Supersampling or Multisampling
More logical samples + averaging
Supersampling or Multisampling
More logical samples + averaging
Supersampling or Multisampling
More logical samples + averaging
Supersampling or Multisampling
현실적으로 맞지 않지만 보기에 덜 불편하다.
More logical samples + averaging
Supersampling or Multisampling
어떻게 평균화 할 것인가?
More logical samples + averaging
Supersampling or Multisampling
어떻게 평균화 할 것인가?
가장 간단한 방법은….
box Filter ( 주변 픽셀값의 평균을 얻는 방식의 필터링)
Turn it into noise
Aliasing의 문제는 모양이 균일화 되어 있다는 것이며
이는 너무 눈에 띄어 보기에 불편하게 만든다.
Turn it into noise
샘플을 불규칙하게 배치하자. (jitter)
Turn it into noise
Turn it into noise
Supersampling + jitter
Use a different function
Use a different function
Prefilter : 샘플링 이전에 평균화.
Aliasing을 막기 위해 우리가 할 수 있는 일은?
-More real samples
다른 디스플레이 기술이 필요.
-More logical samples + averaging
오늘날의 일반적인 하드웨어(4x or 16x)
-Turn it tinto noise
부하가 발생하긴 하지만 무난한 해결책인듯…
-Use a Different function (prefilter)
오늘날 일반적으로 텍스쳐에서만 사용.
결론은???
결론은???
-Sampling은 정보의 손실을 발생시킨다.
-잘못된 함수로 복원할 때 Aliasing이 발생한다.
-Antialiasing은 Aliasing을 완하시킬 뿐, 해결해주지는
3. Super Sampling AA
(Full Screen AA)
Super Sampling AA (or Full Screen AA)
부두, 지포스, 라데온, 파헬리아, 카이로
Super Sampling AA (or Full Screen AA)
SSAA의 핵심은 뻥튀기다??
- 원하는 해상도보다 훨씬 크게 렌더링 해서 이미지를 축소해서
- 모든 픽셀에 대해서 픽셀당 한 개 이상의 샘플을 추출하는 방식
Super Sampling AA (or Full Screen AA)
SSAA의 핵심은 뻥튀기다??
- 원하는 해상도보다 훨씬 크게 렌더링 해서 이미지를 축소해서
- 모든 픽셀에 대해서 픽셀당 한 개 이상의 샘플을 추출하는 방식
Super Sampling AA (or Full Screen AA)
SSAA의 핵심은 뻥튀기다??
치명적인 SSAA의 한계…
- 800x600의 해상도로 설정된 그래픽에서 4x4 AA를 활성화하
SSAA를 사용한다는 것은…..
파이프라인의 마지막 과정에서 800x600으로 축소해서 표시할
모든 픽셀을 4x4만큼 크게 샘플링 -> 3200x2400의 해상도로
픽셀을 샘플링해서 버퍼에 저장한다.
- 하지만..지오메트리와 상관없이 모든 픽셀을 뻥튀기 하므로
화면의 전체적인 퀄리티가 올라간다.
Super Sampling AA (or Full Screen AA)
SSAA의 핵심은 뻥튀기다??
치명적인 SSAA의 한계…
SSAA를 정리하자면…
요소 효과
처리방식 가로x세로(AxB) 샘플링
3D 오브젝트 경계면 △ 향상
텍스처 화질 △ 향상
특수효과 화질 △ 향상
가속 속도 ▽▽▽ 극단적으로 감소
메모리 요구량 △△△ 극단적으로 증가
Super Sampling AA (or Full Screen AA)
그래픽 카드에 걸리는
심각한 부하는
어떻게 해결하지..?
Super Sampling AA (or Full Screen AA)
SSAA의 문제점을 해결하는 와중에…
- 부두 : 부두5로 msaa의 시초를 만들었지만 파산, 엔비디아에
- 지포스 : 지포스3로 부두 흡수 후 Quinquix AA라는 기술을 탄
- 라데온 : 라데온8500으로 다이렉트X 표준기술로서의 msaa
- 파헬리아 : FAA라는 기술을 들고 출현.
- 카이로 : 망함.
Super Sampling AA (or Full Screen AA)
카이로를 제외하곤 모두 본격적으로 MSAA라는 기술을
SSAA의 문제점을 해결하는 와중에…
- 부두 : 부두5로 msaa의 시초를 만들었지만 파산, 엔비디아에
- 지포스 : 지포스3로 부두 흡수 후 Quinquix AA라는 기술을 탄
- 라데온 : 라데온8500으로 다이렉트X 표준기술로서의 msaa
- 파헬리아 : FAA라는 기술을 들고 출현.
- 카이로 : 망함.
샘플의 배열형태
Ordered Grid와 Rotated Grid.
- 단순히 샘플을 어떻게 배치하는가의 문제.
- Ordered Grid를 선호하는 nVidia와 Rotated Grid를 선호하는
샘플의 배열형태
Ordered Grid
- 픽셀을 중심으로 평형적인 배치.
기본적인 샘플의 배열 2x2 (OG)
샘플의 배열형태
Rotated Grid
- 샘플을 살짝 회전시켜 보자.
- 과거에는 nVidia에서는 OG방식을, Ati에서는 RG방식을 선호
현재는 옵션에 따라 두 가지 배열방식을 혼합하여 사용.
샘플의 배열형태
핵심은 Ordered Grid와 Rotated Grid, 그 외에는?
- SmoothVision
- Random
- Flip-Tri
샘플의 배열형태
핵심 OG와 RG, 그 외에는?
- SmoothVision
- Ati에서는 9x 시리즈와 함께, SmoothVision이라는 새로운
AA방식을 선보였다.
- SmoothVision에서 눈에 띄는 점은 Programmable.
- 정형화된 샘플배치가 아닌 프로그래밍을 통해 다양한 샘플
샘플의 배열형태
핵심 OG와 RG, 그 외에는?
- SmoothVision
- Random
- 그냥 무작위로 샘플을 배열하는 방식
샘플의 배열형태
핵심 OG와 RG, 그 외에는?
- SmoothVision
- Random
- Flip-Tri
- 기존의 짝수 배열이 아닌 픽셀의 근접점에 2개, 먼곳에 한 개 처
3개의 샘플을 배열하는 방식, 발전된 형태로는 RG와 유사한 배
4. Multi Sampling AA
외각경계면만 신경쓰자~!.
- 슈퍼샘플링의 성능저하를 해결하기 위해 고안.
- 폴리곤 에지가 지나가는 픽셀만 Ax만큼 샘플링해서 원래의
픽셀로 필터링하는 방식을 사용.
- 블렌딩이 필요하지 않은 픽셀에 대한 계산(샘플링)을 포기함으
슈퍼샘플링보다 몇배나 높은 성능대비를 기대할 수 있다.
Multi Sampling AA
외각경계면만 신경쓰자~!.
Multi Sampling AA
1xAA (noAA) 일때
자신의 점에서만 체크.
Multi Sampling AA
병맛같은 결과물.
계단현상 심함.
외각경계면만 신경쓰자~!.
Multi Sampling AA
외각경계면만 신경쓰자~!.
- Multisampling은
의미 그대로 여러 개의
샘플을 취한다는 뜻.
Multi Sampling AA
외각경계면만 신경쓰자~!.
자신의 점과 빨간점
까지도 고려한다.
Multi Sampling AA
외각경계면만 신경쓰자~!.
여전히 병맛같지만
멀리서 보면 그럴듯함.
중간색을 끼워넣었더니
계단이 사라졌어요~!.
Multi Sampling AA
외각경계면만 신경쓰자~!.
Multi Sampling AA
외각경계면만 신경쓰자~!.
SSAA와 MSAA.
- AxSSAA는 실제로 A배 크게 렌더링해서 나중에 1/A로 줄이는
- AxMSAA는 픽셀의 레이아웃부터 좀 다르다
Multi Sampling AA
외각경계면만 신경쓰자~!.
SSAA와 MSAA.
- AxSSAA는 실제로 A배 크게 렌더링해서 나중에 1/A로 줄이는
- AxMSAA는 픽셀의 레이아웃부터 좀 다르다
픽셀을 Fragment라고 부르는 A개의 서브픽셀로 나눈 후에
픽셀에 대한 커버리지를 계산하여 Fragment를 채우는 방식
외각경계면만 신경쓰자~!.
Msaa의 단점은?
- 샘플이 부족하면 정확한샘플링이 불가능 하다.
- CPU 기반.
- 오브젝트의 외각부분만 샘플링하기 때문에,
텍스처, 특수효과등은 화질현상이 없다.
- 폰트나 무늬가 뚜렷한 텍스처에 적용할 경우
블렌딩에 의한 흐림현상이 지저분하다.
Multi Sampling AA
외각경계면만 신경쓰자~!.
Msaa의 단점은?
- 복수의 샘플을 채취하므로 그만큼 프레임버퍼의 정보크기는 커
Multi Sampling AA
외각경계면만 신경쓰자~!.
Msaa의 단점은?
Msaa를 정리하자면…
Multi Sampling AA
요소 효과
처리방식 폴리곤의 경계와 만나는 픽
셀에서만 Ax만큼 샘플링
3D 오브젝트 경계면 △ 향상
텍스처 화질 -- 향상 없음
특수효과 화질 -- 향상 없음
가속 속도 ▽ 적당히 감소
메모리 요구량 △ 적당히 증가
외각경계면만 신경쓰자~!.
Msaa의 단점은?
Msaa를 정리하자면…
Multi Sampling AA
SSAA MSAA
성능감소 ▽▽▽극단적 감소 ▽적당히 감소
전체화질 △△△큰폭으로 좋아짐 △적당히 좋아짐
텍스처 화질 △증가 --영향없음
처리방식 전체화면 경계면등 일부만
메모리 요구량 △△△극단적 증가 △적당히 증가
옵션표시 방식 2x1, 1x2, 2x2, 4x4, 8x8 2x, 4x, 8x, 16x, 8xQ, 16xQ
시각적 만족도 △△△좋음 △적당함
외각경계면만 신경쓰자~!.
Msaa의 단점은?
Msaa를 정리하자면…
Deferred Msaa?
-하드웨어의 가속을 간접적으로 받게하여 MSAA를 손쉽게 구현
1. 전처리로 씬의 모든 도형을 4xMSAA로 깊이만 렌더.
2. 씬을 MSAA를 끄고 정상적으로 HDR 렌더 타겟에 렌더
3. 톤 매핑 및 기타 후처리를 적용
4. Deferred AA를 적용 ( 1에서 만들어진 MSAA 뎁스 버퍼를 샘
픽셀 범위를 계산하고 범위를 기반으로 필터)
Multi Sampling AA
외각경계면만 신경쓰자~!.
Msaa의 단점은?
Msaa를 정리하자면…
Deferred Msaa?
Multi Sampling AA
5. Transparency
(Adaptive) AA
세밀한 부분까지 좀 더 부드럽게…
- nVidia에서 만든 Transparency Anti Aliasing(TAA)
- 기존 AA기법에서는 표현해내지 못한 폴리곤 단위의 텍스쳐들
더욱 사실적이고 부드러운 화면을 표현한다.
Transparency AA
세밀한 부분까지 좀 더 부드럽게…
- nVidia에서 만든 Transparency Anti Aliasing(TAA)
- 기존 AA기법에서는 표현해내지 못한 폴리곤 단위의 텍스쳐들
더욱 사실적이고 부드러운 화면을 표현한다.
Transparency AA
단일 폴리곤 내부에 렌더링된 식물
TAA 기법을 적용하면 이미지에 나
식물모양의 텍스쳐들에도 AA기법
더 높은 품질의 화면을 보여줄 수
일반적으로 철망이나 나뭇가지등
표현되는 부분에서 큰 효과를 가져
기존 AA Transparency AA
Transparency Anti Aliasing의 적용에 따른 화질비교.
Transparency AA
TASA(TAA + SSAA)
TAMA(TAA + MSAA)
Transparency AA
TASA의 결과물이 다른 3가지 결과물보다
나뭇잎과 가지들이 더 부드럽게 표현.
TAMA방식은 AA와 큰 차이를 보여주지 못함.
Transparency AA
성능을 말해줘~!
- 일반 AA보다 TAA + SSAA 적용시킬때가 24%정도의 성능하
하지만…화질은 좋아진다.
- TAA + MSAA는 화질차이는 거의 없지만 프레임은 살짝 떨
6. Adaptive AA
nVidia의 Transparency Anti Aliasing(TAA)와 친한 사
- 이미 경쟁사인 nVidia의 Geforce7 시리즈가 채용하고 있는 T
같은 방식의 AA기술로써 폴리곤 내부의 텍스쳐에서 나타내는
AA기술을 적용하게 만들어 준다.
- 이 기술은 작은 풀들이나 나뭇잎, 그리고 미세한 격자무늬를 더
표현해 주고 거친 외곽선을 부드럽게 만들어 준다.
Adaptive Anti Aliasing
nVidia의 Transparency Anti Aliasing(TAA)와 친한 사
Adaptive Anti Aliasing
nVidia의 Transparency Anti Aliasing(TAA)와 친한 사
Adaptive Anti Aliasing
아…이쁘다…
TAA, 그리고 AAA.
- 같은 목적의 기술이지만 TAA가 SSAA와 MSAA방식을 구분지
적용하고 있는 반면 Ati의 AAA는 화면에 출력되는 결과물에
SSAA방식과 MSAA방식을 혼합하여 사용.
Adaptive Anti Aliasing
TAA, 그리고 AAA.
- 같은 목적의 기술이지만 TAA가 SSAA와 MSAA방식을 구분지
적용하고 있는 반면 Ati의 AAA는 화면에 출력되는 결과물에
SSAA방식과 MSAA방식을 혼합하여 사용.
Adaptive Anti Aliasing
7. Gamma
corrected AA
감마를 고려하라~!
- nVidia의 7x 시리즈의 그래픽카드(7800GTX)로부터 도입된 A
- GAA 또는 GCAA라고 불린다.
- AA가 발생하는 부분의 감마가 이미지의 전반적인 밝기와 차이
보이지 않도록, 픽셀의 컬러 레벨을 조종하는 옵션.
- 성능저하도 거의 없지만 시각적으로도 크게 차이가 없다.
Gamma corrected Anti Aliasing
감마를 고려하라~!
Gamma corrected Anti Aliasing
감마를 고려하라~!
Gamma corrected Anti Aliasing
Gamma corrected Anti Aliasing
감마를 고려하라~!
- 성능도 거의 차이가 없다.
8. Coverage
Sampling AA
nVidia의 8x 시리즈의 핵심기술
- GeForce8800부터 들어가는 새로운 AA기법.
- MSAA를 기반으로 MSAA 샘플링을 하는 과정에서 샘플의 개
- 전통적인 MSAA와의 차이점은 Color와 Z버퍼를 적게 취한다는
Coverage Sampling Anti Aliasing
nVidia의 8x 시리즈의 핵심기술
- 8x, 8xQ, 16x, 16xQ
Coverage Sampling Anti Aliasing
nVidia의 8x 시리즈의 핵심기술
- 왜 Color와 Z버퍼를 따로 분리하여 적게 쓰고 Coverage Sam
더 많이 취하는가?
-> Coverage Samples을 더 많이 취함으로써, 보다 많은 외각
분석한 뒤 Color/Z버퍼를 블렌딩해서 성능향상과 화질향상
Coverage Sampling Anti Aliasing
nVidia의 8x 시리즈의 핵심기술
- 8x, 8xQ, 16x, 16xQ
Coverage Sampling Anti Aliasing
- 8x, 16x CSAA는 Color와 Z버퍼를 4xAA수준으로 하
8, 16으로 더 많이 취함으로서 Color/Z버퍼의 샘플링
블렌딩 정도가 4xMSAA보다 더 정확히? 이루어 진다
nVidia의 8x 시리즈의 핵심기술
- 8x, 8xQ, 16x, 16xQ
Coverage Sampling Anti Aliasing
- 8xQ, 16xQ 의 Q는 Quality이기 때문에 Color/Z버퍼를 4xMS
취해서 8개를 가져오는데 8xQ는 결국 8xMSAA와 똑같은 샘플
결과가 발생하기 때문에 8xQ = 8xMSAA라고 생각하면 된다.
16xQ는 8xMSAA에 Coverage Samples만 16개 취한 형식.
nVidia의 8x 시리즈의 핵심기술
- 8x, 8xQ, 16x, 16xQ
Coverage Sampling Anti Aliasing
- 8x, 16x CSAA = 4xMSAA + 추가적인 Coverage Samples
- 8xQ CSAA = 8xMSAA
- 16xQ CSAA = 8XMSAA + 추가적인 Coverage Samples
nVidia의 8x 시리즈의 핵심기술
MSAA와 비슷한 성능에 적은 메모리 소비를 목표로 ~!.
- 멀티샘플링에서 압축기술을 제공하여 메모리 대역폭을 줄인다
- 압축이다보니 퀄리티는 그다지 좋지 않다.
- 일반적으로 CSAA는 ¼로 압축하는데 Q가 붙을 경우 압축율을
½로 만들어 이미지 퀄리티가 손상되는걸 막는다.
- 동일옵션의 멀티샘플링 방식보다 컬러에 대한 샘플을
2배 더 뻥튀기 하면서, 여분의 정보를 “압축저장”하여
- 메모리 요구량과 성능저하의 폭은 이전 멀티샘플링 옵션으로 유
보다 높은 퀄리티를 구현.
Coverage Sampling Anti Aliasing
nVidia의 8x 시리즈의 핵심기술
MSAA와 비슷한 성능에 적은 메모리 소비를 목표로 ~!.
Coverage Sampling Anti Aliasing
Implementation in Dx9
- 1. nVidia 카드인지 체크
- 2. CheckDeviceMultisampleType()로 Qulity Level체크
- 3. Sample Count>4 && Qulity Level>4이면 CSAA지원 가능
Coverage Sampling Anti Aliasing
Implementation in Dx10
- 1. nVidia 카드인지 체크
- 2. CheckMultisampleQualityLevels()로 Sample Count와
Qulity Level 체크.
- 3. Sample Count>4이고 Qulity Level>8이면 8xCSAA
Qulity Level>16 이면 16x CSAA
Coverage Sampling Anti Aliasing
아이온(noAA)
아이온(MSAA 8x)
아이온(CSAA 8x)
nVidia의 8x 시리즈의 핵심기술
MSAA와 비슷한 성능에 적은 메모리 소비를 목표로 ~!.
CSAA는 쓸만한걸까?
- 일반론적으로 CSAA16x보다는 MSAA8x가 더 낮다.
CSAA는 부드럽게 블렌딩이 아닌 흐리멍텅해 보인다.
- 사실 CSAA는 먼치킨…
근본적으로 CSAA가 먼치킨인 이유는 일반적인 해상도에서 유
켠다고 해도 4x정도, 누가 과연 8x를 켜고 게임을 할까???
Coverage Sampling Anti Aliasing
개선된 CSAA
- GF100에서의 32xCSAA
Coverage Sampling Anti Aliasing
9. Quincunx AA
nVidia의 짝퉁 AA?
- 2xQ와 같은 이름으로 적용.(Q는 Quality가 아닌 Quincunx)
- 짝퉁 또는 가짜 AA로 치부되어 사장됨.
- Quincunx(오망점)이라는 단어처럼 중심픽셀을 기준으로
총 5개의 샘플을 생성하나, 실제로는 하나의 픽셀을 중심으로
개별적인 Ax샘플을 취하는게 아닌 인접한 픽셀과 샘플을 공유.
Quincunx Anti Aliasing
nVidia의 짝퉁 AA?
- 최소 3개 이상의 샘풀을 두개이상의 픽셀에 대해 재사용되며
적은 샘플링으로 높은 퀄리티를 낸다는 주장으로 Geforce3와
- 자신의 샘풀이 아닌 공유된 샘풀을 비슷한 비율로 사용하다 보
이미지가 흐리멍탕하게 되는 블러효과를 내게 되고 퀄리티가 극
Quincunx Anti Aliasing
noAA
2x SSAA
2x MSAA
4x MSAA
Quincunx Antialiasing
Quincunx Anti Aliasing
nVidia의 기술문서에 있는 QuincunxAA의 메모리 사
nVidia의 짝퉁 AA?
- 메모리 사용량은 2xAA와 동일하나 nVidia에서는 4xAA의
성능을 표현할 수 있다고 주장. Geforce3이후로 거의 사장.
- 기술문서 참고
Quincunx Anti Aliasing
nVidia의 짝퉁 AA?
장점 단점
성능저하가 적게 발생 오브젝트, 이미지 뿐 아니라
글자들도 모두 흐리멍텅.
10. Temporal AA
메탈 기어 솔리드4, 헤일로 위치에서 사용된 바로 그것!!
- 말 그대로 임시적인 AA.
- 이전의 프레임 버퍼를 보관해뒀다가 이번 프레임 버퍼와
하프 픽셀로 합치는 것.
- 이전 이미지와 이번 이미지를 합치는 방식.
- 정적인 화면에서는 AA가 걸리지만 움직이면 AA가 사라진다.
- 동적인 화면에서 잔상이 크게 일어난다.
Temporal Anti Aliasing
메탈 기어 솔리드4, 헤일로 위치에서 사용된 바로 그것!!
Temporal Anti Aliasing
Motion Blur
Temporal Anti Aliasing
Temporal Anti Aliasing
Temporal Anti Aliasing
11. Fragment AA
Matrox의 야심찬 준비
- Matrox 파헬리아 그래픽카드와 함께 Matrox에서 발표한 샘플
- MSAA와 SSAA방식의 장점만을 취했다고 주장.
- SSAA의 고질적인 문제인 과다한 비디오 메모리 소비와 해상도
픽셀수 증가로 인한 저질 퍼포먼스를 국소적으로 AA를 햄함으
- MSAA의 결점을 보완하기 위해 계단현상이 주로 일어나는 외
부분만을 자체적인 하드웨어 기능으로 추적해 해당 부분만 MS
- 지포스나 라데온도 Dx10 통합셰이더로 넘어가기 전까진 소프
- 윤곽추출은 독립 유닛으로 행해지기 때문에 렌더링 엔진에
크게 영향을 주지 않음.
Fragment Anti Aliasing
Matrox의 야심찬 준비
- 오브젝트의 전체적인 경계선을 우선적으로 분석해서
부분적으로 각 부분(fragment)에 맞는 적절한 샘플링을 취하는
Fragment Anti Aliasing
Matrox의 FAA 기술문
Fragment Anti Aliasing
Fragment Anti Aliasing
Fragment Anti Aliasing
Fragment Anti Aliasing
Fragment Anti Aliasing
Matrox의 야심찬 준비
극복해야할 문제들…
- 외곽선 내부에서 일어나는 계단현상.
- 알파 텍스처에서의 계단현상
Fragment Anti Aliasing
12. Rotated
Sampling AA
살짝 비틀어 보자.
- GeForce 6,7 시리즈
- MSAA의 샘플링 방향만 살짝 비틈.
Rotated Sampling Anti Aliasing
13. Morphological
AA
Morphological의 사전적인 의미는..
- [생물]형태적인, [언어학] 형태론적인, 형태의..
Morphological Anti Aliasing
갓오브워의 바로 그 기술~!!!
- 이미 완성된 NO AA이미지에 포스트 프로세싱형식으로 계단
패턴을 파악한 후, 거기에 중간색을 넣어 계단을 완화.
- CPU로 처리하는 이미지 기반 처리.
- 별도의 프레임버퍼 용량을 잡아먹지 않지만 연산량이 엄청나
- 나름(?) AA의 포스트 프로세싱 처리의 기초.
Morphological Anti Aliasing
Morphological Anti Aliasing
MLAA의 알고리즘
- Edge Detection.
- Weight Calculation.
- Color Blending.
갓오브워의 바로 그 기술~!!!
- 이미 완성된 NO AA이미지에 포스트 프로세싱형식으로 계단
패턴을 파악한 후, 거기에 중간색을 넣어 계단을 완화.
- CPU로 처리하는 이미지 기반 처리.
- 별도의 프레임버퍼 용량을 잡아먹지 않지만 연산량이 엄청나
- 나름(?) AA의 포스트 프로세싱 처리의 기초.
Edge의 형태가 어떤 타입(Z, U, L)인지 검사.
- 각 픽셀마다 4방향(상하좌우)와 대비 검사.
- 각 픽셀에서의 패턴의 중간지점을 서로 연결하는 벡터를 만든
- 결국 Z패터과 U패턴은 쪼개서 L패턴으로 만든다.
Morphological Anti Aliasing
Edge의 형태가 어떤 타입(Z, U, L)인지 검사.
- 각 픽셀마다 4방향(상하좌우)와 대비 검사.
- 각 픽셀에서의 패턴의 중간지점을 서로 연결하는 벡터를 만든
- 결국 Z패터과 U패턴은 쪼개서 L패턴으로 만든다.
Morphological Anti Aliasing
Edge를 기준으로 나뉜 각 부분을 얼만큼 섞을 것인지 판
- 만들어진 벡터를 통해 각 픽셀을 체크.
- 형태가 이루는 면적 비율이 blend weight가 됨.
Morphological Anti Aliasing
나뉜 부분을 Color Blending.
- 연산된 blend weight에 의해 이웃한 픽셀의 색과 혼합.
- 결과 색 = (1-weight)*기존 색 + weight * 이웃 픽셀 색
Morphological Anti Aliasing
Morphological Anti Aliasing
noAA : 배틀필드2
Morphological Anti Aliasing
MLAA : 배틀필드2
Morphological Anti Aliasing
2xMSAA : 언차티드
Morphological Anti Aliasing
MLAA : 언차티드
HDR과 AA의 악연을 해결해 주는 도우미?
- 친절하게 AA를 날려주는 HDR.
Morphological Anti Aliasing
계단현상은 명도/색도 대비가 강한
색의 경계에서 발생하는데 이러한 계단
완화시켜주기 위해 중간색을 넣는것이
MSAA 배율이 높을수록 중간색 단계도
HDR 색영역은 표현 색 영역으 초월해 버
모니터가 표현할 수 있는 최대 밝기가 1
50이나 100이나 둘 다 10으로 표현.
HDR 색영역은 중간치에 맞추어 RGB8로
그 와중에 AA가 손실.
HDR과 AA의 악연을 해결해 주는 도우미?
- 친절하게 AA를 날려주는 HDR.
Morphological Anti Aliasing
계단현상은 명도/색도 대비가 강한
색의 경계에서 발생하는데 이러한 계단
완화시켜주기 위해 중간색을 넣는것이
MSAA 배율이 높을수록 중간색 단계도
HDR 색영역은 표현 색 영역으 초월해 버
모니터가 표현할 수 있는 최대 밝기가 1
50이나 100이나 둘 다 10으로 표현.
HDR 색영역은 중간치에 맞추어 RGB8로
그 와중에 AA가 손실.
HDR과 AA의 악연을 해결해 주는 도우미?
- MLAA는 HDR영역이 이미 RGB8로 변환된 최종 버퍼에 포스
적용되기 때문에 AA손실같은 현상이 발생하지 않는다.
Morphological Anti Aliasing
친절한 MLAA
- 메모리 절약 : 2xMSAA 적용시 G버퍼 용량이 14m에서 MLA
- 대역폭 절약 : G버퍼의 용량이 줄면서 대역폭 확보.
- 필레이트 절약 : 필레이트가 절감되면서 반투명 효과를 처리할
Morphological Anti Aliasing
친절한 MLAA
- 메모리 절약 : 2xMSAA 적용시 G버퍼 용량이 14m에서 MLA
- 대역폭 절약 : G버퍼의 용량이 줄면서 대역폭 확보.
- 필레이트 절약 : 필레이트가 절감되면서 반투명 효과를 처리할
Morphological Anti Aliasing
Morphological Anti Aliasing
GOW PS3, MLAA
Morphological Anti Aliasing
GOW PS3, 초고해상도로 렌더링 후
Morphological Anti Aliasing
14. Practical
Morphological
AA
Practical Morphological Anti Aliasing
우리 MLAA는.….
- SSAA나 MSAA에서는 할수 없었던 Deferred Shading을 할
Post processing AA인 MLAA…
- 하지만 FULL CPU 구현이라 렌더링 시간이 많이 걸리고 CP
데이터 전송에 소비가 있다.
MLAA와 먼가 다른 Practical MLAA….
- 기본적인 욕구는 바로 “GPU에서 MLAA 하고픈걸”에서 시작
- Post process 테크닉은 그대로 유지하고..
Practical Morphological Anti Aliasing
Practical MLAA는.….
- 2010년, SIGGRAPH 2010 “Practical Morphological Anti-
에서 소개됨.
- GPU Pro2권에서 소개.
- GPU 기반 실시간 처리가 가능한 MLAA
- MLAA와 같은 패스를 가지지만 세부 처리 방식은 다르다.
Edge Detection
- L형의 패턴은 사용하지 않음.
- Edge Texture에 Left(가로), Top(세로) Edge 정보를 R,G채
Practical Morphological Anti Aliasing
Top Left Both
Practical Morphological Anti Aliasing
Weight Calculation
- 기울어진 정도를 측정하기 위해서 구하고자 하는 Edge와 대
위치를 Iteration하면서 찾음.
- 가로를 기준으로 세로를 찾고, 세로를 기준으로 가로를 찾는
Practical Morphological Anti Aliasing
Weight Calculation
- Iteration하는 Sampling 횟수를 줄이기 위해서 Pixel의 사이
- 찾아야 하는 edge가 세로 edge이므로 Green(255)일 때 값이
Practical Morphological Anti Aliasing
Weight Calculation
- 구해진 Crossing Edge와 Distance를 통해 분기문 없이 Wei
Practical Morphological Anti Aliasing
Color Blend
- Left, Top, Right, Bottom의 Blending Weight는 각각 R,G,B
- 4개의 이웃 블렌딩 :
이전 패스에서 계산된 블렌딩 웨이트가 각 픽셀에서 이웃들과
Practical Morphological Anti Aliasing
Color Blend
- Result = 원본 * BlendingWeight
15. Fast
Approximate AA
구현쉽고 속도빠른 AA 어디 없나?
- MLAA를 nVidia 직원이 개량해서 공개.
- MLAA와 마찬가지로 렌더링 파이프라인 이후에 이루
어지는 Post Effect.
- nVidia사에서 친절하게 Shader코드를 올려주고 있다.
- 적용 방식은 이곳에서 -> Game Development
Forever(FXAA)
- 에이지 오브 코난, 크라이시스2 등에서 사용.
Fast Approximate Anti Aliasing
No AA 4x MSAA FXAA
Fast Approximate Anti Aliasing
드래곤 네스트, FXAA 적용 전
Fast Approximate Anti Aliasing
드래곤 네스트, FXAA 적용 후
Fast Approximate Anti Aliasing
Fast Approximate Anti Aliasing
Fast Approximate Anti Aliasing
FXAA는 빨랐다…
Fast Approximate Anti Aliasing
FXAA는 빨랐다…
16. Enhanced
Subpixel
Morphological AA
나름 최신 SMAA..?
- 2012/05 에 EUROGRAPHICS 발표 예정
- 가슴에 따뜻한 감동과 좌절을 안겨준 동영상
(http://www.iryoku.com/smaa)
- Pratical MLAA에서 착안
SubPixel Morphological Anti Aliasing
기존 MLAA
Edge detection
- Local contrast adaptation.
- Sub-ixel problem
- Sharp geometric features
Pattern handling
- Diagonal Patterns
Sub-pixel rendering
Temporal re-projection
SubPixel Morphological Anti Aliasing
SubPixel Morphological Anti Aliasing
Edge detection
- Local contrast adaptation.
: 원래 이미지 자체가 약간 AA를 적용한 것 같은 이미
지에서
MLAA는 L패턴을 사용하여 contrast(대비)가 나는
곳은 모두 Crossing edge로
파악하여 올바른 결과가 나오지 않는다.
MLAA SMAACrossing edges
SubPixel Morphological Anti Aliasing
Sub pixel Problem
- 이미지 기반 처리로는 해결 할 수 없는 문제
- SSAA로 해결 가능.
SubPixel Morphological Anti Aliasing
Sub pixel Problem
- Temporal AA = SMAA T2x (프레임 별로 샘플링
위치를 다르게 선택)
- MSAA 2x = SMAA S2x (허용 가능한 성능차)
- Temporal AA + MSAA 2x = SMAA 4x
(SMAA의 최대 성능 옵션)
SubPixel Morphological Anti Aliasing
Sharp geometric features
- 각진 오브젝트의 경우 우리가 원하는 결과는 각진 그대
로 깔끔하게.
MLAA는 블러를 먹인것 처럼 만든다.
Diagonal Edge Patterns
- 기존의 filter based techniques
: Orthogonal(직각) pattern에 대해서만 고려
대각선에 대해 좋지 않은 alised 결과
SubPixel Morphological Anti Aliasing
Diagonal Edge Patterns
- 기존의 filter based techniques
: Orthogonal(직각) pattern에 대해서만 고려
대각선에 대해 좋지 않은 alised 결과
SubPixel Morphological Anti Aliasing
Diagonal Edge Patterns
SubPixel Morphological Anti Aliasing
MSAA의 성능은?
SubPixel Morphological Anti Aliasing
SMAA의 성능은?
SubPixel Morphological Anti Aliasing
SMAA의 성능은?
SubPixel Morphological Anti Aliasing
17. Temporal
Approximate AA
신비로운 TXAA
- GDC 2012 – NVIDIA에서 발표
- Directx 11.0부터 지원
- GTX 400/500/600 계열만 지원(ATI 안됨)
- 고해상도의 Z 버퍼를 샘플링 함
- 과거 프레임에 대해서도 샘플 픽셀 단위의 엣지 정보를
샘플링 하므로
시간적인(Temporal) AA라고 부름.
- 아직 정확한 알고리즘 내부는 비공개.
Temporal Approximate Anti Aliasing
신비로운 TXAA
- TXAA1과 TXAA2를 공개
- TXAA1 (MSAAx2 비용 = MSAAx8 효과)
- TXAA2 (MSAAx4 비용 = MSAAx8 이상의 효과)
Temporal Approximate Anti Aliasing
신비로운 TXAA
- TXAA와 MSAA의 Quality, Performance 비교
Temporal Approximate Anti Aliasing
신비로운 TXAA
Temporal Approximate Anti Aliasing
신비로운 TXAA
Temporal Approximate Anti Aliasing
신비로운 TXAA
Temporal Approximate Anti Aliasing
DLAA, DEAA
GBAA, SRAA
NFAA, SPUAA
HRAA, EQAA
DLAA, DEAA
GBAA, SRAA
NFAA, SPUAA
HRAA, EQAA
I Think…
수많은 AA, 세밀한 디테일.. 과연 필요한가?
- 게임은 계속 움직이면서 진행한다.
- 게임 진행 시 정지화면으로 만들어 AA를 유심히 살펴
보는 유저가 있을까??
- Nvidia 카드에서는 속도도 빠르고 결과물도 무난한
FXAA만 써도 되지 않을까?
다른 카드에서는 글쎄….mm?
I Think.
제 발표는 여기까지 입니다.
질문하고픈 내용은 고이 간직
간직 하셨다가
집에서 구글님에게
문의해주세요.
anti aliasing

More Related Content

What's hot

Advanced Scenegraph Rendering Pipeline
Advanced Scenegraph Rendering PipelineAdvanced Scenegraph Rendering Pipeline
Advanced Scenegraph Rendering PipelineNarann29
 
Voxel based game_optimazation_relelase
Voxel based game_optimazation_relelaseVoxel based game_optimazation_relelase
Voxel based game_optimazation_relelaseYEONG-CHEON YOU
 
Switch transformers paper review
Switch transformers paper reviewSwitch transformers paper review
Switch transformers paper reviewSeonghoon Jung
 
Anti-Aliasing Methods in CryENGINE 3
Anti-Aliasing Methods in CryENGINE 3Anti-Aliasing Methods in CryENGINE 3
Anti-Aliasing Methods in CryENGINE 3Tiago Sousa
 
[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruningKIMMINHA3
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)Bongseok Cho
 
Pr057 mask rcnn
Pr057 mask rcnnPr057 mask rcnn
Pr057 mask rcnnTaeoh Kim
 
静岡Developers勉強会コンピュータビジョンvol2
静岡Developers勉強会コンピュータビジョンvol2静岡Developers勉強会コンピュータビジョンvol2
静岡Developers勉強会コンピュータビジョンvol2niku9Tenhou
 
The Guerrilla Guide to Game Code
The Guerrilla Guide to Game CodeThe Guerrilla Guide to Game Code
The Guerrilla Guide to Game CodeGuerrilla
 
BRDF Model (English version)
BRDF Model (English version)BRDF Model (English version)
BRDF Model (English version)Teppei Kurita
 
Action Recognition (Thesis presentation)
Action Recognition (Thesis presentation)Action Recognition (Thesis presentation)
Action Recognition (Thesis presentation)nikhilus85
 
Trip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningTrip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningRenaldas Zioma
 
Deep learning based object detection basics
Deep learning based object detection basicsDeep learning based object detection basics
Deep learning based object detection basicsBrodmann17
 
Water technology-of-uncharted-gdc-2012
Water technology-of-uncharted-gdc-2012Water technology-of-uncharted-gdc-2012
Water technology-of-uncharted-gdc-2012MinGeun Park
 
[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험NAVER D2
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술YEONG-CHEON YOU
 
Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019
Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019
Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019Unity Technologies
 
Paris Master Class 2011 - 07 Dynamic Global Illumination
Paris Master Class 2011 - 07 Dynamic Global IlluminationParis Master Class 2011 - 07 Dynamic Global Illumination
Paris Master Class 2011 - 07 Dynamic Global IlluminationWolfgang Engel
 

What's hot (20)

Advanced Scenegraph Rendering Pipeline
Advanced Scenegraph Rendering PipelineAdvanced Scenegraph Rendering Pipeline
Advanced Scenegraph Rendering Pipeline
 
Voxel based game_optimazation_relelase
Voxel based game_optimazation_relelaseVoxel based game_optimazation_relelase
Voxel based game_optimazation_relelase
 
Switch transformers paper review
Switch transformers paper reviewSwitch transformers paper review
Switch transformers paper review
 
Anti-Aliasing Methods in CryENGINE 3
Anti-Aliasing Methods in CryENGINE 3Anti-Aliasing Methods in CryENGINE 3
Anti-Aliasing Methods in CryENGINE 3
 
[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning[NeuralIPS 2020]filter in filter pruning
[NeuralIPS 2020]filter in filter pruning
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)
 
Pr057 mask rcnn
Pr057 mask rcnnPr057 mask rcnn
Pr057 mask rcnn
 
静岡Developers勉強会コンピュータビジョンvol2
静岡Developers勉強会コンピュータビジョンvol2静岡Developers勉強会コンピュータビジョンvol2
静岡Developers勉強会コンピュータビジョンvol2
 
The Guerrilla Guide to Game Code
The Guerrilla Guide to Game CodeThe Guerrilla Guide to Game Code
The Guerrilla Guide to Game Code
 
BRDF Model (English version)
BRDF Model (English version)BRDF Model (English version)
BRDF Model (English version)
 
Action Recognition (Thesis presentation)
Action Recognition (Thesis presentation)Action Recognition (Thesis presentation)
Action Recognition (Thesis presentation)
 
Trip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningTrip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine Learning
 
Deep learning based object detection basics
Deep learning based object detection basicsDeep learning based object detection basics
Deep learning based object detection basics
 
Water technology-of-uncharted-gdc-2012
Water technology-of-uncharted-gdc-2012Water technology-of-uncharted-gdc-2012
Water technology-of-uncharted-gdc-2012
 
[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험
 
Introduction of Faster R-CNN
Introduction of Faster R-CNNIntroduction of Faster R-CNN
Introduction of Faster R-CNN
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술
 
Ndc11 이창희_hdr
Ndc11 이창희_hdrNdc11 이창희_hdr
Ndc11 이창희_hdr
 
Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019
Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019
Getting started with Ray Tracing in Unity 2019.3 - Unite Copenhagen 2019
 
Paris Master Class 2011 - 07 Dynamic Global Illumination
Paris Master Class 2011 - 07 Dynamic Global IlluminationParis Master Class 2011 - 07 Dynamic Global Illumination
Paris Master Class 2011 - 07 Dynamic Global Illumination
 

Similar to anti aliasing

multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트JP Jung
 
optimize
optimizeoptimize
optimizeneoact
 
[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기changehee lee
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터JEEHYUN PAIK
 
09_Bilateral filtering/Reprojection Cache 소개
09_Bilateral filtering/Reprojection Cache 소개09_Bilateral filtering/Reprojection Cache 소개
09_Bilateral filtering/Reprojection Cache 소개noerror
 
[2B2]기계 친화성을 중심으로 접근한 최적화 기법
[2B2]기계 친화성을 중심으로 접근한 최적화 기법[2B2]기계 친화성을 중심으로 접근한 최적화 기법
[2B2]기계 친화성을 중심으로 접근한 최적화 기법NAVER D2
 
2021-11-16 모두콘 딥러닝 경량화 발표
2021-11-16 모두콘 딥러닝 경량화 발표2021-11-16 모두콘 딥러닝 경량화 발표
2021-11-16 모두콘 딥러닝 경량화 발표JongkukLim
 
Deep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsDeep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsseungwoo kim
 
언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기
언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기
언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기YOUNGJO CHO
 
7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전JP Jung
 
247 deview 2013 이미지 분석 - 민재식
247 deview 2013 이미지 분석 - 민재식247 deview 2013 이미지 분석 - 민재식
247 deview 2013 이미지 분석 - 민재식NAVER D2
 
Titanic kaggle competition
Titanic kaggle competitionTitanic kaggle competition
Titanic kaggle competitionjdo
 
gametech 2012 Gladius project
gametech 2012 Gladius projectgametech 2012 Gladius project
gametech 2012 Gladius projectWuwon Yu
 
Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical MethodologyKyeongUkJang
 
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법YEONG-CHEON YOU
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초Hyungsoo Ryoo
 
[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규ChangKyu Song
 

Similar to anti aliasing (18)

multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
 
optimize
optimizeoptimize
optimize
 
op
opop
op
 
[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기[Kgc2013] 모바일 엔진 개발기
[Kgc2013] 모바일 엔진 개발기
 
Ml for 정형데이터
Ml for 정형데이터Ml for 정형데이터
Ml for 정형데이터
 
09_Bilateral filtering/Reprojection Cache 소개
09_Bilateral filtering/Reprojection Cache 소개09_Bilateral filtering/Reprojection Cache 소개
09_Bilateral filtering/Reprojection Cache 소개
 
[2B2]기계 친화성을 중심으로 접근한 최적화 기법
[2B2]기계 친화성을 중심으로 접근한 최적화 기법[2B2]기계 친화성을 중심으로 접근한 최적화 기법
[2B2]기계 친화성을 중심으로 접근한 최적화 기법
 
2021-11-16 모두콘 딥러닝 경량화 발표
2021-11-16 모두콘 딥러닝 경량화 발표2021-11-16 모두콘 딥러닝 경량화 발표
2021-11-16 모두콘 딥러닝 경량화 발표
 
Deep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendationsDeep neural networks for You-Tube recommendations
Deep neural networks for You-Tube recommendations
 
언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기
언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기
언리얼엔진4를 활용한 레이트레이싱 리얼타임 영상 제작하기
 
7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전
 
247 deview 2013 이미지 분석 - 민재식
247 deview 2013 이미지 분석 - 민재식247 deview 2013 이미지 분석 - 민재식
247 deview 2013 이미지 분석 - 민재식
 
Titanic kaggle competition
Titanic kaggle competitionTitanic kaggle competition
Titanic kaggle competition
 
gametech 2012 Gladius project
gametech 2012 Gladius projectgametech 2012 Gladius project
gametech 2012 Gladius project
 
Chapter 11 Practical Methodology
Chapter 11 Practical MethodologyChapter 11 Practical Methodology
Chapter 11 Practical Methodology
 
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
 
딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초딥러닝 - 역사와 이론적 기초
딥러닝 - 역사와 이론적 기초
 
[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규[NDC08] 최적화와 프로파일링 - 송창규
[NDC08] 최적화와 프로파일링 - 송창규
 

anti aliasing

  • 2. 하고 싶은 이야기 1. Sampling 2. Aliasing & Anti Aliasing. 3. Super Sampling Anti Aliasing. (SSAA or FSAA) 4. Multi Sampling Anti Aliasing. (MSAA) 5. Transparency Anti Aliasing. (TAA) 6. Adaptive Anti Aliasing. (AAA) 7. Gamma Corrected Anti Aliasing. (GAA, GCAA) 8. Coverage Sample Anti Aliasing. (CSAA) 9. Quincunx Anti Aliasing. (QAA) 10. Temporal Anti Aliasing. (TAA) 11. Fragment Anti Aliasing. (FAA) 12. Rotated Sampling Anti Aliasing. (RSAA) 13. Morphological Anti Aliasing. (MLAA) 14. Practical Morphological Anti Aliasing (Practical MLAA) 15. Fast Approximate Anti Aliasing. (FXAA) 16. Enhanced Subpixel Morphological Anti Aliasing. (SMAA) 17. Temporal Approximate AA. (TXAA)
  • 3. 봐야 할 것도 많고 할 것도 많은 AA….
  • 7. Turn continuous function into discrete samples. Sampling : 아날로그 신호(연속신호)를 이산신호(discrete)로 바꾸기 위해 사용하 Sampling을 통해 만들어진 이산신호 값들 해당 2진수 값으로 바꾸어 주면(Quantiza 디지털 신호가 된다.
  • 8. Turn continuous function into discrete samples. 조금만 더 자세히 보자면..
  • 9. Turn continuous function into discrete samples. 표본화 : 시간축을 분역속으로 만드는 과 양자화 : 진폭을 불연속으로 만드는 과정 부호화 : 이진값으로 부호화 시키는 과정
  • 10. Turn continuous function into discrete samples. 표본화(Sampling) : 시간축을 분역속으로 양자화(Quantization) : 진폭을 불연속으로 부호화 : 이진값으로 부호화 시키는 과정
  • 11. Turn continuous function into discrete samples. 그래픽스에서는.. 그래픽스에서는 샘플링 + 양자화 + 부호화를 통틀어 그냥 샘플
  • 12. Turn continuous function into discrete samples. 그래픽스에서는.. 아날로그 이미지를 컴퓨터에서 직접 처리하거나 저장할수 없기 표본화와 양자화 과정을 거쳐 디지털 이미지로 변환. 표본화를 거친 이미지.. 아날로그 이미지의 연속적인 위치 데이터 불연속적인 디지털 데이터로 변환하는 과
  • 13. Turn continuous function into discrete samples. 그래픽스에서는.. 아날로그 이미지를 컴퓨터에서 직접 처리하거나 저장할수 없기 표본화와 양자화 과정을 거쳐 디지털 이미지로 변환. 양자화를 거친 이미지.. - 연속적인 색상 데이터를 불연속적인 디지털 데이터로 변환하는 과정. - 각 화소의 밝기 또는 색을 컴퓨터에서 인지할 수 있는 숫자로 표현하는 과정.
  • 14. Turn continuous function into discrete samples. Rasterization (2D) - Vertex 표현을 pixel 표현으로 변환하는 과정.
  • 15. Turn continuous function into discrete samples. Rasterization (2D) Audio (1D) - 아날로그 신호중 음성신호(speech signal).
  • 16. Turn continuous function into discrete samples. Rasterization (2D) Audio (1D) Video (2D + time) - 2D 이미지의 연속적인 모음.
  • 17. 2012, 04, 09 – Goolgle HomePage.
  • 18. Turn continuous function into discrete samples. Rasterization (2D) Audio (1D) Video (2D + time) Triangulation (3D) - 삼각형화.
  • 19. 간단한 표현, 하지만 정보의 손실.
  • 20. 간단한 표현, 하지만 정보의 손실. 때로는 손실된 정보를 복원할 수 있다.
  • 21. 간단한 표현, 하지만 정보의 손실. 때로는 손실된 정보를 복원할 수 있다. 하지만 정보를 복원못할 수도 있다.
  • 22. 하지만 정보를 복원못할 수도 있다. 간단한 표현, 하지만 정보의 손실. 때로는 손실된 정보를 복원할 수 있다.
  • 23. 어떤것을 복원 해야 하는지 애매하다…
  • 24. 어떤것을 복원 해야 하는지 애매하다… 복원하는 간단한 한가지 방법.(lowest frequency)
  • 25. 어떤것을 복원 해야 하는지 애매하다… Aliasing : 복원방법이 잘못된 경우 발생. 복원하는 간단한 한가지 방법.(lowest frequency)
  • 26. 어떤것을 재생성 해야 하는지 애매하다… 더 간단한걸 재생성.(lowest frequency) Aliasing : 복원방법이 잘못된 경우 발생.
  • 27. 어떤것을 재생성 해야 하는지 애매하다… 더 간단한걸 재생성.(lowest frequency) Aliasing : 복원방법이 잘못된 경우 발생. 이러한 문제를 고칠 수 없다. 샘플링시 손실된 정보가 필요하다.
  • 28. 2. Aliasing & Anti Aliasing
  • 29. Aliasing이라는 디지털 왜곡현상은 우리가 흔히 생각하는 픽셀 경계면 왜곡현상보다 더 넓은 개념. Aliasing
  • 30. 어떤 시각정보가 디지털 장치로 이동되면서 주 파수, 해상도등의 변경이 발생할 때, 시각적으로 발생하는 여러가지 왜곡 현상을 모두 가리키는 개념. Aliasing : Aliasing
  • 32. 돌아가는 바퀴 속도(원래사진 찍는 속도(샘플링 속도). VS Wagon Wheel Effect
  • 34.
  • 35. 낮은 샘플링 속도(사진 찍는 속도)는 바퀴 돌아가는 것 처럼 보이게 하는 부작용이 이를 Temporal Aliasing 이라 한다. Wagon Wheel Effect
  • 36. - 왜곡 현상을 최소화 하는 모든 기술을 총괄하는 말. - 100% 없앨 수 없기 때문에 디-앨리어싱 이라 하지 않 최소화하기 때문에 안티-앨리어싱 이라 한다. Anti Aliasing
  • 37. Jaggies & Aliasinig : edge가 계단 모양으로 보이는 시각적 결함 Anti Aliasing
  • 38. Crawlies & Aliasing : 애니메이션에서 슬금슬금 움직이는 것 같이 보이는 현상 Anti Aliasing
  • 41. Interaction between complexity of function and sample rate
  • 42. Interaction between complexity of function and sample rate Nyquist Sampling 법칙 한정된 대역의 주파수를 갖는 함수의 경우, 적절한 샘플링 간격을 정보의 유실없이 재생할 수 있다는 이론. Nyquist Sampling 표준 Sampling시 Aliasing현상을 막는 Sampling 속도는 측정하고자 하 신호원의 최고 주파수의 2배 이상으로 한다.
  • 43. Aliasing을 막기 위해 우리가 할 수 있는 일은? -More real samples -More logical samples + averaging -Turn it tinto noise -Use a Different function (prefilter)
  • 44. More real samples Sample rate의 값이 작다면 문제를 일으킬 수 있다. 현실적인 해결책은…
  • 45. More real samples Sample rate의 값이 작다면 문제를 일으킬 수 있다. 현실적인 해결책은… iPhon4, Retina Display 326 + DPI
  • 46. More real samples Sample rate의 값이 작다면 문제를 일으킬 수 있다. 현실적인 해결책은… iPhon4, Retina Display 326 + DPI
  • 47. iPhone4 Retina Display vs GalaxyS Super Amoled
  • 48. iPhone4 Retina Display vs GalaxyS Super Amoled
  • 49. iPhone4 Retina Display vs GalaxyS Super Amoled
  • 50. More real samples 현실적인 해결책은…아이뻐라는거…
  • 51. More logical samples + averaging Supersampling or Multisampling
  • 52. More logical samples + averaging Supersampling or Multisampling
  • 53. More logical samples + averaging Supersampling or Multisampling
  • 54. More logical samples + averaging Supersampling or Multisampling 현실적으로 맞지 않지만 보기에 덜 불편하다.
  • 55. More logical samples + averaging Supersampling or Multisampling 어떻게 평균화 할 것인가?
  • 56. More logical samples + averaging Supersampling or Multisampling 어떻게 평균화 할 것인가? 가장 간단한 방법은…. box Filter ( 주변 픽셀값의 평균을 얻는 방식의 필터링)
  • 57. Turn it into noise Aliasing의 문제는 모양이 균일화 되어 있다는 것이며 이는 너무 눈에 띄어 보기에 불편하게 만든다.
  • 58. Turn it into noise 샘플을 불규칙하게 배치하자. (jitter)
  • 59. Turn it into noise
  • 60. Turn it into noise Supersampling + jitter
  • 61. Use a different function
  • 62. Use a different function Prefilter : 샘플링 이전에 평균화.
  • 63. Aliasing을 막기 위해 우리가 할 수 있는 일은? -More real samples 다른 디스플레이 기술이 필요. -More logical samples + averaging 오늘날의 일반적인 하드웨어(4x or 16x) -Turn it tinto noise 부하가 발생하긴 하지만 무난한 해결책인듯… -Use a Different function (prefilter) 오늘날 일반적으로 텍스쳐에서만 사용.
  • 65. 결론은??? -Sampling은 정보의 손실을 발생시킨다. -잘못된 함수로 복원할 때 Aliasing이 발생한다. -Antialiasing은 Aliasing을 완하시킬 뿐, 해결해주지는
  • 66. 3. Super Sampling AA (Full Screen AA)
  • 67. Super Sampling AA (or Full Screen AA) 부두, 지포스, 라데온, 파헬리아, 카이로
  • 68. Super Sampling AA (or Full Screen AA) SSAA의 핵심은 뻥튀기다?? - 원하는 해상도보다 훨씬 크게 렌더링 해서 이미지를 축소해서 - 모든 픽셀에 대해서 픽셀당 한 개 이상의 샘플을 추출하는 방식
  • 69. Super Sampling AA (or Full Screen AA) SSAA의 핵심은 뻥튀기다?? - 원하는 해상도보다 훨씬 크게 렌더링 해서 이미지를 축소해서 - 모든 픽셀에 대해서 픽셀당 한 개 이상의 샘플을 추출하는 방식
  • 70. Super Sampling AA (or Full Screen AA) SSAA의 핵심은 뻥튀기다?? 치명적인 SSAA의 한계… - 800x600의 해상도로 설정된 그래픽에서 4x4 AA를 활성화하 SSAA를 사용한다는 것은….. 파이프라인의 마지막 과정에서 800x600으로 축소해서 표시할 모든 픽셀을 4x4만큼 크게 샘플링 -> 3200x2400의 해상도로 픽셀을 샘플링해서 버퍼에 저장한다. - 하지만..지오메트리와 상관없이 모든 픽셀을 뻥튀기 하므로 화면의 전체적인 퀄리티가 올라간다.
  • 71. Super Sampling AA (or Full Screen AA) SSAA의 핵심은 뻥튀기다?? 치명적인 SSAA의 한계… SSAA를 정리하자면… 요소 효과 처리방식 가로x세로(AxB) 샘플링 3D 오브젝트 경계면 △ 향상 텍스처 화질 △ 향상 특수효과 화질 △ 향상 가속 속도 ▽▽▽ 극단적으로 감소 메모리 요구량 △△△ 극단적으로 증가
  • 72. Super Sampling AA (or Full Screen AA) 그래픽 카드에 걸리는 심각한 부하는 어떻게 해결하지..?
  • 73. Super Sampling AA (or Full Screen AA) SSAA의 문제점을 해결하는 와중에… - 부두 : 부두5로 msaa의 시초를 만들었지만 파산, 엔비디아에 - 지포스 : 지포스3로 부두 흡수 후 Quinquix AA라는 기술을 탄 - 라데온 : 라데온8500으로 다이렉트X 표준기술로서의 msaa - 파헬리아 : FAA라는 기술을 들고 출현. - 카이로 : 망함.
  • 74. Super Sampling AA (or Full Screen AA) 카이로를 제외하곤 모두 본격적으로 MSAA라는 기술을 SSAA의 문제점을 해결하는 와중에… - 부두 : 부두5로 msaa의 시초를 만들었지만 파산, 엔비디아에 - 지포스 : 지포스3로 부두 흡수 후 Quinquix AA라는 기술을 탄 - 라데온 : 라데온8500으로 다이렉트X 표준기술로서의 msaa - 파헬리아 : FAA라는 기술을 들고 출현. - 카이로 : 망함.
  • 75. 샘플의 배열형태 Ordered Grid와 Rotated Grid. - 단순히 샘플을 어떻게 배치하는가의 문제. - Ordered Grid를 선호하는 nVidia와 Rotated Grid를 선호하는
  • 76. 샘플의 배열형태 Ordered Grid - 픽셀을 중심으로 평형적인 배치. 기본적인 샘플의 배열 2x2 (OG)
  • 77. 샘플의 배열형태 Rotated Grid - 샘플을 살짝 회전시켜 보자. - 과거에는 nVidia에서는 OG방식을, Ati에서는 RG방식을 선호 현재는 옵션에 따라 두 가지 배열방식을 혼합하여 사용.
  • 78. 샘플의 배열형태 핵심은 Ordered Grid와 Rotated Grid, 그 외에는? - SmoothVision - Random - Flip-Tri
  • 79. 샘플의 배열형태 핵심 OG와 RG, 그 외에는? - SmoothVision - Ati에서는 9x 시리즈와 함께, SmoothVision이라는 새로운 AA방식을 선보였다. - SmoothVision에서 눈에 띄는 점은 Programmable. - 정형화된 샘플배치가 아닌 프로그래밍을 통해 다양한 샘플
  • 80. 샘플의 배열형태 핵심 OG와 RG, 그 외에는? - SmoothVision - Random - 그냥 무작위로 샘플을 배열하는 방식
  • 81. 샘플의 배열형태 핵심 OG와 RG, 그 외에는? - SmoothVision - Random - Flip-Tri - 기존의 짝수 배열이 아닌 픽셀의 근접점에 2개, 먼곳에 한 개 처 3개의 샘플을 배열하는 방식, 발전된 형태로는 RG와 유사한 배
  • 83. 외각경계면만 신경쓰자~!. - 슈퍼샘플링의 성능저하를 해결하기 위해 고안. - 폴리곤 에지가 지나가는 픽셀만 Ax만큼 샘플링해서 원래의 픽셀로 필터링하는 방식을 사용. - 블렌딩이 필요하지 않은 픽셀에 대한 계산(샘플링)을 포기함으 슈퍼샘플링보다 몇배나 높은 성능대비를 기대할 수 있다. Multi Sampling AA
  • 84. 외각경계면만 신경쓰자~!. Multi Sampling AA 1xAA (noAA) 일때 자신의 점에서만 체크.
  • 85. Multi Sampling AA 병맛같은 결과물. 계단현상 심함. 외각경계면만 신경쓰자~!.
  • 86. Multi Sampling AA 외각경계면만 신경쓰자~!. - Multisampling은 의미 그대로 여러 개의 샘플을 취한다는 뜻.
  • 87. Multi Sampling AA 외각경계면만 신경쓰자~!. 자신의 점과 빨간점 까지도 고려한다.
  • 88. Multi Sampling AA 외각경계면만 신경쓰자~!. 여전히 병맛같지만 멀리서 보면 그럴듯함. 중간색을 끼워넣었더니 계단이 사라졌어요~!.
  • 90. Multi Sampling AA 외각경계면만 신경쓰자~!. SSAA와 MSAA. - AxSSAA는 실제로 A배 크게 렌더링해서 나중에 1/A로 줄이는 - AxMSAA는 픽셀의 레이아웃부터 좀 다르다
  • 91. Multi Sampling AA 외각경계면만 신경쓰자~!. SSAA와 MSAA. - AxSSAA는 실제로 A배 크게 렌더링해서 나중에 1/A로 줄이는 - AxMSAA는 픽셀의 레이아웃부터 좀 다르다 픽셀을 Fragment라고 부르는 A개의 서브픽셀로 나눈 후에 픽셀에 대한 커버리지를 계산하여 Fragment를 채우는 방식
  • 92. 외각경계면만 신경쓰자~!. Msaa의 단점은? - 샘플이 부족하면 정확한샘플링이 불가능 하다. - CPU 기반. - 오브젝트의 외각부분만 샘플링하기 때문에, 텍스처, 특수효과등은 화질현상이 없다. - 폰트나 무늬가 뚜렷한 텍스처에 적용할 경우 블렌딩에 의한 흐림현상이 지저분하다. Multi Sampling AA
  • 93. 외각경계면만 신경쓰자~!. Msaa의 단점은? - 복수의 샘플을 채취하므로 그만큼 프레임버퍼의 정보크기는 커 Multi Sampling AA
  • 94. 외각경계면만 신경쓰자~!. Msaa의 단점은? Msaa를 정리하자면… Multi Sampling AA 요소 효과 처리방식 폴리곤의 경계와 만나는 픽 셀에서만 Ax만큼 샘플링 3D 오브젝트 경계면 △ 향상 텍스처 화질 -- 향상 없음 특수효과 화질 -- 향상 없음 가속 속도 ▽ 적당히 감소 메모리 요구량 △ 적당히 증가
  • 95. 외각경계면만 신경쓰자~!. Msaa의 단점은? Msaa를 정리하자면… Multi Sampling AA SSAA MSAA 성능감소 ▽▽▽극단적 감소 ▽적당히 감소 전체화질 △△△큰폭으로 좋아짐 △적당히 좋아짐 텍스처 화질 △증가 --영향없음 처리방식 전체화면 경계면등 일부만 메모리 요구량 △△△극단적 증가 △적당히 증가 옵션표시 방식 2x1, 1x2, 2x2, 4x4, 8x8 2x, 4x, 8x, 16x, 8xQ, 16xQ 시각적 만족도 △△△좋음 △적당함
  • 96. 외각경계면만 신경쓰자~!. Msaa의 단점은? Msaa를 정리하자면… Deferred Msaa? -하드웨어의 가속을 간접적으로 받게하여 MSAA를 손쉽게 구현 1. 전처리로 씬의 모든 도형을 4xMSAA로 깊이만 렌더. 2. 씬을 MSAA를 끄고 정상적으로 HDR 렌더 타겟에 렌더 3. 톤 매핑 및 기타 후처리를 적용 4. Deferred AA를 적용 ( 1에서 만들어진 MSAA 뎁스 버퍼를 샘 픽셀 범위를 계산하고 범위를 기반으로 필터) Multi Sampling AA
  • 97. 외각경계면만 신경쓰자~!. Msaa의 단점은? Msaa를 정리하자면… Deferred Msaa? Multi Sampling AA
  • 99. 세밀한 부분까지 좀 더 부드럽게… - nVidia에서 만든 Transparency Anti Aliasing(TAA) - 기존 AA기법에서는 표현해내지 못한 폴리곤 단위의 텍스쳐들 더욱 사실적이고 부드러운 화면을 표현한다. Transparency AA
  • 100. 세밀한 부분까지 좀 더 부드럽게… - nVidia에서 만든 Transparency Anti Aliasing(TAA) - 기존 AA기법에서는 표현해내지 못한 폴리곤 단위의 텍스쳐들 더욱 사실적이고 부드러운 화면을 표현한다. Transparency AA 단일 폴리곤 내부에 렌더링된 식물 TAA 기법을 적용하면 이미지에 나 식물모양의 텍스쳐들에도 AA기법 더 높은 품질의 화면을 보여줄 수 일반적으로 철망이나 나뭇가지등 표현되는 부분에서 큰 효과를 가져 기존 AA Transparency AA
  • 101. Transparency Anti Aliasing의 적용에 따른 화질비교. Transparency AA
  • 102. TASA(TAA + SSAA) TAMA(TAA + MSAA) Transparency AA TASA의 결과물이 다른 3가지 결과물보다 나뭇잎과 가지들이 더 부드럽게 표현. TAMA방식은 AA와 큰 차이를 보여주지 못함.
  • 103. Transparency AA 성능을 말해줘~! - 일반 AA보다 TAA + SSAA 적용시킬때가 24%정도의 성능하 하지만…화질은 좋아진다. - TAA + MSAA는 화질차이는 거의 없지만 프레임은 살짝 떨
  • 105. nVidia의 Transparency Anti Aliasing(TAA)와 친한 사 - 이미 경쟁사인 nVidia의 Geforce7 시리즈가 채용하고 있는 T 같은 방식의 AA기술로써 폴리곤 내부의 텍스쳐에서 나타내는 AA기술을 적용하게 만들어 준다. - 이 기술은 작은 풀들이나 나뭇잎, 그리고 미세한 격자무늬를 더 표현해 주고 거친 외곽선을 부드럽게 만들어 준다. Adaptive Anti Aliasing
  • 106. nVidia의 Transparency Anti Aliasing(TAA)와 친한 사 Adaptive Anti Aliasing
  • 107. nVidia의 Transparency Anti Aliasing(TAA)와 친한 사 Adaptive Anti Aliasing
  • 109. TAA, 그리고 AAA. - 같은 목적의 기술이지만 TAA가 SSAA와 MSAA방식을 구분지 적용하고 있는 반면 Ati의 AAA는 화면에 출력되는 결과물에 SSAA방식과 MSAA방식을 혼합하여 사용. Adaptive Anti Aliasing
  • 110. TAA, 그리고 AAA. - 같은 목적의 기술이지만 TAA가 SSAA와 MSAA방식을 구분지 적용하고 있는 반면 Ati의 AAA는 화면에 출력되는 결과물에 SSAA방식과 MSAA방식을 혼합하여 사용. Adaptive Anti Aliasing
  • 112. 감마를 고려하라~! - nVidia의 7x 시리즈의 그래픽카드(7800GTX)로부터 도입된 A - GAA 또는 GCAA라고 불린다. - AA가 발생하는 부분의 감마가 이미지의 전반적인 밝기와 차이 보이지 않도록, 픽셀의 컬러 레벨을 조종하는 옵션. - 성능저하도 거의 없지만 시각적으로도 크게 차이가 없다. Gamma corrected Anti Aliasing
  • 115.
  • 116. Gamma corrected Anti Aliasing 감마를 고려하라~! - 성능도 거의 차이가 없다.
  • 118. nVidia의 8x 시리즈의 핵심기술 - GeForce8800부터 들어가는 새로운 AA기법. - MSAA를 기반으로 MSAA 샘플링을 하는 과정에서 샘플의 개 - 전통적인 MSAA와의 차이점은 Color와 Z버퍼를 적게 취한다는 Coverage Sampling Anti Aliasing
  • 119. nVidia의 8x 시리즈의 핵심기술 - 8x, 8xQ, 16x, 16xQ Coverage Sampling Anti Aliasing
  • 120. nVidia의 8x 시리즈의 핵심기술 - 왜 Color와 Z버퍼를 따로 분리하여 적게 쓰고 Coverage Sam 더 많이 취하는가? -> Coverage Samples을 더 많이 취함으로써, 보다 많은 외각 분석한 뒤 Color/Z버퍼를 블렌딩해서 성능향상과 화질향상 Coverage Sampling Anti Aliasing
  • 121. nVidia의 8x 시리즈의 핵심기술 - 8x, 8xQ, 16x, 16xQ Coverage Sampling Anti Aliasing - 8x, 16x CSAA는 Color와 Z버퍼를 4xAA수준으로 하 8, 16으로 더 많이 취함으로서 Color/Z버퍼의 샘플링 블렌딩 정도가 4xMSAA보다 더 정확히? 이루어 진다
  • 122. nVidia의 8x 시리즈의 핵심기술 - 8x, 8xQ, 16x, 16xQ Coverage Sampling Anti Aliasing - 8xQ, 16xQ 의 Q는 Quality이기 때문에 Color/Z버퍼를 4xMS 취해서 8개를 가져오는데 8xQ는 결국 8xMSAA와 똑같은 샘플 결과가 발생하기 때문에 8xQ = 8xMSAA라고 생각하면 된다. 16xQ는 8xMSAA에 Coverage Samples만 16개 취한 형식.
  • 123. nVidia의 8x 시리즈의 핵심기술 - 8x, 8xQ, 16x, 16xQ Coverage Sampling Anti Aliasing - 8x, 16x CSAA = 4xMSAA + 추가적인 Coverage Samples - 8xQ CSAA = 8xMSAA - 16xQ CSAA = 8XMSAA + 추가적인 Coverage Samples
  • 124. nVidia의 8x 시리즈의 핵심기술 MSAA와 비슷한 성능에 적은 메모리 소비를 목표로 ~!. - 멀티샘플링에서 압축기술을 제공하여 메모리 대역폭을 줄인다 - 압축이다보니 퀄리티는 그다지 좋지 않다. - 일반적으로 CSAA는 ¼로 압축하는데 Q가 붙을 경우 압축율을 ½로 만들어 이미지 퀄리티가 손상되는걸 막는다. - 동일옵션의 멀티샘플링 방식보다 컬러에 대한 샘플을 2배 더 뻥튀기 하면서, 여분의 정보를 “압축저장”하여 - 메모리 요구량과 성능저하의 폭은 이전 멀티샘플링 옵션으로 유 보다 높은 퀄리티를 구현. Coverage Sampling Anti Aliasing
  • 125. nVidia의 8x 시리즈의 핵심기술 MSAA와 비슷한 성능에 적은 메모리 소비를 목표로 ~!. Coverage Sampling Anti Aliasing
  • 126. Implementation in Dx9 - 1. nVidia 카드인지 체크 - 2. CheckDeviceMultisampleType()로 Qulity Level체크 - 3. Sample Count>4 && Qulity Level>4이면 CSAA지원 가능 Coverage Sampling Anti Aliasing
  • 127. Implementation in Dx10 - 1. nVidia 카드인지 체크 - 2. CheckMultisampleQualityLevels()로 Sample Count와 Qulity Level 체크. - 3. Sample Count>4이고 Qulity Level>8이면 8xCSAA Qulity Level>16 이면 16x CSAA Coverage Sampling Anti Aliasing
  • 131. nVidia의 8x 시리즈의 핵심기술 MSAA와 비슷한 성능에 적은 메모리 소비를 목표로 ~!. CSAA는 쓸만한걸까? - 일반론적으로 CSAA16x보다는 MSAA8x가 더 낮다. CSAA는 부드럽게 블렌딩이 아닌 흐리멍텅해 보인다. - 사실 CSAA는 먼치킨… 근본적으로 CSAA가 먼치킨인 이유는 일반적인 해상도에서 유 켠다고 해도 4x정도, 누가 과연 8x를 켜고 게임을 할까??? Coverage Sampling Anti Aliasing
  • 132. 개선된 CSAA - GF100에서의 32xCSAA Coverage Sampling Anti Aliasing
  • 134. nVidia의 짝퉁 AA? - 2xQ와 같은 이름으로 적용.(Q는 Quality가 아닌 Quincunx) - 짝퉁 또는 가짜 AA로 치부되어 사장됨. - Quincunx(오망점)이라는 단어처럼 중심픽셀을 기준으로 총 5개의 샘플을 생성하나, 실제로는 하나의 픽셀을 중심으로 개별적인 Ax샘플을 취하는게 아닌 인접한 픽셀과 샘플을 공유. Quincunx Anti Aliasing
  • 135. nVidia의 짝퉁 AA? - 최소 3개 이상의 샘풀을 두개이상의 픽셀에 대해 재사용되며 적은 샘플링으로 높은 퀄리티를 낸다는 주장으로 Geforce3와 - 자신의 샘풀이 아닌 공유된 샘풀을 비슷한 비율로 사용하다 보 이미지가 흐리멍탕하게 되는 블러효과를 내게 되고 퀄리티가 극 Quincunx Anti Aliasing
  • 136. noAA
  • 141. Quincunx Anti Aliasing nVidia의 기술문서에 있는 QuincunxAA의 메모리 사 nVidia의 짝퉁 AA? - 메모리 사용량은 2xAA와 동일하나 nVidia에서는 4xAA의 성능을 표현할 수 있다고 주장. Geforce3이후로 거의 사장. - 기술문서 참고
  • 142. Quincunx Anti Aliasing nVidia의 짝퉁 AA? 장점 단점 성능저하가 적게 발생 오브젝트, 이미지 뿐 아니라 글자들도 모두 흐리멍텅.
  • 144. 메탈 기어 솔리드4, 헤일로 위치에서 사용된 바로 그것!! - 말 그대로 임시적인 AA. - 이전의 프레임 버퍼를 보관해뒀다가 이번 프레임 버퍼와 하프 픽셀로 합치는 것. - 이전 이미지와 이번 이미지를 합치는 방식. - 정적인 화면에서는 AA가 걸리지만 움직이면 AA가 사라진다. - 동적인 화면에서 잔상이 크게 일어난다. Temporal Anti Aliasing
  • 145. 메탈 기어 솔리드4, 헤일로 위치에서 사용된 바로 그것!! Temporal Anti Aliasing
  • 150. Matrox의 야심찬 준비 - Matrox 파헬리아 그래픽카드와 함께 Matrox에서 발표한 샘플 - MSAA와 SSAA방식의 장점만을 취했다고 주장. - SSAA의 고질적인 문제인 과다한 비디오 메모리 소비와 해상도 픽셀수 증가로 인한 저질 퍼포먼스를 국소적으로 AA를 햄함으 - MSAA의 결점을 보완하기 위해 계단현상이 주로 일어나는 외 부분만을 자체적인 하드웨어 기능으로 추적해 해당 부분만 MS - 지포스나 라데온도 Dx10 통합셰이더로 넘어가기 전까진 소프 - 윤곽추출은 독립 유닛으로 행해지기 때문에 렌더링 엔진에 크게 영향을 주지 않음. Fragment Anti Aliasing
  • 151. Matrox의 야심찬 준비 - 오브젝트의 전체적인 경계선을 우선적으로 분석해서 부분적으로 각 부분(fragment)에 맞는 적절한 샘플링을 취하는 Fragment Anti Aliasing Matrox의 FAA 기술문
  • 157. Matrox의 야심찬 준비 극복해야할 문제들… - 외곽선 내부에서 일어나는 계단현상. - 알파 텍스처에서의 계단현상 Fragment Anti Aliasing
  • 159. 살짝 비틀어 보자. - GeForce 6,7 시리즈 - MSAA의 샘플링 방향만 살짝 비틈. Rotated Sampling Anti Aliasing
  • 161. Morphological의 사전적인 의미는.. - [생물]형태적인, [언어학] 형태론적인, 형태의.. Morphological Anti Aliasing
  • 162. 갓오브워의 바로 그 기술~!!! - 이미 완성된 NO AA이미지에 포스트 프로세싱형식으로 계단 패턴을 파악한 후, 거기에 중간색을 넣어 계단을 완화. - CPU로 처리하는 이미지 기반 처리. - 별도의 프레임버퍼 용량을 잡아먹지 않지만 연산량이 엄청나 - 나름(?) AA의 포스트 프로세싱 처리의 기초. Morphological Anti Aliasing
  • 163. Morphological Anti Aliasing MLAA의 알고리즘 - Edge Detection. - Weight Calculation. - Color Blending. 갓오브워의 바로 그 기술~!!! - 이미 완성된 NO AA이미지에 포스트 프로세싱형식으로 계단 패턴을 파악한 후, 거기에 중간색을 넣어 계단을 완화. - CPU로 처리하는 이미지 기반 처리. - 별도의 프레임버퍼 용량을 잡아먹지 않지만 연산량이 엄청나 - 나름(?) AA의 포스트 프로세싱 처리의 기초.
  • 164. Edge의 형태가 어떤 타입(Z, U, L)인지 검사. - 각 픽셀마다 4방향(상하좌우)와 대비 검사. - 각 픽셀에서의 패턴의 중간지점을 서로 연결하는 벡터를 만든 - 결국 Z패터과 U패턴은 쪼개서 L패턴으로 만든다. Morphological Anti Aliasing
  • 165. Edge의 형태가 어떤 타입(Z, U, L)인지 검사. - 각 픽셀마다 4방향(상하좌우)와 대비 검사. - 각 픽셀에서의 패턴의 중간지점을 서로 연결하는 벡터를 만든 - 결국 Z패터과 U패턴은 쪼개서 L패턴으로 만든다. Morphological Anti Aliasing
  • 166. Edge를 기준으로 나뉜 각 부분을 얼만큼 섞을 것인지 판 - 만들어진 벡터를 통해 각 픽셀을 체크. - 형태가 이루는 면적 비율이 blend weight가 됨. Morphological Anti Aliasing
  • 167. 나뉜 부분을 Color Blending. - 연산된 blend weight에 의해 이웃한 픽셀의 색과 혼합. - 결과 색 = (1-weight)*기존 색 + weight * 이웃 픽셀 색 Morphological Anti Aliasing
  • 172. HDR과 AA의 악연을 해결해 주는 도우미? - 친절하게 AA를 날려주는 HDR. Morphological Anti Aliasing 계단현상은 명도/색도 대비가 강한 색의 경계에서 발생하는데 이러한 계단 완화시켜주기 위해 중간색을 넣는것이 MSAA 배율이 높을수록 중간색 단계도 HDR 색영역은 표현 색 영역으 초월해 버 모니터가 표현할 수 있는 최대 밝기가 1 50이나 100이나 둘 다 10으로 표현. HDR 색영역은 중간치에 맞추어 RGB8로 그 와중에 AA가 손실.
  • 173. HDR과 AA의 악연을 해결해 주는 도우미? - 친절하게 AA를 날려주는 HDR. Morphological Anti Aliasing 계단현상은 명도/색도 대비가 강한 색의 경계에서 발생하는데 이러한 계단 완화시켜주기 위해 중간색을 넣는것이 MSAA 배율이 높을수록 중간색 단계도 HDR 색영역은 표현 색 영역으 초월해 버 모니터가 표현할 수 있는 최대 밝기가 1 50이나 100이나 둘 다 10으로 표현. HDR 색영역은 중간치에 맞추어 RGB8로 그 와중에 AA가 손실.
  • 174. HDR과 AA의 악연을 해결해 주는 도우미? - MLAA는 HDR영역이 이미 RGB8로 변환된 최종 버퍼에 포스 적용되기 때문에 AA손실같은 현상이 발생하지 않는다. Morphological Anti Aliasing
  • 175. 친절한 MLAA - 메모리 절약 : 2xMSAA 적용시 G버퍼 용량이 14m에서 MLA - 대역폭 절약 : G버퍼의 용량이 줄면서 대역폭 확보. - 필레이트 절약 : 필레이트가 절감되면서 반투명 효과를 처리할 Morphological Anti Aliasing
  • 176. 친절한 MLAA - 메모리 절약 : 2xMSAA 적용시 G버퍼 용량이 14m에서 MLA - 대역폭 절약 : G버퍼의 용량이 줄면서 대역폭 확보. - 필레이트 절약 : 필레이트가 절감되면서 반투명 효과를 처리할 Morphological Anti Aliasing
  • 178. Morphological Anti Aliasing GOW PS3, 초고해상도로 렌더링 후
  • 181. Practical Morphological Anti Aliasing 우리 MLAA는.…. - SSAA나 MSAA에서는 할수 없었던 Deferred Shading을 할 Post processing AA인 MLAA… - 하지만 FULL CPU 구현이라 렌더링 시간이 많이 걸리고 CP 데이터 전송에 소비가 있다. MLAA와 먼가 다른 Practical MLAA…. - 기본적인 욕구는 바로 “GPU에서 MLAA 하고픈걸”에서 시작 - Post process 테크닉은 그대로 유지하고..
  • 182. Practical Morphological Anti Aliasing Practical MLAA는.…. - 2010년, SIGGRAPH 2010 “Practical Morphological Anti- 에서 소개됨. - GPU Pro2권에서 소개. - GPU 기반 실시간 처리가 가능한 MLAA - MLAA와 같은 패스를 가지지만 세부 처리 방식은 다르다.
  • 183. Edge Detection - L형의 패턴은 사용하지 않음. - Edge Texture에 Left(가로), Top(세로) Edge 정보를 R,G채 Practical Morphological Anti Aliasing Top Left Both
  • 184. Practical Morphological Anti Aliasing Weight Calculation - 기울어진 정도를 측정하기 위해서 구하고자 하는 Edge와 대 위치를 Iteration하면서 찾음. - 가로를 기준으로 세로를 찾고, 세로를 기준으로 가로를 찾는
  • 185. Practical Morphological Anti Aliasing Weight Calculation - Iteration하는 Sampling 횟수를 줄이기 위해서 Pixel의 사이 - 찾아야 하는 edge가 세로 edge이므로 Green(255)일 때 값이
  • 186. Practical Morphological Anti Aliasing Weight Calculation - 구해진 Crossing Edge와 Distance를 통해 분기문 없이 Wei
  • 187. Practical Morphological Anti Aliasing Color Blend - Left, Top, Right, Bottom의 Blending Weight는 각각 R,G,B - 4개의 이웃 블렌딩 : 이전 패스에서 계산된 블렌딩 웨이트가 각 픽셀에서 이웃들과
  • 188. Practical Morphological Anti Aliasing Color Blend - Result = 원본 * BlendingWeight
  • 190. 구현쉽고 속도빠른 AA 어디 없나? - MLAA를 nVidia 직원이 개량해서 공개. - MLAA와 마찬가지로 렌더링 파이프라인 이후에 이루 어지는 Post Effect. - nVidia사에서 친절하게 Shader코드를 올려주고 있다. - 적용 방식은 이곳에서 -> Game Development Forever(FXAA) - 에이지 오브 코난, 크라이시스2 등에서 사용. Fast Approximate Anti Aliasing
  • 191. No AA 4x MSAA FXAA
  • 192. Fast Approximate Anti Aliasing 드래곤 네스트, FXAA 적용 전
  • 193. Fast Approximate Anti Aliasing 드래곤 네스트, FXAA 적용 후
  • 196. Fast Approximate Anti Aliasing FXAA는 빨랐다…
  • 197. Fast Approximate Anti Aliasing FXAA는 빨랐다…
  • 199. 나름 최신 SMAA..? - 2012/05 에 EUROGRAPHICS 발표 예정 - 가슴에 따뜻한 감동과 좌절을 안겨준 동영상 (http://www.iryoku.com/smaa) - Pratical MLAA에서 착안 SubPixel Morphological Anti Aliasing 기존 MLAA
  • 200. Edge detection - Local contrast adaptation. - Sub-ixel problem - Sharp geometric features Pattern handling - Diagonal Patterns Sub-pixel rendering Temporal re-projection SubPixel Morphological Anti Aliasing
  • 201. SubPixel Morphological Anti Aliasing Edge detection - Local contrast adaptation. : 원래 이미지 자체가 약간 AA를 적용한 것 같은 이미 지에서 MLAA는 L패턴을 사용하여 contrast(대비)가 나는 곳은 모두 Crossing edge로 파악하여 올바른 결과가 나오지 않는다. MLAA SMAACrossing edges
  • 202. SubPixel Morphological Anti Aliasing Sub pixel Problem - 이미지 기반 처리로는 해결 할 수 없는 문제 - SSAA로 해결 가능.
  • 203. SubPixel Morphological Anti Aliasing Sub pixel Problem - Temporal AA = SMAA T2x (프레임 별로 샘플링 위치를 다르게 선택) - MSAA 2x = SMAA S2x (허용 가능한 성능차) - Temporal AA + MSAA 2x = SMAA 4x (SMAA의 최대 성능 옵션)
  • 204. SubPixel Morphological Anti Aliasing Sharp geometric features - 각진 오브젝트의 경우 우리가 원하는 결과는 각진 그대 로 깔끔하게. MLAA는 블러를 먹인것 처럼 만든다.
  • 205. Diagonal Edge Patterns - 기존의 filter based techniques : Orthogonal(직각) pattern에 대해서만 고려 대각선에 대해 좋지 않은 alised 결과 SubPixel Morphological Anti Aliasing
  • 206. Diagonal Edge Patterns - 기존의 filter based techniques : Orthogonal(직각) pattern에 대해서만 고려 대각선에 대해 좋지 않은 alised 결과 SubPixel Morphological Anti Aliasing
  • 207. Diagonal Edge Patterns SubPixel Morphological Anti Aliasing
  • 212. 신비로운 TXAA - GDC 2012 – NVIDIA에서 발표 - Directx 11.0부터 지원 - GTX 400/500/600 계열만 지원(ATI 안됨) - 고해상도의 Z 버퍼를 샘플링 함 - 과거 프레임에 대해서도 샘플 픽셀 단위의 엣지 정보를 샘플링 하므로 시간적인(Temporal) AA라고 부름. - 아직 정확한 알고리즘 내부는 비공개. Temporal Approximate Anti Aliasing
  • 213. 신비로운 TXAA - TXAA1과 TXAA2를 공개 - TXAA1 (MSAAx2 비용 = MSAAx8 효과) - TXAA2 (MSAAx4 비용 = MSAAx8 이상의 효과) Temporal Approximate Anti Aliasing
  • 214. 신비로운 TXAA - TXAA와 MSAA의 Quality, Performance 비교 Temporal Approximate Anti Aliasing
  • 218. DLAA, DEAA GBAA, SRAA NFAA, SPUAA HRAA, EQAA
  • 219. DLAA, DEAA GBAA, SRAA NFAA, SPUAA HRAA, EQAA
  • 221. 수많은 AA, 세밀한 디테일.. 과연 필요한가? - 게임은 계속 움직이면서 진행한다. - 게임 진행 시 정지화면으로 만들어 AA를 유심히 살펴 보는 유저가 있을까?? - Nvidia 카드에서는 속도도 빠르고 결과물도 무난한 FXAA만 써도 되지 않을까? 다른 카드에서는 글쎄….mm? I Think.
  • 223. 질문하고픈 내용은 고이 간직 간직 하셨다가

Editor's Notes

  1. 평균적으로 합리적인 샘플
  2. 평균적으로 합리적인 샘플
  3. 평균적으로 합리적인 샘플
  4. 평균적으로 합리적인 샘플
  5. 평균적으로 합리적인 샘플
  6. 평균적으로 합리적인 샘플
  7. 노이즈를 시도하다.
  8. http://www.youtube.com/watch?v=M2ZnEaY_pGE
  9. http://www.bodnara.co.kr/bbs/article.html?D=7&cate=3&d_category=2&num=54492&mn=7
  10. http://www.bodnara.co.kr/bbs/article.html?D=7&cate=3&d_category=2&num=54492&mn=7
  11. http://www.bodnara.co.kr/bbs/article.html?D=7&cate=3&d_category=2&num=54492&mn=7
  12. http://www.youtube.com/watch?v=M2ZnEaY_pGE
  13. http://www.youtube.com/watch?v=M2ZnEaY_pGE
  14. http://www.gpgstudy.com/m/forum/post/106570
  15. http://blog.daum.net/white_sm77/50
  16. http://www.gpgstudy.com/m/forum/post/106570
  17. http://blog.daum.net/white_sm77/50
  18. http://blog.daum.net/white_sm77/50
  19. http://blog.daum.net/white_sm77/50
  20. http://mirror.enha.kr/wiki/%EC%95%88%ED%8B%B0%EC%97%90%EC%9D%BC%EB%A6%AC%EC%96%B4%EC%8B%B1
  21. http://developer.nvidia.com/csaa-coverage-sampling-antialiasing
  22. http://developer.nvidia.com/csaa-coverage-sampling-antialiasing
  23. http://developer.nvidia.com/csaa-coverage-sampling-antialiasing
  24. http://developer.nvidia.com/csaa-coverage-sampling-antialiasing
  25. http://www.nvnews.net/previews/geforce3/antialiasing.shtml
  26. http://www.nvnews.net/previews/geforce3/quincunx.shtml
  27. http://www.nvnews.net/previews/geforce3/quincunx.shtml
  28. http://www.tomshardware.com/reviews/matrox-parhelia,465-7.html
  29. http://www.tomshardware.com/reviews/matrox-parhelia,465-7.html
  30. http://www.tomshardware.com/reviews/matrox-parhelia,465-7.html
  31. http://www.tomshardware.com/reviews/matrox-parhelia,465-7.html
  32. http://www.tomshardware.com/reviews/matrox-parhelia,465-7.html
  33. http://www.iryoku.com/smaa
  34. http://www.iryoku.com/smaa
  35. http://www.iryoku.com/smaa
  36. http://www.iryoku.com/smaa
  37. http://www.iryoku.com/smaa
  38. http://www.iryoku.com/smaa
  39. http://www.iryoku.com/smaa
  40. http://www.iryoku.com/smaa
  41. http://www.iryoku.com/smaa
  42. http://www.iryoku.com/smaa
  43. http://www.iryoku.com/smaa
  44. http://www.iryoku.com/smaa