픽셀 셰이더

픽셀 셰이더(, 간단히 PS)는 그래픽 처리 장치가 수행하는 셰이더 프로그램 중 하나이다.

 기능 
픽셀 셰이더는 렌더링 될 각각의 픽셀들의 색을 계산한다. 때문에 픽셀 셰이더는 최종적으로 픽셀이 어떻게 보일지를 결정한다. 픽셀 셰이더는 간단하게 언제나 같은 색을 출력하는 간단한 일에서부터, 텍스처로부터 색을 읽어오거나, 빛을 적용하는 것, 범프 매핑, 그림자, 반사광, 투명처리 등 복잡한 현상 등을 수행할 수 있다.

픽셀 셰이더는 각각의 픽셀들이 렌더링될 때 수행되기 때문에, 다른 픽셀들과 아무런 연관이 없다. 픽셀 셰이더는 오직 한 픽셀만을 연산하기 때문에, 주변의 픽셀이나, 그리는 도형에 대한 정보를 알 수 없다. 이 때문에 픽셀 셰이더는 스스로 매우 복잡한 효과를 만들어 낼 수는 없다.

픽셀 셰이더는 픽셀의 색 말고도 깊이(Z버퍼에 쓰인다)나 또 다른 색(다른 렌더 목표물에 쓰인다)을 출력할 수 있다.

 프로그래밍 
픽셀 셰이더 프로그램은 주로 어셈블리어, Cg, GLSL, HLSL 등으로 짜인다.

 호환성 
 하드웨어 
아래의 표는 어떤 그래픽 카드나 칩이 어떤 DirectX 버전, 픽셀 셰이더 버전과 호환되는지 요약한 것이다. 그래픽 칩은 대개 하위호환성이 있다.(예를 들어 3.0 버전이 지원되면 2.0 버전, 1.1 버전 등이 모두 지원된다.)

 PS 버전 DirectX 버전 3D랩스 ATI 인텔 매트록스 엔비디아 S3 그래픽스 SiS XGI 1.0/1.1 8.0 - - - - 지포스 3 시리즈 - 샤브레 시리즈 - 1.2 8.0a 와일드캣 VP - - - - - - - 1.3 8.0a - - - 파헬리아 시리즈 지포스 4 Ti/Go 시리즈 - 미라지 2 - 1.4 8.1 - 레이디언 R200 (8500-9250) - - - - - 볼라리 V3 시리즈 (V3XT는 제외) 2.0 9.0 와일드캣 리얼리즘 레이디언 R300 (9500-9800, X300-X600) 인텔 GMA 900, 950, 3000, 3100 - - 델타크롬, 감마크롬, 크롬 S2x 시리즈 Mirage 3, Mirage 3+ 볼라리 V3XT, 볼라리 V5 시리즈, 볼라리 V8 시리즈, 볼라리 8300, 볼라리 XP10 2.0a 9.0a - - - - - - - - 2.0b 9.0b - 레이디언 R420 (X700-X850) - - 지포스 FX 시리즈 - - - 3.0 9.0c - 레이디언 R520 (X1300-X1950) 인텔 GMA X3000 - 지포스 6 시리즈, 지포스 7 시리즈 - - - 4.0 10 - 레이디언 R600 (HD 2400-HD 2900) 인텔 GMA X3100, X3500 - 지포스 8 시리즈, 지포스 9 시리즈, 지포스 2xx 시리즈 - 미라지 4 - 4.1 10.1 - 레이디언 R600 (HD 3xxx), 레이디언 R700 (HD 4xxx) - - - - - -
(기울임체는 아직 상품 사용이 불가능하다는 것을 뜻한다.)

 같이 보기 
 Direct3D
 지오메트리 셰이더
 그래픽 파이프라인
 OpenGL
 버텍스 셰이더

 참조 
 OpenGL Shading Language  – OpenGL 셰이더에 관한 문서
 GLSL 강좌 (영어)
 GSLS 예제 
 픽셀 셰이더의 기본 Gamedev.net

분류:3차원 컴퓨터 그래픽스