第一章 绪论
1.1 计算机图形学简介
- 在计算机图形学中,“模型”这个词指的可以是 几何模型 也可以是 数学模型。
- 几何模型:我们想要呈现在图像中的物体的模型,例如 构建的汽车模型、房子模型、角色模型等。可以在模型中引入颜色、纹理或材料的反射率等多种属性(构成材质),来增强几何模型的表达能力。
- 建模:从一无所有开始、创建出一个模型的过程。得到的就是对物体的“几何加其它信息”的描述为模型
- 数学模型:物理 或 计算过程的模型。例如,光从光泽表面反射的各种模型。还有物体如何运动的模型,以及关于数码相机中图像采集过程的模型。这些模型也许是可靠的,也可能是 不准确的。可以是基于物理的,或者从原理推导来的,也可以是根据观察或直觉得到的 经验模型 或 现象模型。
- 几何模型:我们想要呈现在图像中的物体的模型,例如 构建的汽车模型、房子模型、角色模型等。可以在模型中引入颜色、纹理或材料的反射率等多种属性(构成材质),来增强几何模型的表达能力。
- 解决问题的两条原则:
- 明确问题原则:知道你要解决的是什么问题
- 近似求解原则:寻找近似的求解方法,而不是对问题本身进行近似
- 在图形学中有大量的采用近似方法,但是一定要明确近似的对象是什么。
- 谈及图形应用时的一些概念:
- 绘制:指将物体或图像呈现在显示器上
- 一种实用的绘制性能度量标准:每秒可绘制的基本体个数
- 基本体:面向应用的基本构形单元。例如 带纹理的多边形
1.2 简要历史
略
1.3 一个光照例子
该节给出了一个这样的场景:
在黑暗的房间里,一个 100W 的点光源悬挂在桌子上方约 1m 处,桌面涂有灰色乳胶漆。我们从 2m 高处看这个桌子,会看到什么?
这一场景的描述,使用的是我们生活中的描述,即使用我们在真实世界中得出的物理概念来描述场景。
然而,在计算机图形学中,这样的描述可能并不适用。因为在大多数标准图形包中没有 “米”、“克”、“焦耳”这些真实物理单位,它们对光的描述中甚至不考虑波长。且由于显示器等图形显示硬件的限制和物理原理,即使使用真实物理的计算方式,得出的结果也可能反而让人觉得不真实。
在图形学中,我们追求的并非物理上的仿真 而是 如何以视觉的方式来呈现信息。以上述情形为例,光以大致相同的强度从各个方向入射到景物表面,场景中各处反射光的差异大概在10^3范围内。简单地将屏幕像素的显示亮度调整到合理的区间,让它在类似范围内变化,效果很好,因而无需在视图上模拟真实的物理反射。但是必须保证所显示的图像忠于原作(制作者的显示器 和 其他人的显示器看到的颜色是一样的);所显示的关键物体的颜色必须是准确的,确保用户看到的是真实的外观。
- 抽象
- 抽象是视觉交流的一个关键因素
- 用户看到计算机图形时,图形的物理特性并不会对用户的观感产生很大影响,人们在讨论图形时更多的是 形状、颜色、形式这些更为抽象的术语。这是建模的一个关键特点。
- 例如,在角色建模时,我们通常会先从角色的基本形状开始建模。对于一个好的角色设计,往往从角色形状(把角色概念图全部涂成黑色,这样就只能看到角色的形状)就能让人感受到角色的一些特点(例如在反派角色的设计中,其形状中往往会有更多地棱角)
1.4 目标、资源 和 适度的抽象
- 在任何仿真中,首先要了解其背后的物理或数学过程(基于已知的有关它们的知识),然后,在给定时间限制、处理器能力 和 类似因素(我们的资源)的情况下,确定可提供所需结果(目标)的最佳近似方法。
- 睿智建模原则:对某一现象进行建模时,先深入了解需要 建模的现象 和 建模的目标,然后选择一个含义丰富的抽象模型,再在你所限资源范围内,为其选择合适的表示方法。最后通过测试来验证所建的抽象模型是否合适。
- 大部分实景模型由三部分组成:物理模型、数学模型 和 计算模型
- 以海洋波形为例:
- 物理模型:海洋波形表现为海水表面的垂直位移,波浪的起伏运动完全是因为周围的高度差而产生的力,而不是风力。
- 数学模型:将位移刻画为海洋表面整数网格点位置的时序函数,中间各点由插值计算得到。
- 计算模型:海面在将来某个时刻的状态可由当前的状态决定,这可通过采用有限差分来逼近所有导数,然后求解一个线性方程组实现
- 视觉系统影响原则:在求解图形学问题和构建模型时需要考虑人类视觉系统的影响。
- 计算机图形最终是要被人的眼睛所感知的,因此我们在求解问题时要考虑到人眼的视敏度、光感等
- 睿智建模原则:对某一现象进行建模时,先深入了解需要 建模的现象 和 建模的目标,然后选择一个含义丰富的抽象模型,再在你所限资源范围内,为其选择合适的表示方法。最后通过测试来验证所建的抽象模型是否合适。
1.5 图形学中的常数 和 一些参数值的量级
- 光能量 和 光子到达率
- 单一光子的能量 E 随波长 λ 的变化方程:
E = h c / λ E = hc / λ E=hc/λ
其中,普朗克常量 h ≈ 6.6 × 1 0 − 34 J ⋅ s h ≈ 6.6×10^{-34}J·s h≈6.6×10−34J⋅s,光速: c ≈ 3 × 1 0 8 m / s c ≈ 3×10^{8}m/s c≈3×10
- 单一光子的能量 E 随波长 λ 的变化方程: