计算机图形学第六章真实感图形学.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4)光透射模型 综合简单光照明模型,Whitted光透射模型和Hall光透射模型,可得简单光反射透射模型(含有全局项): 其中下标i表示直接照射表面的光源,下标j表示引起折射的光源;下标ds表示漫反射,下标s表示规则反射;下标dt表示漫折射,下标t表示规则折射;上标’表示非光源项;L表示光源方向;N表示法线方向;R表示反射方向;V表示视线方向;T表示折射方向。 第二十八页,共六十九页,2022年,8月28日 6.5 整体光照明模型 简单光照明模型虽然可以产生物体的真实感图象,但它只考虑物体对直接光照的反射作用,不能很好的模拟光的折射和阴影等,也不能用来表示物体间的相互光照明影响;而基于简单光照明模型的光透射模型,虽然可以模拟光的折射,但是这种折射的计算范围很小,不能很好的模拟多个透明体之间的复杂光照明现象。 对于上述的这些问题,必须要有一个更精确的光照明模型。整体光照明模型就是这样的一种模型。 在现有的整体光照明模型中,主要有光线跟踪和辐射度两种方法,它们是当今真实感图形学中最重要的两个图形绘制技术,在CAD及图形学领域得到了广泛的应用。 第二十九页,共六十九页,2022年,8月28日 1)光线跟踪算法 光线跟踪算法是真实感图形学中的主要算法之一,该算法具有原理简单、实现方便和能够生成各种逼真的视觉效果等突出的优点,综合考虑了光的反射、折射、阴影等。 光线跟踪的基本原理:模拟理想表面的光线传播,跟踪镜面反射和折射。由光源发出的光线,经反射与折射,只有很少部分可以进入人的眼睛。因此光线跟踪算法的跟踪方向与光传播的方向是相反,是视线跟踪。由视点与象素(x,y)发出一根射线,与第一个物体相交后,在其反射与折射方向上进行跟踪。 第三十页,共六十九页,2022年,8月28日 1)由光源产生的直接的光线照射光强,是交点处的局部光强,可以由简单光照模型计算(但要考虑遮挡)。 2) 反射方向上由其它物体引起的间接光照光强,由IsKs 计算,Is通过对反射光线的递归跟踪得到。 3) 折射方向上由其它物体引起的间接光照光强,由ItKt 计算,It通过对折射光线的递归跟踪得到。 光线跟踪算法的基本过程 当视线与物体表面交于点P时,点P的光分为三部分,把这三部分光强相加,就是P点处的总的光强: 两个透明球和一个非透明物体组成场景的光线跟踪 第三十一页,共六十九页,2022年,8月28日 虽然在理想情况下,光线可以在物体之间进行无限次的反射和折射,但是在实际的算法进行过程中,我们不可能进行无穷的光线跟踪,因而需要给出一些跟踪的终止条件。实际应用中,可以有以下几种终止条件: ①该光线未碰到任何物体。 ②该光线碰到了背景(即边界)。 ③光线经过许多次反射和折射以后,就会产生衰减。当衰减系数小于某个给定的值时,光线对于视点的光强贡献很小,这时可以停止跟踪。 ④光线反射或折射的次数(即跟踪深度)大于给定的值。 光线跟踪终止条件 第三十二页,共六十九页,2022年,8月28日 光线跟踪算法伪码:函数名为RayTracing(),光线的起点为start,光线的方向为direction,光线的衰减权值为weight,初始值为1,算法最后返回光线方向上的颜色值color。对于每一个象素点,第一次调用RayTracing()时,可以设起点start为视点,而direction为视点到该象素点的射线方向。 RayTracing(start, direction, weight, color) { ?? if ( weight MinWeight ) ????? color = black; ?? else ?? { ????? 计算光线与所有物体的交点中离start最近的点; ????? if ( 没有交点 ) ?????? color = black; ????? else ???? { ???? Ilocal = 在交点处用局部光照模型计算出的光强; ????????? 计算反射方向 R; ????????? RayTracing(最近的交点, R, weight*Wr, Ir); //Wr:反射方向的衰减系数 ????????? 计算折射方向 T; ????????? RayTracing(最近的交点, T, weight*Wt, It); //Wt:折射方向的衰减系数 ????????? color = Ilocal + Ks·Ir+ Kt·It; //Ks、Kt:该点的反射系数和透射系数 ????? } ?? } } //此算法只设置了两个终止条件 第三十三页,共六十九页,2022年,8月28日 光线跟踪算法举例 第三十四页,共六十九页,2022年,8月28日 2)辐射度方法 辐射度方法是继光线

文档评论(0)

xiaolan118 + 关注
实名认证
文档贡献者

你好,我好,大家好!

版权声明书
用户编号:7140162041000002

1亿VIP精品文档

相关文档