【发布时间】:2011-05-13 05:34:42
【问题描述】:
我正在做一个小项目,我将数据集绘制到一个世界上。我已经完成了绘图。现在我想实现相机移动。
我有一些代码,如果用户按住 c 并拖动鼠标,相机位置就会改变。问题是,我不确定如何根据鼠标移动计算相机移动。
这是默认位置的摄像头代码:camera(width/2.0, height/2.0, (height/2.0) / tan(PI*60.0 / 360.0), width/2.0, height/2.0, 0, 0, 1, 0);
如何更改与鼠标拖动相关的相机位置? (我尝试过使用 mouseX 和 mouseY 来偏移相机的眼睛位置,但效果不佳。)
【问题讨论】:
-
当你说那是“相机代码”时,你的意思是那是模型视图矩阵吗?或者您是否使用“相机”类/函数来进行一些幕后计算?移动场景的最简单方法是完全忽略相机,而是移动场景本身。只需在您正在渲染的所有 X、Y、Z 点上添加一个“相机偏移”,这与您希望“相机”移动的位置相反。
-
我的意思是我想根据鼠标拖动改变处理camera()方法中的变量。
标签: opengl camera processing