1

使用此指令 gluLookAt:

gluLookAt( p1, p2, p3, l1, l2, l3, u1, u2, u3 );

如何将相机向左移动一个单位,同时保持注视的方向相同?

显然我不能只做 p1-1,因为它在全局空间中移动 1,但我需要在相机空间中移动相机,只需使用上面指令的信息。

在搜索中发现我可以找到正确的向量并执行此操作:

right = u * dir (normalized)

p = p - right
l = l - right

但我不明白为什么或者即使这有效......

4

3 回答 3

1

你必须减少 p1l1。

p指定眼点的位置,l指定参考点的位置。

于 2013-06-10T17:37:14.107 回答
0

如果您正在修改相机的位置,您应该对目标的坐标进行相同的更改。

于 2013-06-27T08:38:49.770 回答
0

您的问题是否与围绕 y 轴顺时针旋转一个单位的问题相同?

于 2013-06-27T09:36:36.340 回答