我有2个用DirectX 9渲染的网格和一个看着0,0,0的摄像头。一个网格位于0,0,0,另一个位于5,0,0。如何围绕0,0,0旋转相机以始终查看两个网格,但是从新位置?我想按下键盘上的箭头键,然后可以旋转相机
答案 0 :(得分:2)
从外观功能构建相机矩阵。有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