XNA-攝影機(觀測點)

XNA-攝影機(觀測點)

    知道如何將模型放置3D位置中之後,接下來就必須設置一個攝影機或是觀測點,用來設定我們在3D世界中的哪個位置來看這個世界。

    XNA為我們提供了一個方便使用的觀測點函數,在Matrix底下的一個方法CreateLookAt,底下就來了解一下它的用法。

    這裡需要知道這個函數中三個參數的意義:

Matrix.CreateLookAt(cameraPosition, cameraTarget, cameraUpVector)
  • cameraPosition => 是指攝影機的位置,也就是觀測者眼睛的位置
  • cameraTarget => 是指攝影機所看到的視覺中心點要觀看的方向
  • cameraUpVetor => 是指攝影機的方向,一般他都是Up向量

舉例:

Matrix view = Matrix.CreateLookAt(new Vector3(20,50,0), Vector3.Zero, Vector3.Up);

    這段程式碼的意思就是攝影機架在第一個參數所輸入的位於原點X軸方向20的單位,Y軸也就是向上50個單元的地方,第二個參數向原點看,第三個參數則是攝影機的方向,通常都是Y軸向上的方向,因為跟XNA的3D座標系有關。