Shader에서 사용되는 지정자에는 attriubute, uniform, varing 가 있다. 각각의 용도에 대해 알아보자. 다음의 글을 참고하였다(https://en.wikibooks.org/wiki/OpenGL_Programming/Modern_OpenGL_Tutorial_03) attribute 애플리케이션(C/C++ 코딩)에서 vertex shader로 vertex information을 넘기는 변수를 지정하는 지정자. 여기서 vertex information란?각 꼭지점마다 색이 다른 정육면체를 그리고자 한다면,정육면체의 6개의 점, 각각의 3차원 위치 좌표는 vertex information에 해당.또한 각 꼭지점에서의 색, RGB 값도 vertex information. 특징 !vertex..
OpenGL super bible 개정 6판 번역본을 공부하면서 기억해두고 싶은 것, 내가 과연 제대로 이해하고 있는게 맞나 싶은 것들을 정리하는 차원에서 이 글을 작성한다. 저작물의 특정 내용을 인용한다고 명시하더라도 법적 문제가 발생할 수 있다는 소리를 어디서 들었는데, 되도록이면 책의 표현을 나의 방식으로 해석하고, 표현하고자 할 것이다. Uniform 유니폼의 특징 1) 스토리지 형태는 아님2) 유니폼을 사용하면 애플리케이션이 직접 쉐이더 스테이지로 데이터를 전달할 수 있다.3) 유니폼은 말 그대로 일정하게 유지되는 것을 위한 것이다. 예를 들면 정지(!)된 카메라로 물체를 바라보는 것을 표현하는 변환 행렬을 유니폼을 사용하여 나타낼 수 있다.(만약 정지된 카메라가 아니라 움직이면서 어느 물체를 ..
OpenGL super bible 개정 6판 번역본을 공부하면서 기억해두고 싶은 것, 내가 과연 제대로 이해하고 있는게 맞나 싶은 것들을 정리하는 차원에서 이 글을 작성한다.저작물의 특정 내용을 인용한다고 명시하더라도 법적 문제가 발생할 수 있다는 소리를 어디서 들었는데, 되도록이면 책의 표현을 나의 방식으로 해석하고, 표현하고자 할 것이다. 법적 문제가 없길.. 1. 시작 OpenGL은 데이터를 저장하고 접근하기 위해 두 가지 형태의 데이터 스토리지를 제공한다고 한다. 1. 버퍼2. 텍스처 이번 글에서는 버퍼를 알아보도록 하자. 버퍼는 타입이 정해져 있지 않은 데이터의 연속 공간이다.삼각형의 각 꼭지점 좌표값들을 담거나, 특정 위치의 색 정보, RGB값들을 담을 공간이라고 할 수 있다. 우선 용어 정리..
Model Coordinate System(MCS)에 중심이 (0,0,0) 반지름이 1인 sphere가 있다고 하자.이 sphere를 World Coordinate System(WCS)의 원점에 위치시키기 위해서 다음과 같은 코드를 짤 수 있다. 123glMatrixMode(GL_MODELVIEW);glLoadIdentity(); glutWireSphere(1.0 , slices, stacks);cs 다음으로 이 sphere를 보는 관찰자, 혹은 카메라가 나올 차례이다. 카메라가 중심이 되는 시스템을 View Coordinate System(VCS)라고 한다면, VCS상에 WCS를 어떻게 배치하느냐에 따라서 카메라에게 WCS상의 물체가 다르게 보일 것이다. gluLookAt 함수는 VCS-WCS의 rel..