求救:OpenGL中,如何顶点旋转摄像机?在OpenGL中,填加了一个人物模型,我将人物模型的位置与摄像机目标点的位置绑定,现在想让摄像机以人物视角为主,即以人物为中心进行旋转,旋转后的摄像机
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/30 00:09:24
![求救:OpenGL中,如何顶点旋转摄像机?在OpenGL中,填加了一个人物模型,我将人物模型的位置与摄像机目标点的位置绑定,现在想让摄像机以人物视角为主,即以人物为中心进行旋转,旋转后的摄像机](/uploads/image/z/11411871-15-1.jpg?t=%E6%B1%82%E6%95%91%EF%BC%9AOpenGL%E4%B8%AD%2C%E5%A6%82%E4%BD%95%E9%A1%B6%E7%82%B9%E6%97%8B%E8%BD%AC%E6%91%84%E5%83%8F%E6%9C%BA%3F%E5%9C%A8OpenGL%E4%B8%AD%2C%E5%A1%AB%E5%8A%A0%E4%BA%86%E4%B8%80%E4%B8%AA%E4%BA%BA%E7%89%A9%E6%A8%A1%E5%9E%8B%2C%E6%88%91%E5%B0%86%E4%BA%BA%E7%89%A9%E6%A8%A1%E5%9E%8B%E7%9A%84%E4%BD%8D%E7%BD%AE%E4%B8%8E%E6%91%84%E5%83%8F%E6%9C%BA%E7%9B%AE%E6%A0%87%E7%82%B9%E7%9A%84%E4%BD%8D%E7%BD%AE%E7%BB%91%E5%AE%9A%2C%E7%8E%B0%E5%9C%A8%E6%83%B3%E8%AE%A9%E6%91%84%E5%83%8F%E6%9C%BA%E4%BB%A5%E4%BA%BA%E7%89%A9%E8%A7%86%E8%A7%92%E4%B8%BA%E4%B8%BB%2C%E5%8D%B3%E4%BB%A5%E4%BA%BA%E7%89%A9%E4%B8%BA%E4%B8%AD%E5%BF%83%E8%BF%9B%E8%A1%8C%E6%97%8B%E8%BD%AC%2C%E6%97%8B%E8%BD%AC%E5%90%8E%E7%9A%84%E6%91%84%E5%83%8F%E6%9C%BA)
求救:OpenGL中,如何顶点旋转摄像机?在OpenGL中,填加了一个人物模型,我将人物模型的位置与摄像机目标点的位置绑定,现在想让摄像机以人物视角为主,即以人物为中心进行旋转,旋转后的摄像机
求救:OpenGL中,如何顶点旋转摄像机?
在OpenGL中,填加了一个人物模型,我将人物模型的位置与摄像机目标点的位置绑定,现在想让摄像机以人物视角为主,即以人物为中心进行旋转,旋转后的摄像机位置该怎么计算啊?最好能给出这段的代码,旋转的角度已经知道是弧度的angle,关键是后面的运算,
求救:OpenGL中,如何顶点旋转摄像机?在OpenGL中,填加了一个人物模型,我将人物模型的位置与摄像机目标点的位置绑定,现在想让摄像机以人物视角为主,即以人物为中心进行旋转,旋转后的摄像机
人物模型和像机位置确定,要定义一个半径radius浮点数变量,表示两点在平面xz即底面的投影长度是不变的.这个变量不妨记作r.
在程序的更新函数,比如update()
--------------------
1.在里面首先要读取键盘或是鼠标的操作,
cameraH+=(人物所站地形高低增量);//这里保证像机随人物高低变化,y轴方向
cameraR+=(输入设备引起视角增量)
再作下判断,如果cameraR大于等于2*PI时,重置为0
这里,也会更新模型的位置
2.接着,要改变视图模型矩阵了.
float x=r*cos(angle )//
float z=r*sin(angle);//
cameraH //
像机位置即为(x,cameraH,z)
~~~~~~~~~
理解
根据模型位置和像机位置,lookat向量就确认下来了.
像机up(0,1,0)这个是固定的(初学者不理解这点,认为lookat向量不一定和up向量垂直啊?还记得线代学习时,接触的斯密斯正交法不,api函数会作内部实现的)
~~~~~~~~~~
然后,
glMatrixMode(GL_MODEVIEW)
glLoadIdentity();
gluLookAt(像机位置,视线上任意一点,up向量)
视线上任意一点,写模型位置中心位置即可
第三人称摄像机是么 摄像机一直在人物脑后 不管怎么转都看不见人物的脸是的 ,怎么解决啊用四元数算摄像机位置关键就是不会算。。网上有现成的算法资料啊 自己查一查啊 你可以参考一下 http://www.pudn.com/downloads63/sourcecode/windows/opengl/detail219689.html 这里用到了四元数...
全部展开
第三人称摄像机是么 摄像机一直在人物脑后 不管怎么转都看不见人物的脸
收起