0
計算向上矢量計算後續機型的矢量
這裏是我的代碼:
Vector3f CameraUpVector() const
{
Vector3f cameraDirection = m_cameraTarget - m_cameraPosition;
cameraDirection = cameraDirection.Normalize();
////////////
Vector3f cameraUp = cameraDirection.Cross(Vector3f(1.0f, 0.0f, 0.0f));
return cameraUp;
}
//////////
Vector3f cameraUp = CameraUpVector();
///////////////
p.SetCamera(m_cameraPosition , m_cameraTarget , cameraUp);
這是計算好不好?
如果不是,我該如何改變它?
現在我的目標是(0,0,0 ) 和camrea pos是(0,500,0),向上矢量是(0,1,) ,我什麼都看不到。我會試試這個功能。 我的目標是從上向下模型。這是可能的這個func你糾正或我應該改變其他東西?非常感謝! – user3375217
這就是我提到的「特例」。我在答案中做了一些假設。什麼是你的世界中的一般「向上」向量?如果Y起來了,而你直接在目標之上,那麼沒有一個「正確的」答案。你可以選擇Y = 0平面上的任何矢量。 – GuyRT
我的向量是: Vector3f向上(0.0,1.0f,0.0f); 之後,我設置pos和目標,因爲我寫和 p.SetCamera(m_cameraPosition,m_cameraTarget,cameraUp); 仍然無法看到任何東西 – user3375217