文鼎教育集团成立于2001年,是国内最早涉足平面设计、室内设计、建筑园林设计培训的创始机构,旗下南京创业电脑培训中心专注于电脑、3D设计培训14年,提供CAD、PS、3DsMAX、VARY等软件培训课程,且根据企业用工需求,与上海、苏州、无锡、常州、南京、扬州等地50多家企业客户建立长期校企人才培养及输出机制,多年来已经培养设计工程师超过60800名,供职于江浙沪一带大型公司、中小型企业单位。
 
【开课班次】(可自选时间)
白天班(9:00-11.30   14:00-16:30)
晚上班(18:30-21:00)
周末班(9:00-11:30  14:00-16:30)

 
南京文鼎学校地址
1.新街口校区:南京市中山南路49号商茂世纪广场16层B2,(南京新百旁边,新街口地铁站13号出口苏宁易购楼上)。
2.江宁校区地址:胜太东路8号同曦鸣城A8栋410(地铁1号线胜太路站向东50米)。

文鼎教育是您家门口的学校。并且采用随到随学,滚动开班的教学模式,吸引广大学习者的到来。让您无需等待,报名即课上课,地理位置紧邻地铁站,最远的地方1小时也能到校学习,本期学不会,下期免费再学,保障你的合法权益。

目前比较流行的光线追踪技术和辐射度渲染技术可以统称为球型照明技术。在说明这两种渲染技术之前,有必要先谈谈一种真实感光照模型——整体光照模型。
什么是整体光照模型?简单的说,就是在渲染过程中考虑了整个环境(在具体的3D制作软件中就是制作的场景)的总体光照效果和各种景物间光照的相互影响。这个思想最先由Whitted提出。因此,整体光照模型又被称之为Whitted整体光照模型,这种模型是在Photo模型(在后面将会讲到)中增加了环境镜面反射光亮度和环境规则透射光亮度两个因素,它除了考虑光源直接照射引起的反射光到达观察者的光亮度之外,还考虑从场景中其他物体镜面反射或透射来的光亮度。用公式表示就为: 
I=Ic+IsKs+ItKt
这里有必要将各个参数解释一下:
I:景物表面P点(这是一个假设点)向观察点辐射的光亮度。
Ic:光源直接照射P点引起的反射光亮度(这个亮度值按Photo模型计算)
Is:其他物体因镜面反射而向P点辐射的光亮度。
It:其他物体因规则透射而向P点辐射的光亮度
Ks:景物表面P点的反射系数
Kt:景物表面P点的透射系数
注意,这里It、Is的确定要求助于光线追踪算法。
OK,现在进入正题。首先讲讲光线追踪算法。严格而言,光线追踪算法分为两种:正向追踪算法和反向追踪算法。其中,正向追踪算法是大自然的光线追踪方式,即由光源发出的光经环境景物间的多次反射、透射后投射到景物表面,最终进入人眼。反向追踪算法正好相反,它是从观察者的角度出发,只追踪那些观察者所能看见的表面投射光。就目前而言,所有3D制作软件的光线追踪算法都是采用反向追踪法,原因是这种算法能够最大程度地节省计算机的系统资源,而且不会导致渲染质量的下降。
下面就详细介绍一下反向追踪算法,如图:

