Uniform 은 OpenGL 에서
데이터를 CPU 에서 GPU 로 옮기는데 도와주는 녀석이다.
그렇다면 Vertex Attribute 랑 다를게 뭔가?
Attribute 는 Vertex 를 선언하고 Vertex 마다 이후에 선언을해서 옮겨준다.
glVertexAttribPointer(0,2,GL_FLOAT,GL_FALSE, sizeof(float) *2, 0); < 이렇게
하지만 Uniform 은 직접 Drawing 을 Call 하기 전에 한번 부른다.
그 말인 즉 우리는 렌더링을 하는 while 룹에서 데이터를 계속 변경할 수 있다는 것이다.
거두절미하고 Uniform 을 어떻게 사용하는지 확인해 보자.

일단 shader 파일에서 u_Color 를 선언해준다.

이후 유니폼을 설정해주고 while 룹에서 Draw 전마다 r 의 색상을 바꿔주도록 코드를 변경해보았다.
결과는?
녹음 2025-01-11 131255.mp4
1.08MB
잘 바뀐다 천천히... 영상 확인
'개인공부 > C++ Graphics' 카테고리의 다른 글
| OpenGL (지금까지 내용) (0) | 2025.01.13 |
|---|---|
| OpenGL #8 Vertex Arrays Object (0) | 2025.01.12 |
| OpenGL #6 Error Handling (1) | 2025.01.11 |
| OpenGL #5 Index Buffer (0) | 2025.01.11 |
| OpenGL #4 Shader (0) | 2025.01.11 |