我有2个网眼,使用DirectX 9和一个相机,该摄像机的观察为0,0,0。一个网格位于0,0,0,另一个网格为5,0,0。如何将相机旋转在0,0,0左右,以始终从新位置看两个网眼?我想按键盘上的箭头键,并能够旋转相机

有帮助吗?

解决方案

通过lookat函数构建摄像机矩阵。有D3DX功能可以构建适当的矩阵。

您要做的是设置相机,以便您可以在对象周围圆圈中放置它。说一个半径10的圆,集中在2.5,0,0左右。我不确定您要旋转哪个轴,但我认为Z(和X):

// pseudo
cameraposition= vec3(sin(x)*10.0 + 2.5,0,cos(x)*10)
cameralookat= vec3(2.5,0,0)

有关更多信息,请参阅 http://msdn.microsoft.com/en-us/library/bb397804.aspx

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top