希望简单的答案,但我无法得到它。
我有一个我写的 3D 渲染引擎。
我有相机位置、观察位置和向上向量。
我希望能够向左、向右、向上和向下“倾斜”相机。就像固定三脚架上的相机一样,您可以抓住手柄并将其向上、向下、向左、向右等倾斜。
数学难倒我。我已经能够进行向前/向后推车和向上/向下/向左/向右平移,但无法计算出矢量数学以使其倾斜。
对于左右倾斜,我想围绕相机位置旋转观察位置,但我需要考虑向上矢量,否则旋转不知道要转哪个轴。
我需要的数学/算法是......
相机=(cx,cy,cz)看=(lx,ly,lz)向上=(ux,uy,uz)
RotatePointAroundVector(lx,ly,lz,ux,uy,uz,amount)
任何人都可以协助所涉及的数学吗?
非常感谢。