간단하게 렌더링 프로그램을 만들고 있습니다.
지정된 object (구, 원기둥, 원뿔, 평면)들의 중심좌표, 지름, camera 좌표, 바라보는 방향, 빛의 방향 등의 간단한 정보를 받아와서
사진처럼 하나의 렌더링 이미지를 구현하는 프로그램을 작성하고 있습니다.
프로그램을 만들면서 opengl 로 컴퓨터 그래픽스를 공부하고 있는데 제가 만드는 프로그램에 적용하려고 하니 다른 부분이 많아 질문 올립니다. opengl 은 함수로 알아서 계산을 해주더군요.. 저는 다 구현해야하고..
opengl 은 object들을 삼각형 폴리건매쉬로 나누어서 안에 정점들을 포함하고 있는데 저는 실시간으로 렌더링을 하지 않을꺼라 점하나하나 pixel 의 색 값을 지정해주는 방식으로 하려고 합니다.
object 들의 정점들을 object space -> world space -> camera space 로 이동시키는 행렬들을 구해서 변환하는 방식으로 구현을 하고 있습니다.
가장 궁금한 것은
이떄 camera space 에서 실제 화면에서 보이는 공간으로 변환을할떄 view frustum 을 적용을 시켜야하는데 이 object 들에 포함된 점들이 view frustm 안에 속하는지 확인하는 방법을 잘 모르겠습니다.
제가 생각한 방법은 object 들의 점들을 하나하나 view frustum 에 들어가는지 비교를 해야할 것같은데 각 view frustum 의 평면들 안에 속한다면 view frusutm 에 속하는 것으로 판단을 하는 것이 맞을까요?