통합 셰이더 모델

위키백과, 우리 모두의 백과사전.

통합 셰이더 모델은 버텍스와 조각(fragment) 처리를 위해 동일한 하드웨어 자원을 사용한다.

통합 셰이더 모델(Unified shader model, Direct3D 10에서는 "셰이더 모델 4.0")은 3차원 컴퓨터 그래픽스 분야에서 모든 셰이더렌더링 파이프라인(지오메트리, 정점, 픽셀 등)은 동일한 기능을 갖는다. 이것들은 모두 텍스처와 버퍼를 읽을 수 있으며 거의 동일한 명령어 집합을 사용한다.

역사[편집]

이전 GPU에는 일반적으로 두 가지 유형의 셰이더 하드웨어가 포함되어 있었는데, 버텍스 셰이더는 단순한 픽셀 셰이더보다 훨씬 더 많은 명령을 가지고 있었다. 이는 전체적으로 GPU 구현 비용을 낮추고 단일 장치에서 총 더 많은 셰이더를 허용했다. 이로 인해 시스템의 유연성이 떨어지게 되었고, 워크로드가 다른 셰이더보다 한 셰이더를 더 많이 사용한 경우 한 셰이더 세트를 유휴 상태로 두는 경우도 있었다. 제작의 개선이 계속됨에 따라 이러한 구분은 덜 유용해졌다. ATI 테크놀로지스엑스박스 360용으로 개발한 하드웨어에 통합 아키텍처를 도입했다. 엔비디아는 테슬라 디자인을 빠르게 따라갔다. AMD는 2년 후 테라스케일 (마이크로아키텍처) 라인에 카드 형태의 통합 셰이더를 도입했다. 그 개념은 그 이후로 보편적이었다.

초기 셰이더 추상화(예: 셰이더 모델 1.x)는 정점 셰이더와 픽셀 셰이더에 대해 매우 다른 명령 세트를 사용했으며 정점 셰이더는 훨씬 더 유연한 명령 세트를 가졌다. 최신 셰이더 모델(예: 셰이더 모델 2.x 및 3.0)에서는 차이가 줄어들어 통합 셰이더 모델에 접근했다. 통합 모델에서도 명령어 세트는 서로 다른 셰이더 유형 간에 완전히 동일하지 않을 수 있다. 셰이더 단계마다 몇 가지 차이점이 있을 수 있다. 조각/픽셀 셰이더는 암시적 텍스처 좌표 그라데이션을 계산할 수 있는 반면, 지오메트리 셰이더는 렌더링 프리미티브를 내보낼 수 있다.