2010-11-05 67 views
0

这是基本问题。即时通讯设置卡拉不怎么设置它,但我应该设置它的值。是否有任何应用程序可以像设置它一样帮助设置camra,它可以为您提供值,还可以解释值的主要含义以及如何缩放。directx 9设置camra

D3DXMatrixLookAtLH(&matView, 
    &D3DXVECTOR3 (value, value, value), // the camera position 
    &D3DXVECTOR3 (value, value, value),  // the look-at position 
    &D3DXVECTOR3 (value, value, value)); 

回答

1

D3DXMatrixLookAtLH功能产生的相机矩阵,即获取存储在您的matView。 之后,功能得到三个矢量:

  • 位置
  • 查找在

这三个矢量代表:

  • 相机的位置 - 你的相机在哪里。例如它可能是(0,0,0)。 (这些是你在世界上的x,y和z坐标。)
  • 观察点 - 这是你的相机看的地方。它由你的位置+你的(通常)标准化视图方向组成。所以当你站在(0,0,0)处并且想要看低Z轴时,你的观察点是(0,0,-1)。如果你站在(1,2,3)并向下看负x轴,它是(0,2,3)
  • 向上矢量指向 - 通常这是(0,1,0)。

如果您现在四处移动而不环顾四周,则位置和查看矢量会发生变化以反映您的新位置。 如果你站立不安,环顾四周,只会看着看点发生变化。 向上矢量只在滚动相机时发生变化。

这里有很多漂亮的相机教程,向您展示如何在使用相机环视四周时更改这三个矢量 - 例如this one