计算机图形学是一个成功的技术故事。它的基本理念,表达方式,算法和硬件实现诞生于20世纪60-70年代,并在随后的20年间发展。在20世纪90年代中期,计算机图形技术已经相当成熟,但是其影响仍旧只是局限于某些"高端"程序,例如超级计算机上的科学可视化以及昂贵的飞行模拟器。现在的我们很难相信,但是在那个年代,很多计算机科学专业的学生对3D计算机图形一无所知!
近几十年来,计算机图形的商业性有了巨大发展。每一个现代PC都能够产生高质量的计算机生成图像,大部分是以视频游戏以及虚拟现实环境的形式。整个动画工业已经从其高端(例如Pixar电影)转移到了孩子们的电视机前。对于实拍电影,视觉特效领域也已经发生了翻天覆地的变化。当今的观众们也不会在看到不可思议的计算机特效时感到畏惧——这已经在预期当中了。
在本书中,我们将会介绍计算机图形技术中基础的数学与算法。我们使用编程API(applications programming interface)OpenGL来完成其中的内容。OpenGL是一个跨平台的图形编程环境,可以用于创建实时图形程序,例如视频游戏。
1