|
发表于 2004-7-7 02:43:00
|
显示全部楼层
Re: Direct3D摄像机的问题…
如果camera的运动轨迹是一个关于时间(当然也可以是其它因素)的函数f(t),那么在任意一给定时间t,可以由轨迹函数得出camera当前所在的位置vEye;如果target的运动轨迹也是一个关于时间的函数g(t),那么同样在上述同一时刻t,可以由target的轨迹函数得出target当前位置vAt;当前世界的vUp向量为(0,1,0);于是就可以得到在此刻的view transformation matrix:D3DXMatrixLookAtLH(&matView, &vEye, &vAt, &vUp); 之后就是pd3dDevice->SetTranform(D3DTS_VIEW, &matView);最后渲染出来的图像就是你的camera始终对着target了。
note: the above quick solution has not been tested whatsoever, adopt it at your own risk. |
|