/**
*
* 坐标轴的设置问题
* 代码中可以通过 eye, center, up三个vector决定视线坐标轴
* 通过建模软件导出的模型,坐标轴必须统一
*
* 如今,确定本引擎使用的坐标轴是 z向上,y向内,x向右
*
*z| / y
* | /
* |/______x
*
* 这样,从建模软件中导出来的文件,必须选定y-forward, z-up
*
* 坐标轴的设置问题
* 代码中可以通过 eye, center, up三个vector决定视线坐标轴
* 通过建模软件导出的模型,坐标轴必须统一
*
* 如今,确定本引擎使用的坐标轴是 z向上,y向内,x向右
*
*z| / y
* | /
* |/______x
*
* 这样,从建模软件中导出来的文件,必须选定y-forward, z-up
*/
vec3 forward = {0, 1, 0}, direction;
float r = rotz * DEG_TO_RAD;
float c = cosf(r);
float s = sinf(r);
direction.x = c * forward.x - s * forward.y;
direction.y = s * forward.x + c * forward.y;
eye.x += direction.x * -delta.x;
eye.y += direction.y * -delta.x;
最后两句话,其实做的事情就是,镜头位置按照指定的速度沿着当前所面对的方向移动(或前进,或后退,根据delta.x的值是否小于0而定)