GLSL에서 사용하는 수식자, 식별자

반응형
저장소 수식자.
수식자       vs의 read여부      vs의 write여부  fs의 read여부    fs의 write여부
default          O                              O                         O                       O
const            O                             O                          O                       O
attribute         O                             X                          X                       X
uniform         O                             X                          O                       X
varying         X                             O                          O                       X

정밀도 식별자
식별자             내부형                   범위                                                           사용
highp             32비트 부동소수점  [-9.999999x10의96승, +9.999999x10의96승]        색상, 법선벡터
mediump       16비트 부동소수점   [-65520, +65520]                                           텍스처 좌표
lowp              10비트 부동소수점  [-2, +2]                                                       정점 위치, 행렬


그냥..머 대충 이렇ㄷㅏ...ㄷㄷ.

  • Uniform
  • Application에서 OpenGL ES API를 통해 Shader로 전달되는 읽기 전용 값을 저장하는 변수. Uniform 변수는 Vertex Shader와 Fragment Shader에서 공유되며 주로 Matrix, Lighting Parameter, Color 등의 값을 저장하는데 사용된다.

    uniform mat4 viewProjMatrix;
    uniform mat4 viewMatrix;
    uniform vec3 lightPosition;

    glGetUniformLocation
    glUniform-

    • Attribute
    Vertex Shader에서만 사용가능한 타입으로 Vertex 각각의 정보를 전달하기 위해 사용된다. 일반적으로 Position, Normal, Texture Coordinate, Color 등의 정보가 전달된다.

    attribute vec4 a_position;
    attribute vec2 a_texCoord0;

    glVertexAttribPointer
    glBindAttribLocation

    • Varying
    Vertex Shader의 Output이자 Fragment Shader의 Input으로 사용될 변수를 지정하는 데 사용된다. Application 쪽에선 건드릴 수 없는 변수이므로 관련 API 또한 존재하지 않는다.

    varying vec2 texCoord;
    varying vec4 color;

    'Study > ES' 카테고리의 다른 글

    Water 만들기.  (0) 2012.09.23
    inverse 함수  (0) 2012.09.19
    OPENGL ES 문법  (0) 2012.08.25
    TAGS.

    Comments