목록Programming/OpenGL (3)
지우너
본 글은 한정현 교수님의 "컴퓨터 그래픽스" 강의를 정리한 글입니다(강의에 사용된 ppt 링크). 4장에서는 세 가지 중요한 변환을 살펴본다. ① Scaling (축소/확대) ② Rotation (회전) ③ Translation (이동) Scaling (축소/확대) 2 차원 축소/확대 경우 축소/확대 인자(x 방향, y 방향) 사용 어떤 벡터 x좌표가 주어졌을때 그 앞에 Sx 를 곱하고, y 좌표가 주어졌을 때 Sy 를 곱하면 이것이 축소/확대된 벡터를 나타냄. 그래픽스에서는 이러한 변환을 모두 행렬의 곱셈으로 표현한다. 따라서 축소/확대 되어야 할 벡터를 그림 16의 오른쪽과 같이 column vector로 표현하고 축소 확대될 벡터를 주 대각선에 놓아서 2x2 행렬을 만들어 곱한다. 예를 들어 어떤 ..
본 글은 한정현 교수님의 "컴퓨터 그래픽스" 강의를 정리한 글입니다(강의에 사용된 ppt 링크). 모델링: 그래픽스에서 렌더링 할 어떤 물체를 만들어내는 것 위 그림의 구를 어떻게 정의할 것인지 생각해보자. 가장 간단한 방법은 구의 중점과 반지름을 갖고 구의 방정식으로 정의하는 것. 이런 것을 음함수(implicit function)라고 이야기한다. 문제는 gpu가 음함수를 처리하기에 적합하게 설계되어 있지 않다. 따라서 음함수 표현대신 부드러운 표면의 점을 샘플링(sample)한다. 그러면 일정한 갯수의 꼭짓점, 정점이 나온다. 이런 정점들을 보이는 것처럼 다각형으로 이어둔 것이 폴리곤 메쉬이다. GPU가 폴리곤 처리에 최적화되어 있기 때문에 폴리곤 메쉬 표현이 실시간 그래픽스에서 선호된다. 매끄러운 ..
본 글은 한정현 교수님의 "컴퓨터 그래픽스" 강의를 정리한 글입니다(강의에 사용된 ppt 링크). 3차원 컴퓨터 그래픽스의 정의 3차원으로 표현된 물체를 입력으로 받아서 2차원 영상을 출력하는 작업. 그런 2차원 영상을 프레임(frame) 이라고도 이야기 함 영화고 게임에서처럼 연속적으로 프레임을 보여 주면 물체의 움직임을 표현 가능 프레임을 얼마나 빨리 만들어 내는가에 따라서 실시간 그래픽스 / 비실시간 그래픽스로 구분 실시간 그래픽스의 대표는 게임, 가상현실, 증강현실 등 보통 초당 30개 이상의 프레임을 만들어 내야 되는데, 그런 것들을 frames per second(=fps) 라고 이야기. 비실시간 그래픽스는 영화에서 쓰이는 특수효과 영화의 특수 효과의 대개 목표는 실사 영상 과 구분이 되지 않..