作者littleshan (我要加入剑道社!)
看板GameDesign
标题Re: [问题] 如何实作如 Maya 那样的 Navigation
时间Sun Jan 28 17:53:30 2007
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.29.131
1F:推 eliang:抱歉,我忘了说,我的坐标系的Y轴是上下方向 01/28 17:02
2F:→ eliang:所以我希望滑鼠横向移动时,摄影机是绕着世界Y轴旋转 01/28 17:03
OK, 你需要的只是极坐标转换而己。
设物体位於原点、摄影机距离物体 r,定义一个极坐标如图:
http://cmlab.csie.org/~littleshan/tmp/polar.png
让滑鼠横向移动时改变 phi、纵向移动时改变 theta,
这麽一来摄影机就会绕着 Y 轴旋转。
依照这个极作标可以得出摄影机的位置 P:
Px = sin(theta) * sin(phi) * r
Py = cos(theta) * r
Pz = sin(theta) * cos(phi) * r
然後摄影机永远面向物体 (位於原点),有了这些资讯以後,
套上 look-at transform 就可以得到摄影机的 transform matrix。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.29.131
3F:推 eliang:感谢! 我写出来了 01/29 14:19