背景在第一课中我们就已经说过 OpenGL 并不会直接处理 Windows 相关操作,这一部分功能都是由其他 API (如 GLX、WGL 等) 负责。为了简单起见我们使用了 GLUT 处理 Windows API 的调用,由于 GLUT 是一个跨平台的库,所以我们的程序也可以移植到不同的操作系统中。
背景运动模糊在现如今的 3D 游戏中是一项非常流行的技术,他主要是为运动的物体添加一个模糊效果,增强了玩家真实感。运动模糊有多种实现方式,有的是基于相机来实现,主要专注于相机的运动;有的是基于对象的,在这一课中会学习其中一种方法来完成这个功能。 运动模糊背后的原理就是我们可以计算出两帧之间每个像素运动的向量(即运动矢量)。
背景所谓 3D 拾取就是当我们用鼠标点击屏幕上显示的 3D 场景时,我们鼠标选中的那个像素能够映射到实际的 3D 场景中的相应图元上。这个功能对于那些强调交互性的应用程序十分有用,用户只需要进行点击(在 2D 屏幕上)就能这个被点击的位置映射到三维场景中的对象上。例如,你可以使用它来选择某个对象或者其一部分作为目标,并在之后对其进行进一步的操作。