如图所示,从视点出发,通过屏幕上一像素E的投射光线,求出光线与场景中最近的物体交点P1,在交点P1处,光线分为沿镜面反射方向r1和折射方向T1两支。追踪这两支光线,找出它们与场景中其他物体的交点Pt和Pr。要计算Pt和Pr点辐射的光亮度则还要继续追踪(这里要注意的是,图中显示的只是简单的光线追踪,实际情况中还要考虑其他光线对这个理想模型的影响)。从点Pr出发沿该点反射方向r2和折射方向T2进行追踪,从点Pt出发向r3和t3方向进行追踪。如此反复,直到被跟踪的光线射出场景或达到事先设定好的层次为止。(在3DSMAX中,光线追踪层的默认值为9,在绝大多数情况下已经够用,而且计算时还会考虑到光线衰减)
反向追踪算法首先要建立一个被分成细微栅格的2D平面,这个栅格会分得多小呢?小到只有显示器上的一个像素点那么大。然后,由原像素点“发射”一束光回到场景中,一旦光线到达物体表面,就必须确定该表面是否是反射表面、折射表面或发光表面,反射表面弹回光线,折射表面改变光线,而发光表面则被看成一个点光源(这里顺便提一下点光源与区域光源的关系:当一个点光源距观察者近时,通常就会把它看成一个区域光源;相对应的,一个区域光源在距观察者很远时,系统就会把它看成一个点光源)就这样,渲染器对整个场景中的每一束光线进行反射、折射运算。这也就是光线追踪速度极慢的根本原因。
最后谈一下什么是双向光线追踪。反向和正向追踪算法相结合使用可以产生逼真的光线转移现象,尤其是在焦点镜面模拟方面(也叫做聚焦)。两种算法结合起来渲染的过程就被称为双向光线追踪。
光线追踪算法的基本工作原理就讲到这里,下面再看看辐射度渲染。
首先了解一下辐射度的定义:单位时间内在单位面积上向空间辐射的光能被称为辐射度。辐射度算法的基础是热力工程学,也就是说,它完全遵守能量守恒定律。请注意,遵守能量守恒定律就表明,辐射度渲染不会受到狭义上的“封闭空间”的限制。换句话说,无论是室内还是室外,只要能够保证场景中能量不被散失,就可以利用辐射度渲染法。
在1984年Goral等人首次提出辐射度方法以来,辐射度已发展了近二十年。但实际运用却只是近几年的事,其原因就在于这种算法对计算机资源消耗极大,以至于Goral在提出该算法后当时的超级计算机也无法完成其计算任务。辐射度算法的工作原理是假定其场景是一个理想的能量守恒环境(由于封闭室内是最简单的能量守恒环境,所以人们在最初研究辐射度算法时就采用了这个最简单环境以降低研究难度。从这个方面来说,狭义的“封闭室内”可以被认为是正确的),在此环境中从光源发出的光能经过景物间多重漫反射后最终达到平衡状态,因而每个元面所接受到的光能,除了一部分被元面转换成热能之外,其余的光能应向周围场景均匀辐射。(注释:什么是元面?这是一个计算机图形学术语。在辐射度算法中存在着光线发射器和接收器两个概念,其中的光线接收器就被称为元面,而发射器就被称为曲面片。关于光线发射器和接收器在后面的内容中将会进一步解释)因理想漫反射表面各点处的辐射度与光亮度成正比,故可以认为此时的辐射度就是所求的漫反射光亮度,用B表示。

为了计算景物表面各点的辐射度,就需要把环境中景物表面分割成一个网格矩阵。在划分好的景物表面上所有接受光照区域必须能够发出光,也能更远地传播光。所以,辐射度中的能量是从光源到直接的周围环境。这些直接环境面积就成为下一次光能辐射的光源,即光线发射器。这就是对刚才注释中内容的解释。(不过将光线发射器称为曲面片另有原因,限于主题这里不作讨论)那么从上面的描述中我们不难发现,曲面片和元面之间并没有明显的界线,一个元面有可能也是一个曲面片。
实际上,辐射度直接计算的是离开一个曲面片到另一个曲面片能量的小部分,因为光能在传播过程中会转化为其他能量(如热能)。这种解决曲面片和元面相互作用的特殊设置过程被称为一个重复。 
好,对于辐射度的基本工作原理讲清楚了,下面就深入探讨一下它的工作方式。
设渲染器将场景中的景物表面分割成若干个小的元面dA,每一元面具有均匀的辐射度,根据能量守恒原理,对于平衡状态下的理想环境,一个元面辐射(也可以是曲面片)出的光能应等于由它本身所具有的辐射光能和它接受来自场景中其他景物表面向该点辐射的光能所产生的反射光。用公式表示就为:

解释一下式中各项参数的意思:
Ei:如果元面为漫射光源,则Ei>0,它表示了理想环境中光源的来源;如果不是漫射光源,则Ei=0
Fi:形状因子,它反映了从元面辐射出去的光能到达元面i的比例系数。
ρi:漫反射率,反映入射能量被漫反射出来的比例系数。
n:场景中的元面总数。
元面dAi的辐射度就为:

这里要应用到一个对等关系式:FjidAj=FjidAi
下图对上面的关系式作了一个诠释:

注意,这里给出的方程只能求出一个元面的辐射度,对于全局辐射度的计算就要联立方程组。呵呵,那个方程组相当复杂,这里就不讨论了(实际上我还没有搞懂)。
上述的辐射度方法知识模拟漫反射,不能模拟镜面反射和规则透射。所以为了模拟各种光照效果,Wallace等人想出了一个办法:将辐射度和光线追踪结合使用。首先,利用辐射度算法求出整体环境中的漫射光线分布,然后采用光线追踪技术求出整体镜面反射光和规则透射光对给定的屏幕像素光亮度的贡献。到了1987年,Wallace等人进一步推广了辐射度算法,使之适用于包含镜面、透明面在内的复杂光照环境。不过在当时由于计算量过于庞大,想运用于普通领域还是不可能的。