이론

Shader

월러비 2024. 4. 22. 18:18

Shader 란?

  • 컴퓨터 그래픽스 분야에서 셰이더는 소프트웨어 명령의 집합으로 주로 그래픽 하드웨어의 렌더링 효과를 계산하는 데 쓰인다.
  • 셰이더는 그래픽 처리 장치(GPU)의 프로그래밍이 가능한 렌더링 파이프라인을 프로그래밍하는 데 쓰인다.

쉐이더

Shader 특징

  • 셰이더는 표면상으로 무한해 보이는 효과를 만들기 위해 영화 후처리, CGI, 비디오 게임에 널리 쓰인다.
  • 다양한 사용처
    • 영상의 색조, 채도, 밝기, 대비를 변경
    • 블러, 라이트 블룸, 입체 광원, 심도 효과를 위한 노멀 매핑, 보케, 셀 셰이딩, 포스터리제이션, 범프 매핑, 왜곡, 크로마 키 , 테두리 검출, 모션 감지, 사이키델리아 효과 제작 등

Shader 발전

  • "셰이더"의 현대적인 이용은 1988년 5월 픽사에 의해 출판된 렌더맨 인터페이스 사양 버전 3.0과 더불어 대중에 도입되었다.
    • 그래픽 처리 장치가 발전하면서, OpenGL, Direct3D와 같은 주요 그래픽 소프트웨어 라이브러리들이 셰이더를 지원하기 시작하였다.
  • 셰이더를 지원하는 최초의 GPU는 오직 픽셀 셰이딩만 지원했으며, 버텍스 셰이더는 개발자들이 셰이더의 힘을 깨닫자 빠르게 도입되었다.
  • 지오메트리 셰이더들은 최근 Direct3D 10과 OpenGL 3.2에 도입되었다. 최종적으로 그래픽 하드웨어는 통합 셰이더 모델을 향해 발전하였다.

Shader 종류

  • 정점 셰이더(Vertex Shaders) : 버텍스 셰이더는 주로 물체의 정점 정보에 수학적인 연산을 함으로써 물체에 특별한 효과를 주는 데 쓰인다.
    • 물체를 특별한 위치로 옮기거나, 텍스처를 바꾸거나, 색상을 바꾸는 등의 일
  • 지오메트리 셰이더(Geometry Shader) : 테셀레이션(타일링)이나 그림자 효과, 큐브 맵을 한번의 처리로 렌더링하는 데에 주로 쓰인다.
  • 픽셀 셰이더(Pixel Shader) : 렌더링 될 각각의 픽셀들의 색을 계산한다.

'이론' 카테고리의 다른 글

URP  (0) 2024.04.26
GPU  (0) 2024.04.26
CPU - PC, IR  (1) 2024.04.20
3 Way Handshake  (0) 2024.04.17
지연된 함수  (0) 2024.04.17