欢迎来到天天文库
浏览记录
ID:43805332
大小:979.50 KB
页数:64页
时间:2019-10-14
《计算机图形学7》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、4.6整体光照明模型模拟复杂逼真的光照明现象在本章中主要介绍光线跟踪算法清华大学计算机系计算机图形学光线跟踪算法研究真实感图形学中的主要算法之一1968年AppleA给出光线跟踪算法的描述1979年Kay和Greenberg的研究考虑了光的折射1980年Whitted提出了第一个整体光照明Whitted模型,并给出一般性光线跟踪算法的范例清华大学计算机系计算机图形学光线跟踪的基本原理光线在物体之间的传播方式-由光源发出的光到达物体表面后,产生反射和折射。由光源发出的光称为直接光,物体对直接光的反射或折射称为直接反射和直接折
2、射,相对的,把物体表面间对光的反射和折射称为间接光,间接反射,间接折射-光线跟踪算法基础清华大学计算机系计算机图形学最基本的光线跟踪算法是跟踪镜面反射和折射。从光源发出的光遇到物体的表面,发生反射和折射,光就改变方向,沿着反射方向和折射方向继续前进,直到遇到新的物体光源发出光线,经反射与折射,只有很少部分可以进入人的眼睛实际光线跟踪方向与光传播的方向相反清华大学计算机系计算机图形学视线跟踪-由视点与象素(x,y)发出一根射线,与第一个物体相交后,在其反射与折射方向上进行跟踪清华大学计算机系计算机图形学四种光线定义在光线跟踪
3、算法中,有如下的四种光线视线是由视点与象素(x,y)发出的射线阴影测试线是物体表面上点与光源的连线反射光线,视线反射方向光线折射光线,视线折射方向光线清华大学计算机系计算机图形学光强计算光线V与物体表面交与点P时,光在点P对光线V方向的贡献分为三部分由光源产生的直接的光线照射光强,是交点出处的局部光强清华大学计算机系计算机图形学反射方向上由其他物体引起的间接光照光强,由计算,通过对反射光线的递归跟踪得到折射方向上由其他物体引起的间接光照光强,由计算,通过对折射光线的递归跟踪得到把上述三部分光强相加,就是该条光线V在P点处的
4、总的光强清华大学计算机系计算机图形学光线跟踪算法清华大学计算机系计算机图形学光线跟踪算法实际上是光照明物理过程的近似逆过程光线跟踪基本过程可以跟踪物体间的镜面反射光线和规则透射,模拟了理想表面的光的传播清华大学计算机系计算机图形学终止条件实际的算法进行过程中,不可能进行无穷的光线跟踪算法应用意义上的终止条件该光线未碰到任何物体该光线碰到了背景光线在经过许多次反射和折射以后,就会产生衰减,光线对于视点的光强贡献很小光线反射或折射次数即跟踪深度大于一定值清华大学计算机系计算机图形学算法伪码表示从视点出发,对于视屏上的每一个象素
5、点,从视点作一条到该象素点的射线,调用下面的算法函数就可以确定这个象素点的颜色清华大学计算机系计算机图形学RayTracing(start,direction,weight,color){if(weight6、cing(最近的交点,T,weight*,);color=++;}}}清华大学计算机系计算机图形学光线与物体求交对于反射光线与折射光线的方向计算问题-Whitted光透射模型中的计算方法光线跟踪算法中需要用到大量的求交运算,因而求交运算的效率对于整个算法的效率影响很大光线与物体的求交时光线跟踪算法的核心清华大学计算机系计算机图形学光线与球的求交球是光线跟踪算法中最常用的体素很容易进行光线与球的相交判断,球又常常用来作为复杂物体的包围盒为光线的起点坐标,为光线的方向,已经单位化。为球心坐标,R为球的半径-求交前提条件清华大学7、计算机系计算机图形学代数解法由起点发出的光线参数方程球面的隐式方程:代入合并有:清华大学计算机系计算机图形学解方程有,光线与球无交,光线与球相切,t=-B/2,光线与球有两个交点t<0,交点无效t代入光线参数方程,可求得交点坐标清华大学计算机系计算机图形学交点的坐标交点处的法向量代数法求交点和法向量总共需要17次加减运算、17次乘法运算、1次开方运算和3次比较操作清华大学计算机系计算机图形学几何解法几何法求交示意清华大学计算机系计算机图形学基本步骤计算光线起点到球心的距离平方光线的起点在球内,光线与球有且仅有一个交点光线的8、起点在球外,光线与球有两个交点或一个切点或没有交点清华大学计算机系计算机图形学计算光线起点到光线离球心最近点A距离当光线的起点在球外,若,则球在光线的背面,光线与球无交点清华大学计算机系计算机图形学计算半弦长的平方,来判定交点的个数,光线与球无交,光线与球相切,光线与球有两个交点清华大学计算机系计算机图
6、cing(最近的交点,T,weight*,);color=++;}}}清华大学计算机系计算机图形学光线与物体求交对于反射光线与折射光线的方向计算问题-Whitted光透射模型中的计算方法光线跟踪算法中需要用到大量的求交运算,因而求交运算的效率对于整个算法的效率影响很大光线与物体的求交时光线跟踪算法的核心清华大学计算机系计算机图形学光线与球的求交球是光线跟踪算法中最常用的体素很容易进行光线与球的相交判断,球又常常用来作为复杂物体的包围盒为光线的起点坐标,为光线的方向,已经单位化。为球心坐标,R为球的半径-求交前提条件清华大学
7、计算机系计算机图形学代数解法由起点发出的光线参数方程球面的隐式方程:代入合并有:清华大学计算机系计算机图形学解方程有,光线与球无交,光线与球相切,t=-B/2,光线与球有两个交点t<0,交点无效t代入光线参数方程,可求得交点坐标清华大学计算机系计算机图形学交点的坐标交点处的法向量代数法求交点和法向量总共需要17次加减运算、17次乘法运算、1次开方运算和3次比较操作清华大学计算机系计算机图形学几何解法几何法求交示意清华大学计算机系计算机图形学基本步骤计算光线起点到球心的距离平方光线的起点在球内,光线与球有且仅有一个交点光线的
8、起点在球外,光线与球有两个交点或一个切点或没有交点清华大学计算机系计算机图形学计算光线起点到光线离球心最近点A距离当光线的起点在球外,若,则球在光线的背面,光线与球无交点清华大学计算机系计算机图形学计算半弦长的平方,来判定交点的个数,光线与球无交,光线与球相切,光线与球有两个交点清华大学计算机系计算机图
此文档下载收益归作者所有