第一人称3D游戏的数学公式
我想做一个第一人称 3D 游戏,但我无法正确设置相机公式。
所以我有一个旋转:0 到 359。接下来的 x,y 坐标,z 保持不变。
相机旋转:0-前、90-左、180-后、270-右,但我可以调整它
相机的公式是什么?
平台:Panda3d、python、opengl
谢谢
I want to make a first person 3d game but I can't set the camera formula right.
So I have a rotation: 0 to 359. Next the x,y coordinates, z remains the same.
Camera rotation : 0 - front, 90 - left, 180 - back, 270 - right but I can adapt it
What is the formula for the camera ?
Platform: Panda3d, python, opengl
Thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好的,看来您需要《毁灭战士》风格的摄像机移动,即没有上下转动。考虑一下:
现在,让我们尝试构建方程:
1.首先,将世界坐标平移到相机的位置:
2.现在,将平移后的坐标旋转与相机旋转相反的角度:
您可以将这两个步骤结合起来,并将其转换为矩阵形式。
OK, it looks like you need a Doom style camera movement, i.e., no up-down turns. Consider this:
Now, let's try to construct the equations:
1.First, translate the world coordinates to the camera's position:
2.Now, rotate the translated coordinates by an angle opposite to the camera's rotation:
You can combine the two steps and transform it to a matrix form.