OpenGL에서 우리는 gluLookAt를 사용하여 카메라를 세계에 상대적으로 배치하고 그릴 이미지를 정의한다는 것을 알고 있습니다.OpenGL gluLookAt 왜 앵글 대신 위쪽 벡터
"눈"은 카메라의 위치를 지정하고 "가운데"는 카메라가 가리키는 점을 지정합니다. 이 두 가지를 알게되면 눈에서 중심으로 직선을 그릴 수 있습니다. 카메라 평면은이 선에 수직 일 것입니다.
우리는이 평면을 알고 있기 때문에 위쪽 벡터는 카메라의 상단을 지정합니다. 기본적으로이 평면에서 어느 방향이 위쪽인지입니다. 따라서 위쪽 벡터는 항상 가운데와 눈을 합친 벡터와 직각을 이룹니다.
제 질문은 "중심"과 "눈"을 연결하는 선의 회전 각도를 알고 싶을 때 전체 벡터가 필요한 이유입니다. 이것에 대한 이유는 내가 모르는 계산상의 이점인가? 그리고 누군가가 잘못된 방향을 지정하면 시야 방향과 직각이되지 않습니다.
을 피할 수있는 더 나은 효율성을 원하는 경우에
나는 당신이이 글을 읽을 제안 http://gamedev.stackexchange.com/questions/65783/what-is-world-space-and-eye-space- 게임 개발/65785 # 65785 – concept3d
각도와 관련하여? 'eye' 벡터가 없다면 실제로'gluLookAt (...)'(Z 축)를 호출 할 때 실제로 3D 벡터 공간의 한 축을 가지게되고, ***이 직접 전달되지는 않습니다. 오히려 원점과 중심 위치에서 계산됩니다. 다시 말해서,이 각도는 정확히 상대적인 것으로 생각됩니까? Z 축에 상대적이라면, 여러분의 각도를 만족시킬 수있는 무한한 수의 가능한'up' 벡터가 있으며 이는 단순히 유용하지 않습니다. –