学习计算机图形学需要多深的数学基础

更新时间:02-10 教程 由 挽木琴 分享

所谓计算机图形学,一般的定义是,「利用计算机技术,在计算机中创建并显示图形的学科」。而现今最火的,大概就是三维图像渲染技术了。

举个例子,我想要让计算机绘制一个「白天立方体摆在桌子上」的图像,这时,计算机内初始的数据很简单:立方体的位置、大小;桌子的大小;光源的位置、亮度、颜色、大小。

然而若想用这些描述,来得到一个精确的图像,则不是那么容易的。首先面对的问题,就是「光」,光如何反射、折射?这需要一定的物理基础,特别是光学(包括波动光学)。真实材质表面极为复杂,又如何合理简化呢?这就需要代数、微积分的数学基础。

进而,又有一个问题,就是采样。假设有一个光源,如果直接追踪光源发出的光线,那光线的分布势必是不均匀的,这就会使得有些部分噪点极多。而根据物理知识,我们知道,光路是可逆的。所以现在的计算机渲染,都普遍使用反向追踪技术。进而,就有一个问题,如果光源太小,那么反向追踪光线时,光线很难击中光源,这也会增大噪点。这时,我们就会考虑,是否可以主动引导光线,使得其更容易击中光源,这就是所谓「多重重要性采样」。然而这样的采样方法,很可能会带来偏差,使得渲染结果不符合实际。这时就需要概率论、统计学、随机过程、随机微分方程的知识,以保证在这个优化之下,仍然能够满足物理学规律。

进一步地,要加速渲染进程,常常需要使用GPU,使用矩阵来代替之前的计算。这就需要线性代数、谱分析的知识。

要对模型进行线、面简化,UV分解,则需要很多几何知识。虽然这一部分的工作,现在一般由人工来完成,但如果数学足够好,熟悉类似于计算共形几何的知识,是可以在一定程度上简化这个步骤的。

声明:关于《学习计算机图形学需要多深的数学基础》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2156014.html