NVIDIA의 Warnock: GPU 지오메트리 증폭으로 벡터 그래픽 처리
Warnock: Harnessing GPU Geometry Amplification for Vector Graphics
NVIDIA 연구진이 GPU의 지오메트리 증폭 기능(테셀레이션 셰이더, 메시 셰이더)을 활용한 새로운 2D 벡터 그래픽 라이브러리 Warnock을 발표했다. Warnock은 폴라 스트로킹(polar stroking) 이론을 확장해 패스(path)를 채우는 '폴라 필링(polar filling)'을 도입하고, 단일 GPU 버퍼로 채우기와 스트로킹을 모두 처리한다. 변환, 스트로크 폭, 캡, 조인 스타일 등 렌더링 상태 변경 시 버퍼를 다시 만들 필요 없이 셰이더 프로그램만 바꾸면 된다. 또한 픽셀 공간 오류 메트릭을 제공해 품질을 보장한다. DirectX 11급 GPU에서도 동작하지만, 메시 셰이더를 지원하는 최신 GPU에서 최상의 성능을 낸다.
기존의 어떤 GPU 그래픽 파이프라인 기반 패스 렌더링 방법도 (1) 채우기와 스트로킹 모두를 위한 단일 컴팩트 GPU 버퍼 표현, (2) GPU 내부에서 완전히 수행되는 지오메트리 증폭, 컬링, 픽셀 공간 오류 한계 계산, (3) 바인딩된 셰이더 프로그램, 텍스처, GPU 버퍼만 변경하여 다양한 표준 2D 벡터 그래픽 렌더링 모드를 지원하는 능력을 갖추지 못했다.