2010-12-28 1 views
2

임의의 카메라 위치 및 원근 투영을 사용하는 광선 추적기를 구현하려고합니다. 나는 카메라 위치, 위치의 시야, 시야각을 가지고 있지만 각 광선이 픽셀에 해당하도록 광선을 촬영해야하는 방향을 파악할 수는 없습니다. 광선이 있어야하는 이미지 평면의 좌표 또는 방향 벡터를 찾는 방법을 찾을 수 있다면 거기에서 내리막 길에있을 것입니다. 어떤 도움을 주셔서 감사합니다.OpenGL 이미지 평면 좌표 찾기

답변

2

다음과 같이하면됩니다. 눈앞에 직사각형 격자가 있다고 상상해보십시오. 격자는 하나의 점 (그리드의 (0; 0) 점)과 2 개의 (3 차원의) 기본 벡터 (x, y)로 정의됩니다. 이것으로 광선을 (원점 + X 좌표 + x + Y 좌표 + y) - 눈으로 계산할 수 있습니다. 당신의 시점과 원점 사이의 거리를 조정함으로써; 또는 기본 벡터의 길이를 조정하여 원하는보기 각도를 얻을 수 있습니다.

+0

+1 스트레이트 포인트에! – Rekin

+0

정말 고맙게 대답 해 주셔서 감사합니다. 하지만 구현하기 쉬운 솔루션을 찾은 것 같습니다. http://www.opengl.org/resources/faq/technical/selection.htm (pick ray) 물론 마우스 대신 픽셀 좌표를 사용합니다. 좌표. – kusmukator