3D场景中相机的控制根据具体的需求不同,所需要保存的控制参数(成员变量)也不同,比较简单的一种相机控制是让相机在一个球面上运动,比如 可以控制相机绕X轴Y轴旋转,还可以拉近摄像机(改变球半径),这个模型正好对应球面坐标,于是我们就可以按照控制球面坐标的参数来控制摄像机。
球面坐标涉及到一下几个参数:
theta : 和xoz平面的夹角(此为Y轴向上)
alpha : 在xoz平面上的投影和z轴的夹角
R : 球半径
当然,还有球心坐标
因此,相机的参数也可以由这几个参数来控制,
绕y轴转,就是改变theta的角度
绕x轴转,就是改变alpha的角度
拉近相机,就是改变R的值
还有球心坐标当然就是相机所看向的点(target)
这些参数一旦定下来,想要控制一个相机在球面上移动,就很容易了