공부일지/OpenGL

OpenGL - 3 (Shaders)

EUJU 2020. 3. 7. 22:59

 shader = GPU에서 동작하는 작은 프로그램

 

#GLSL

- 그래픽과 함께 쓰일 수 있도록 만들어짐

- vector/matrix 조작에 유용

 

버전 선언, 입출력 변수, main함수

 

각각의 입력 변수는 vertex attribute라고 함. (vertex attribute를 선언할 수 있는 최대 개수는 정해져 있음)

 

#Types

사용할 변수의 유형을 지정하는 데이터 타입 존재

(기본적인 타입 + 두 가지의 컨테이너 타입(vector, matrices))

#Vectors(n은 갯수를 의미)

vecn: n개의 float 타입 요소를 가지는  vector - 대부분 이걸 사용

bvecn: n개의 boolean타입 요소를 가지는 vector

ivecn: n개의 integer타입 요소를 가지는 vector

uvecn: n개의 unsigned integer요소를 가지는 vector

dvecn: n개의 double 타입 요소를 가지는 vector

 

GLSL 컬러 = rgba 

GLSL 텍스처 좌표 = stpq

 

- swizzling : 벡터 데이터 타입