(计算机科学与技术专业论文)延迟光照技术及其在虚拟漫游中的应用.pdf_第1页
(计算机科学与技术专业论文)延迟光照技术及其在虚拟漫游中的应用.pdf_第2页
(计算机科学与技术专业论文)延迟光照技术及其在虚拟漫游中的应用.pdf_第3页
(计算机科学与技术专业论文)延迟光照技术及其在虚拟漫游中的应用.pdf_第4页
(计算机科学与技术专业论文)延迟光照技术及其在虚拟漫游中的应用.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(计算机科学与技术专业论文)延迟光照技术及其在虚拟漫游中的应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果 尽我所知 除了文中特别加以标注和致谢的地方外 论文中不包含其 他人已经发表或撰写过的研究成果 也不包含为获得北京工业大学或其它教育 机构的学位或证书而使用过的材料 与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意 关于论文使用授权的说明 本人完全了解北京工业大学有关保留 使用学位论文的规定 即 学校有 权保留送交论文的复印件 允许论文被查阅和借阅 学校可以公布论文的全部 或部分内容 可以采用影印 缩印或其他复制手段保存论文 保密的论文在解密后应遵守此规定 签名 址导师签名 二张日期 虬 摘要 摘要 虚拟现实系统 计算机游戏技术等都离不开对光照效果的模拟 对光照模 拟的深入研究综合体现了当代计算机图形学的发展水平 具有重要的理论和实 践意义 然而 真实感光照模拟因在实时图形渲染中计算过于复杂 而使其在 实时系统中的应用成为了图形学中的一个难点问题 因此众多学者致力于研究 如何在保证较高画面质量的同时有效提高光照模型的计算速度和绘制速度 在实时大规模场景真实感渲染的背景下 针对多种光照模型进行的对比性 研究表明 在场景复杂度较高 光源数量较多的情况下 延迟光照技术是进行 实时光照计算的最佳方法之一 作为一种光照模型的加速计算方法 延迟光照 技术不再是基于顶点进行模型计算而是基于片元来计算光照 使得光照模型的 计算分解为几何计算和光照计算两个阶段 并使前者在预处理阶段集中进行 从而大大降低了绘制时的光照模型实时计算量 结合最新的可编程图形硬件 提出本文的研究目标 基于延迟光照模型方法 结合g p u 编程技术 实现实时 真实感多光源光照效果模拟 在实现复杂场景真实感渲染的同时 使运算速度 能够满足虚拟现实系统中实时漫游的要求 本文的主要研究成果是 提出并实现了一种基于延迟光照的局部光照模型 算法 用多个绘制目标实现了硬件加速 完成了多光源实时光照计算 且在预 处理过程中采用优化的g b u f f e r 存储设计减少纹理所占的显存空间 从而减少 了计算过程中存储和载入纹理信息的时间 之后将延迟光照技术应用于虚拟漫 游中 为场景中添加多个点光源 达到多光源实时绘制的目的 实验证明 该 方法在取得较好光照效果的同时 计算可以满足实时性的要求 关键词虚拟现实 实时绘制 延迟光照 北京t 业大学工学硕七学位论文 a b s t r a c t a b s t r a c t t h ep r o c e s s i n go f m u l t i p l ed y n a m i cl i g h t si nr e a l t i m ea tah i g hv i s u a lq u a l i t yi s a l li m p o r t a n ti s s u ei nc o m p u t e rg r a p h i c s e s p e c i a l l yc o m p u t e rg a m e st e n dt oh a v e c o m p l e xl i g h t s c e n e r i e st oc r e a t ee y e c a t c h i n ge f f e c t s t h ea i mi s a l w a y st o o v e r c o m et h el i m i t a t i o n so fa c t u a lc o n s u m e rg r a p h i c sh a r d w a r ea n dt oi n c r e a s et h e n u m b e ro fl i g h ts o u r c e st oc r e a t em o r ea n dm o r er e a l i s t i cr e n d e r i n g sa ti n t e r a c t i v e f r a m er a t e s t h em a i nr e s e a r c hc o n t e n t so fr e a l t i m el i g h t i n gi n c l u d el o c a li l l u m i n a t i o n e 丑o b a li l l u m i n a t i o n r e a l t i m em u l t i l i g h t si l l u m i n a t i o n t oi m p r o v et h er e a l i s t i c e f f e c ti nc o m p l e x3 ds c e n e w eu s em u l t i l i g h t si l l u m i n a t i o nm o d e l h o w e v e r i t n e e d sag r e a td e a lo fc a l c u l a t i o na n dt h e r e f o r et h es p e e di sv e r ys l o w c o n s e q u e n t l y aa l g o r i t h mo fl o c a li l l u m i n a t i o nc o m p u t a t i o nb a s e do nd e f e r r e dl i g h t i n gi sp r o p o s e d u n l i k et r a d i t i o n a lr e n d e r i n ga l g o r i t h m st h a ts u b m i tg e o m e t r ya n di m m e d i a t e l ya p p l y s h a d i n ge f f e c t st ot h er a s t e r i z e dp r i m i t i v e s t h ed e f e r r e ds h a d i n gt e c h n i q u es u b m i t s t h es c e n eg e o m e t r yo n l yo n c e s t o r i n gp e r p i x e la t t r i b u t e si n t ol o c a lv i d e om e m o r y c a l l e dg b u f f e r t ob eu s e di nt h es u b s e q u e n tr e n d e rp a s s e s t h eo b j e c t i v eo ft h i s t h e s i si st h er e a l t i m er e a l i s t i cr e n d e r i n go fm u l t i l i g h t si l l u m i n a t i o nb a s e do i l d e f e r r e dl i g h r i n g a n dt h es p e e do fc o m p u t a t i o nm e e t st h er e a l t i m ev i r t u a lr e a l i t y s y s t e mr e q u i r e m e n t s t h em a i nc o n t r i b u t i o no ft h i st h e s i si st h ed e s i g na n di m p l e m e n t a t i o no fa d e f e r r e ds h a d i n gf r a m e w o r k t h eg b u f f e ri sac o r ep a r to ft h ed e f e r r e dl i g h t i n g r e d u c i n gt h en u m b e ro fv a l u e ss t o r e di nt h eg b u f f e rn a t u r a l l yd e c r e a s e sm e m o r y r e q u i r e m e n t s o b v i o u s l yt h i si st h em o s te f f e c t i v em e t h o dt og a i np e r f o r m a n c e w e i m p l e m e n tf a s tc o m p u t a t i o nb a s e do nm o d e mg r a p h i c sh a r d w a r e t h ea n a l y t i c a l r e s u l t sd e m o n s t r a t et h a tt h ep r o p o s e dm e t h o dn o to n l ya c h i e v e sg o o de f f e c tb u ta l s o s p e e d su pi t se x e c u t i o n t h e nw ea p p l yt h ed e f e r r e dl i g h t i n gt e c h n o l o g yt oc r e a t e m o r er e a l i s t i cr e n d e r i n g si nv i r t u a lr e a l i t ys y s t e m k e y w o r d sv i r t u a lr e a l i t y r e a l t i m er e n d e r i n g d e f e r r e dl i g h t i n g i 北京丁业大学1 二学硕七学位论文 曼 曼曼 曼曼皇皇皇曼鼍曼 曼曼曼曼曼曼曼曼皇蔓曼曼曼 曼曼曼 曼曼曼罡曼曼 曼 曼皇曼 皇曼皇皇 烹基曼曼苎曼i i i i v 目录 摘要 i a b s t r a c t i i i 第1 章绪论 1 1 1 研究背景及意义 1 1 2 国内外研究现状 1 1 3 本文的研究内容和研究目标 3 1 3 1 研究内容 3 1 3 2 研究目标 3 1 4 本文的内容安排和组织结构 3 第2 章光照计算的相关技术 5 2 1 图形的绘制管线 5 2 1 1 固定渲染管线 5 2 1 2 可编程渲染管线 6 2 2 标准三维编程接口 7 2 3 本章小结 7 第3 章光照模型及绘制算法 9 3 1 引言 j 9 3 2r g b 颜色系统 9 3 3 光源 1 0 3 4 局部光照模型 一1 1 3 5 全局光照 1 3 3 5 1 光线跟踪算法 1 4 3 5 2 基本辐射度算法 15 3 5 3 光辐射传输预计算 18 3 6 实时多光源光照模型 1 9 3 6 1 现有的实时多光源光照算法 1 9 3 6 2 延迟光照的发展 2 0 3 7 本章小结 2 1 第4 章基于延迟光照的实时多光源光照计算 2 3 4 1 引言 2 3 4 2 延迟光照的原理 2 3 4 3 几何处理阶段的设计和实现 2 5 4 3 1 几何处理阶段数据流 2 5 4 3 2g b u f f e r 存储设计和实现 2 6 4 4 光照计算阶段的实现 2 8 4 5 实验结果与分析 2 9 n 北京工业大学工学硕士学位论文 4 6 本章小结 31 第5 章延迟光照技术在虚拟漫游系统中的应用 3 3 5 1 引言 3 3 5 2 虚拟场景模型的建立 3 3 5 2 1 模型建造工具 3 3 5 2 2 场景的建模 3 4 5 3 基于延迟光照实现场景光照效果模拟 3 5 5 4 本章小结 3 6 结论 3 7 参考文献 3 9 攻读硕士学位期间发表的学术论文 4 3 致谢 4 5 v i 第 章绪论 1 1 研究背景及意义 第1 章绪论 虚拟现实 计算机三维游戏 计算机辅助设计与制造等领域中的基本研究 问题是计算机实时图形技术 实时渲染技术随着这些应用领域的发展也变得越 来越重要 基于图形处理器的实时渲染技术的研究正是在这种环境下产生的 虚拟现实等领域的基本任务是构架一个良好的虚拟现实环境 而该环境必 须建立在实时交互的运行性能基础之上 此外 它还能够提供给人真实的 多 方位的感观刺激 真实感图形绘制技术是基于图形的虚拟现实的核心技术之一 直接关系到人机交互速度和图象输出质量 产生真实感的图像具有重要的意义 产生真实感图像是模拟 设计 广告 科研和教育 指挥和控制以及娱乐等领 域中的一项重要目标 特别是在3 d 游戏产业中 实时光照计算为场景提供了 逼真的效果 随着虚拟现实技术和计算机游戏产业的发展 对产生逼真的图像提出了更 高的要求 一方面它需要增加模拟环境的真实感 另一方面它属于限时计算系 统 在实时交互上提出了更高的要求 因此如何在保证较高画面质量的同时有 效提高自然现象模拟的计算速度和绘制速度 是产生逼真图像的技术关键 自 然现象包括光照 地形等 光照效果十分重要 它为虚拟场景添加了真实性 由此可见 虚拟现实系统 计算机游戏技术等都离不开光照的模拟 对光 照模拟的深入研究综合体现了当代计算机图形学的发展水平 具有重要的理论 和实践意义 1 2 国内外研究现状 从1 9 9 8 年以来 计算机图形处理器 g r a p h i c sp r o c e s s i n gu n i t g p u 以 超过中央处理器的发展速度而发展 中央处理器发展遵循摩尔定理 性能每1 8 个月翻一翻 而图形处理器的性能几乎半年翻一翻 随着三维图形处理器的发展 人们就基于这些图形硬件研究各种复杂的 能最大限度模拟真实环境的实时图形技术 因此实时图形技术是随着图形硬件 的发展而发展的 老技术随着图形硬件的发展而逐步淘汰 新技术则随之被提 出 最引人注目的便是图形硬件绘制管线的项点处理和像素处理模块中引入了 可编程性 使得用户可以通过程序方式控制图形流水线的执行 极大的扩展了 图形处理器的能力和应用范围 在过去 固定功能的图形流水线被限制只能使用一个光照模型 这个模型 北京工业大学工学硕士学位论文 被称为功能固定光照模型 这个功能固定的模型是基于众所周知的p h o n g 光照 的 但是经过了一些调整和增强 这个功能固定的光照模型有几个优点 它的 计算量少 而且有许多直观的参数可以用来调整和控制物体的外观 但是 问 题是只对非常有限的一些材质工作的很好 随着可编程硬件和高级s h a d e r 语言的发展 能够用高级语言简洁的表达复 杂的光照模型 不再需要设置有限的一组图形流水线状态或编写冗长乏味的汇 编语言例程 而且也不需要限制光照模型来适应固定功能流水线的能力 可以 用高级语言 如c g h l s l 等 在可编程图形处理器中表达自定义的光照模型 在实时图形技术中 光照的发展尤为突出 光照的研究遵从两条并行的线 索 即是在全局光照和局部光照模型进行研究 全局光照 1 是用来指一类模型 这类模型通过估算从点x 处反射的线 并考 虑所有到达该点的照明从而绘制对一个场景的观察 即不仅要考虑直接从光源 到达该点的照明 还要考虑可能穿过其他物体的来自光源的间接照明 现在有 两个主要的全局算法 辐射度算法和光线跟踪算法 全局光照可以通过计算所 有的光线反射来渲染出非常逼真的类似现实中照片的图像 不幸的是 实现这 些计算的方程会非常复杂 这意味着计算机需要耗费大量的时间进行数学计算 局部光照模型 2 是指在光照计算中只考虑直接照明 而没有考虑可以导致 阴影的与其他物体的相互作用和物体内部的反射 最著名的局部光照模型就是 p h o n g 明暗处理模型 3 1 局部光照模型实现简单 但是渲染的图像的真实性不高 为了增加渲染图像的真实性 需要多个光源 但是光源的增加 也增加了光照 计算的负担 使实时计算光照有了巨大的困难 随着图形硬件的发展 实时多光源光照计算开始出现 主要的实时光照计 算有三种方法 一是单管道多光源 二是多管道多光源 三是延迟光照技术 4 前两种方法的计算过程简单 但是会对隐藏面进行渲染 这浪费了绘制时间 延迟光照技术将图形的光照计算转移到图形光栅化处理之后 它可以使光照计 算只针对显示像素进行计算 可实现像素级的光照计算 能充分体现绘制效果 的细节 还可以有效的简化图形阴影的绘制 过去的十几年中 基于图像的绘ne 5 技术得到了进一步的成熟和普遍的应 用 由此扩展出的一个更具挑战性的问题 基于图像的光照 6 研究逐渐受到人 们的注意 在已有的基于图像的绘制技术中 有一个共同的假设就是场景本身 是静态的 即场景的光照条件固定不变 绘制过程只是通过改变视点位置或视 线方向产生对场景的浏览 基于图像的光照研究突破了静态场景的限制 使用 户不仅可以改变视点 还可以改变场景本身 从而产生出更丰富的光照效果 7 89 1 第1 章绪论 1 3 本文的研究内容和研究目标 本文的研究得到北京市科委项目 奥运场馆内人流交通三维仿真 的资助 1 3 1 研究内容 本文的研究内容包括 目前主要光照模型及绘制算法的对比研究 多光源 实时光照算法的研究 基于延迟光照的实时多光源光照计算算法的研究 延迟 光照技术在虚拟漫游系统中的应用 1 3 2 研究目标 本文的研究目标是 基于延迟光照模型方法 结合g p u 编程技术 实现实 时真实感多光源光照效果模拟 在实现复杂场景真实感渲染的同时 使运算速 度能够满足虚拟现实系统中实时漫游的要求 1 4 本文的内容安排和组织结构 本文共由4 章组成 各个章节内容安排如下 第1 章绪论 首先介绍了课题的研究背景和意义 其次 简单介绍了光照 技术的主要方法和国内外的研究现状 最后说明了本文的主要研究内容和研究 目标 第2 章介绍了要用到的实时图形学方面的关键技术 介绍了图形绘制管线 从固定功能到可编程的发展 标准的三维编程接口o p e n g l 第3 章主要讨论了各种实时光照模型及绘制算法 介绍了实时全局光照模 型 光线跟踪算法 基本辐射度算法和光辐射传输预计算算法 介绍了局部光 照模型 详细介绍了多光源实时光照算法 并通过分析对比 说明了各种算法 在实时绘制方面的特点及各自的优势与不足 第4 章详细介绍了本文提出的基于延迟光照的实时多光源光照计算算法 介绍了系统的目标和体系结构 并逐一详细介绍了系统所包含的各个功能模块 的实现 最后给出了实验结果 证明了方法的有效性 第5 章将延迟光照技术应用于虚拟漫游中 为场景中添加多个点光源 达 到多光源实时绘制的目的 实验证明 该方法在实现复杂场景真实感渲染的同 时 使运算速度能够满足虚拟现实系统中实时漫游的要求 结论部分对本文所做的工作进行了总结 再次指出工作的意义 并提出了 工作进一步的研究方向 4 第2 章光照计算的相关技术 第2 章光照计算的相关技术 2 1 图形的绘制管线 图形绘制管线描述了g p u 的渲染流程 即给定视点 三维物体 光源 照 明模式和纹理等元素 如何绘制一幅二维图像 对于实时绘制来说 绘制管线 是基础 2 1 1 固定渲染管线 图2 1 固定渲染管线图 f i g u r e2 1f i x e df u n c t i o np i p e l i n ef l o w 固定渲染管线 l o 即管线中的各个功能模块的实现是固定的 如图2 1 所 示 c p u 上的应用程序把三维顶点数据送到g p u 在g p u 上先进行顶点转换 和光照计算 顶点转换即是把三维的顶点坐标从世界坐标系转换到屏幕坐标系 并且对每个顶点计算光照 二维的屏幕坐标进入组合图元阶段 在此阶段中 二维坐标被组合成图元 如三角形 图元进入光栅化阶段 把图元转换成片元 然后片元进入着色阶段 在此计算每个像素的颜色 最后像素存入帧缓存中 1 顶点转换和光照阶段 这个阶段主要是实现把在模型坐标中的顶点变换到屏幕坐标 并在每个顶 点上执行光照计算 2 组合图元阶段 在这个阶段 根据伴随顶点序列的几何图元分类信息把顶点装配成几何图 元 这将产生一系列的三角形 线段和点 3 光栅化阶段 光栅化是一个决定哪些像素被几何图元覆盖的过程 多边形 线段和点根 据为每种图元指定的规则分别被光栅化 光栅化的结果是像素位置的集合以及 片元的集合 4 着色阶段 在这个阶段执行一系列的贴图和数学操作 然后为每个片元确定一个最终 的颜色 这一阶段还要执行一系列的针对每个片元的操作 这些操作是o p e n g l 的一个标准组成部分 在这个阶段 隐藏面通过一个被称为深度测试的过程而 消除 混合和基于模板的阴影也在这个阶段发生 这一阶段还将根据许多测试 来检查每个片元 这些测试包括剪切 a l p h a 模板和深度测试 这些测试涉及 了片元最后的颜色和深度 像素的位置和一些像素值 例如像素的深度和模板 值 如果任何一项测试失败了 片元就会在这个阶段被丢弃 通过了深度测试 就可以用片元的深度值代替像素的深度值了 在这些测试之后 一个混合操作 将把片断的最后颜色和对应像素的颜色结合在一起了 最后 一个帧缓存写操 作用混合的颜色代替像素的颜色 2 1 2 可编程渲染管线 当今图形硬件设计上最明显的趋势是在图形处理器内提供更多的可编程 性 图形处理器中的顶点和片元处理器己经从可配置转变为可编程了 可编程 图形处理器 1 1 的流水线如图2 2 所示 图2 2 可编程渲染管线 f i g u r e2 2p r o g r a m m a b l ep i p e l i n ef l o w 实时功能流水线和固定功能流水线大致一样 不同的在于 首先 固定功 能流水线的顶点转换和光照单元以及着色单元 分别变成了顶点处理单元和片 元处理单元 其次 顶点处理单元和片元处理单元是可编程的 即程序员可以 编写这两部分 自定义顶点转换 光照计算和片元处理 1 顶点处理单元 顶点处理的数据流模型从载入每个顶点的属性 例如位置 颜色 纹理坐 6 第2 章光照计算的相关技术 标等 到顶点处理器开始 然后 顶点处理器重复地取出下一个指令并执行它 直到顶点程序结束 这些指令经常存取几个不同的包含向量值的寄存器库 例 如位置 法向量或者颜色 顶点属性寄存器是只读的 包含了应用程序指定的 顶点属性集 临时寄存器能够进行读写操作 可以被用来计算中间结果 输出 寄存器只能进行写操作 程序负责把结果写入这些寄存器 当顶点程序结束的 时候 输出结果寄存器包含了最新的变换后的顶点 在三角形组成和光栅化后 每个寄存器的值经过插值后传递给片段处理器 2 片元处理单元 就像可编程顶点处理器那样 数据流涉及执行一系列的指令直到程序终止 同样 它也有一组输入寄存器 但是片段处理器的只读输入寄存器包含了从片 段图元的顶点参数经过插值获得的片段参数 而不是顶点属性 可读写的临时 寄存器存储了中间结果 向只写输出寄存器进行的写操作是片段的颜色和可选 的新深度值 2 2 标准三维编程接口 个人计算机上的三维图形在图形处理器出现以前 中央处理器处理所有的 渲染一个三维场景所需要的顶点变换和各种像素驱动的任务 图形硬件只是为 在屏幕上显示像素提供了一个缓存 必须编写软件实现三维图形渲染算法 在 某种意义上 所有关于顶点和片段的处理都是完全可编程 不幸的是 中央处 理器实在是太慢了 以至于不能生成引人注目的三维效果 现在 三维应用程 序不再需要使用中央处理器来实现他们自己的三维渲染算法 而是依赖于 o p e n g l 标准三维编程接口 1 2 来对图形处理器传达渲染命令 早在2 0 世纪9 0 年代初 s i l i c o ng r a p h i c s 就在一个称为o p e n g l 构架评论 委员会a r b 的协调下开发了o p e n g l a r b 包括了所有主要的计算机图形系统 厂商 最初 o p e n g l 只能在功能强大的u n i x 图形工作站上运行 然后 m i c r o s o f t a r b 的创始人 实现了o p e n g l 以作为一种在它自己的w i n d o w s n t 操作系统上支持三维图形的方法 m i c r o s o f t 随后在w i n d o w s 9 5 和其他m i c r o s o f t 的桌面操作系统上都增加了对o p e n g l 的支持 在过去的1 0 年里 o p e n g l 伴随着图形硬件一起发展 o p e n g l 是可扩展 的 这意味着o p e n g l 实现可以以一种逐渐增加的方式在o p e n g l 中添加新功 能 现在 大量的o p e n g l 扩展功能提供了使用最新的图形处理器功能的能力 2 3 本章小结 本章介绍了要用到的实时图形学方面的关键技术 介绍了图形绘制管线从 7 北京t 业大学工学硕士学位论文 固定功能到可编程的发展 标准的三维编程接口o p e n g l 第3 章光照模型及绘制算法 3 1 引言 第3 章光照模型及绘制算法 为了产生明暗过渡自然的真实感图形 首先必须建立光照明模型 它描述 了物体表面的颜色与其空间位置 朝向 物理属性 反射率 折射率 及光源 之间的关系 光照和一个物体的材质特性一起决定了它的外观 光和表面之间的相互作 用是一个复杂的物理过程 当光线照射到一个物体表面时 主要发生三种情况 其一是反射 其二是透射 其三是部分光被物体吸收转换为热能 上述三部分 光中 只有反射光与透射光能够刺激人眼产生颜色 因而物体表面的反射光和 透射光决定了物体呈现的颜色 如果使用当今所知的所有物理知识对这个交互 过程进行建模 将要花费难以承受的计算开支 因此 应该建立一种简化模型 尽可能地接近所期望的表面的特性 在过去的几十年里 研究人员使用了许多光照模型 从简单的近似模拟直 到极其精确的模拟 本章将介绍几种目前主流的实时光照模型 全局光照模型 局部光照模型 并在此基础上讨论了实时多光源光照模型 针对多种光照模型 及绘制算法进行了对比性研究分析 3 2r g b 颜色系统 r g b 彩色空间 1 3 1 4 悃r g b 三种基本颜色分量表示数字图像像素的颜 色值 我们非常熟悉的计算机屏幕的显示通常采用r g b 色彩系统 r g b 色系 坐标中三维空间的三个轴分别对应红 绿 蓝三基色 原点对应黑色 离原点 最远的顶点对应白色 其他颜色落在三维空间中由红 绿 蓝三基色组成的彩 色立方体中 其他的色彩系统通常以r g b 色彩系统为基础 其分量可以描述为 r g b 三原色的线性或非线性函数 r g b 色彩系统通过色彩的相加来产生其他颜 色 通常称为加色合成法 它是一种视觉感知非线性的彩色空间 图3 1 给出 了r g b 彩色空间的示意图 北京1 二业大学工学硕士学位论文 爻 青 g 图3 1r g b 彩色空间示意图 f i g u r e3 1r g bc o l o rs p a c e 在计算表面上一点对光的反射时 要同时计算该点对红 绿 蓝三种光波 的反射 由于对每个分量都要进行相同的计算 所以可以使用一种颜色三元组 来表达数学公式 这种颜色三元组可以简称为颜色 颜色可以用红 绿 蓝三 元组来表示 每个分量都在o 到1 的区间取值 这样 颜色既能够代表光的光 谱成分 决定了眼睛所看到的颜色 同时也能够代表光的强度 3 3 光源 3 d 图形系统有三种不同类型的光源 点光源 方向光和聚光灯 点光源和 聚光灯是有位置的 点光源被看成是单独的一个点 这个点在所有方向上发射 光子 方向光被认为是无限远的 最普遍的例子是 这种光源常常用于模拟太 阳 而聚光灯也被看成一个点 不过它是在特定方向上发射光子 1 点光源 点光源是一种在空间中的某个点上向各个方向等强度的发射光线的光源 对于现实世界的光照 随着光源的距离增加 光的强度也随之衰减 在o p e n g l 中对这种原理进行了实现 允许使用二次多项式的倒数来控制点光源所发出的 光线强度 假设一个点光源位于p 点 到达空间一点q 的光强c 可以通过下面 的公式计算 1 凸石而c0 3 1k dk i d t 2 7 其中c o 是光的颜色 d 是光源和q 之间的距离 即d l p q f 常数 1 0 lm 吩 b工t l 蓝 第3 章光照模型及绘制算法 恕 砖 乞分别是衰减常量 线性衰减常量和二次衰减常量 2 方向光 方向光有颜色和方向 没有位置 它发出的是平行光 可以把方向光想象 成无穷远处的一个光源 如太阳光发出的光 由于方向光位于无限远处 因此 方向光的强度不会衰减 3 聚光灯 聚光灯和点光源类似 不同的是聚光灯具有主辐射方向 聚光灯和点光源 一样 强度随着距离的增加而衰减 除此之外 它还受到另外一种衰减因素的 影响 即聚光灯效应 假设在点p 有一聚焦光源 方向为u 到达空间一点q 的光强c 可以用下 面的公式计算 c 搿c o 3 2 k c k l d k n d l 其中c o 是光的颜色 d 是光源和q 之间的距离 即d 炉一剑 常数 恕 局 屯是衰减常量 l 是从q 指向光源的单位方向向量 三2 网p q 3 3 指数p 控制聚光灯的聚焦方式 较大的指数p 对应于高聚焦度的聚焦光 光从聚焦中心向外出现急剧衰减 反之 较小的指数p 则对应聚焦度不高的聚 焦光 一三时 聚焦光的光强最大 当u 和一三之间的夹角增大时 光强逐 渐衰减 一个点的u 和一工之间的夹角大于9 0 时 聚焦光源发出的光线不会到 达该点 3 4 局部光照模型 现实世界中 物体所表现的颜色都是光能作用的结果 客观世界中的物体 都不同程度地具有发射光线 吸收光线 反射光线和透射光线的能力 光线照 射到物体表面时 一部分被吸收并转化为热能 其余部分被则反射或透射 正 是部分反射或透射的光线被眼睛接收后 我们才感觉到物体的存在及其所特有 的形状和色彩 因此 要绘制高度真实感图形 就必须定义场景中的光源 为 北京工业大学工学硕上学位论文 了便于计算 我们必须定量地描述光的多少或强弱 亮度和强度就是用来定量 描述光的两个基本概念 物体表面光的亮度是指单位投影面积在单位立体角内 发出的光的能量 它是物体表面上的小面元所具有的性质 对点光源常用强度 来代替亮度 强度是指点光源在单位立体角内发出的光能 同样大小的被照射 面离光源越远 接收到的光能就越少 光的传播服从反射定律和折射定律 光 源与物体所表现颜色的关系可通过光照模型来模拟 物体所表现的颜色与光源有密切的关系 光照模型的作用就是计算物体可 见表面上每个点的颜色与光源的关系 因此它是决定图形真实感的一项重要内 容 物体表面发出的光是极其复杂的 它既与环境中光源的数目 形状 位置 光谱组成和光强分布有关 也与物体本身的反射特性和物体表面的朝向有关 甚至还与人眼对光线的生理和心理视觉因素有关 把这一切都通过计算机精确 地计算出来是不现实的 我们只能用尽可能精确的数学模型 光照模型来模 拟光和物体的相互作用 从而近似地计算物体可见表面每一点的亮度和颜色 最基本的光照模型是p h o n g 模型 1 5 它首次使光源和视点的位置可以任意选定 p h o n g 模型表达式如下 i 厶疋 厶 三 忉 k 日 忉 3 4 其中 l 疋为环境光强度 上为入射光强 蜀为物体表面的漫反射系数 k 为物体表面的镜面反射系数 为物体表面的法向 为从物体表面指向光 源的向量 日为视线与l 的平分向量 利用上述光照模型 可以计算出场景中各物体每一点的颜色 该颜色只与 直接光源 物体的材料及该点的法向量有关 与它周围的物体还没有建立联系 这样的光照模型被称为局部光照模型 但现实世界里的大多数物体都具有明显 的反光特性 因此我们的眼睛才能感觉到它们的存在 有些物体还具有透明特 性 一个物体的反射光和透射光也会对其它物体产生明显的影响 光线跟踪算 法和辐射度算法较好地解决了这方面的问题 它们被称为全局光照模型 其中 光线跟踪算法解决了物体之间的镜面反射和透射的影响 能产生镜像 透明和 阴影等效果 但对漫反射处理不足 辐射度算法正好解决了这一不足 它从能 量的角度出发 很好地模拟了物体之间的漫反射 p h o n g 模型假设反射光线集中在反射方向 反射角等于入射角的方向 附 近 并随着与反射方向夹角的增大 反射光急剧减弱 用p h o n g 模型计算所得 的物体像塑料 镜面反射光是光源的颜色 不能反映物体表面的材料特性 而 且镜面反射在入射角很大时有失真 这个模型模拟的反射效果不理想 用它生 成的图形缺乏质感 后来b l i n n c o o k t o r r a n c e 等人相继对p h o n g 模型进行了 一些修改 使图形的真实感有明显的提高 1 9 8 2 年c o o k 和t o r r a n c e 提出了一 1 2 第3 苹光照模型及绘制算法 个基于物理光学的表面反射模型 c o o k t o r r a n c e 模型 1 6 使得模型中反射光 的位置和分布与实际情况非常接近 因而用它绘制的图形具有很好的质感 c o o k t o r r a n c e 模型的表达式如下 i l k o 蟛岛 l k d f g y g 3 5 其中 l 吃为环境光 髟 琏为漫反射与镜面反射的比例 蜀 k 1 d 为物体表面的分布函数 是菲涅耳函数 表示入射角和材料折射率的不同引 起的镜面反射率不同 g 为几何衰减因子 由微平面相互遮挡 c o o k t o r r a n c e 模型运用了光学中的菲涅尔方程 此方程在入射光为非偏振 光时是非常精确的 3 5 全局光照 从传统图形学基于几何模型的角度来看 场景通常是由光源 场景几何结 构和材质组成的 在给定了视点和视线方向之后 绘制的过程就是利用绘制方 程来刻画光源 几何结构 材质和视点这四个成分之间的相互关系 从而生成 虚拟图像 以达到真实感的效果 光源的分布通常用辐射度来刻画 物体的几 何结构用三维几何模型来表达 物体的材质利用b r d f x 2 向反射分布函数 来模拟 而视点记录了有关相机的信息 在1 9 8 6 年 k a j i y a t l 7 1 提出了绘制方程 该绘制方程根据光从一点照射到另一点的亮度以及从其他所有照射到第一点并 被反射到第二点的光亮度 来表示光从一点到另一点的转换 k a j i y a 将此绘制 方程表示为 i x z g x x g x 工 ip x 石 工 j x x d x 3 6 j 这里i x x 为点x 到点x 的光亮度贡献 c x x 7 为点工7 自身发光向x 辐射 的光亮度 p x x x 为工7 处关于入射方向x x 7 和反射方向x x 的双向反射 率 g x 为遮挡因子 若x 和x 相互可见 g x 工7 为1 否则为0 上式表明 场景中的任意一点 对另一点x 的光亮度贡献 等于x 处自身 向x 发射的光亮度和场景中所有其它物体表面发射的光亮度经由x 7 处反射到达 x 的光亮度之和 k a j i y a 用这一方程作为计算机图形绘制中各种光照模型的理 论基础 而不是用它来模拟所有的光照效果 因为这个绘制方程没有考虑介质 对光线的吸收 散射以及光强与波长的关系等 绘制方程描述了全局光照模型中的递归关系 它可以简单地用线性积分算 子r 来表示 1 3 北京工业大学t 学硕士学位论文 i g e g r z 3 7 其中 r i l p x x 7 x 工 x d x 尺为线性积分算子 式 3 7 可以进一步改写为 1 一g r j 9 6 从而得到下面的展开式 i 1 一g r 叫g s g s g r g 8 g r g 2 s g 尺g s 9 6 g r 占 g r 2 s 职3 9 3 8 r g c i o 展开式 3 8 有明显的物理意义 它表明场景中任意一点x 向另一点x 发 射的光亮度 是由于来自光源的能量经过不断反射的结果 式中右边的第一项 是x 自身发光向x 直接照射的结果 第二项代表的是光源作用于x 7 在z 处经 过一次反射到达x 的光亮度 而第三项表示光源的能量经过其它曲面一次反射 到x 再经过一反射到达x 的光亮度 因而是二次反射的结果 其它各项依此 类推都有相似的意义 由于绘制方程的一般性 该方程的求解显然是非常困难的 k a j i y a 利用 m o n t e c a r l o 方法直接求解式 3 8 提出一种非常有效 但是计算量很大的全 局光照求解技术 绘制方程的基本思想就是将所有可能路径加起来得到给定方向的辐射率 如果希望得到更高级的真实感 那么可以增加更多的路径来计算 全局光照的 研究重点在于 如何有效的计算出各种不同光线路径的效果 其中 光线跟踪 算法和辐射度算法都是对绘制方程一定程度的简化 3 5 1 光线跟踪算法 光线跟踪的思想是由a a p p e l 首先提出的 1 8 后来 g 0 1 d s t e i n 和n a g e l 对a p p e l 的光线跟踪思想作了一些改进 并首次用光线跟踪算法产生了阴影效 果 l9 1 使计算机绘制图形的真实感向前迈进了一大步 但由于当时计算机运算 速度相对较慢 光线跟踪算法的时间开销极大 一般的计算机系统难以承受 另外 当时的图形显示设备性能有限 没有显示高度真实感图形的硬件基础 使光线跟踪的发展受到了一定程度的限制 直到1 9 7 9 年 d s k a y 用光线跟踪 算法产生了反射和折射效果 2 0 1 迎来了光线跟踪算法的又一次飞跃 这个算法 对镜面反射和透明性的模拟非常成功 使物体的高光点 镜像和透明效果非常 自然 它是真正意义上的高度真实感图形显示算法 现在仍被广泛采用 1 4 第3 苹光照模型及绘制算法 光线跟踪算法使计算机产生图形的真实感大幅度提高 但卓越的图形绘制 效果与昂贵的计算开销形成了鲜明的对比 为了使这一算法真正实用化 减少 运算量势在必行 从此 许多人开始研究光线跟踪的加速方法 光线跟踪中最 费时的运算是线面求交 有关资料表明 如果不采取加速措施 线面求交约占 整个光线跟踪时间的9 5 以上 2 1 1 因此 减少运算量的关键在于提高线面求交 的速度或减少线面求交的次数 层次包围盒方法是减少线面求交次数的重要方法 2 2 1 它的基本思想是 在 复杂形体外包一个容易求交的包围盒 例如长方体或球面等 在光线与该复杂 物体求交之前 先判其是否与包围盒相交 若与包围盒不相交 说明它与包围 盒中的复杂形体也不相交 从而节约了时间 只有当光线与包围盒有交时 才 有必要与复杂形体进行求交运算 若原复杂形体由多个部分组成 还可以为每 个部分定义一个包围盒 从而形成一棵包围盒树 线面求交时先从树根结点开 始判断包围盒 若光线与根结点的包围盒不相交 则与原物体不相交 否则再 判断光线与每棵子树的包围盒是否相交 这样可以按层次访问包围盒 免除了 许多不必要的求交计算 只有当访问到树的叶子节点时 才需进行必要的求交 计算 选点计算加速法 2 3 是另一种类型的加速方法 其理论基础是 物体表面的 绝大部分颜色的过渡都是很均匀的 只是在边界部分才产生颜色突变 由此可 知 在颜色变化不大的地方没有必要逐点进行计算 只需按照某种规则选择一 些点进行真正的光线跟踪计算 然后对未计算的点进行线性插值即可 由于线 性插值只包含简单的四则运算 比用光线跟踪算法计算亮度要快得多 因此能 起到加速作用 根据文献中的结论 选点计算法可将计算速度提高2 9 倍 3 5 2 基本辐射度算法 辐射度算法源于五十年代提出的一种热辐射工程计算方法 原方法是用于 计算场景中所有面相互之间的热辐射作用 八十年代中期 g o r a l 等和n i s h i t a 等提出将这种方法引入到计算机图形学中 2 4 筇 经过十多年的发展 辐射度算 法成为真实感图形的一种重要生成工具 并且由于这种算法具有与视点无关的 特点 在虚拟现实领域有着广泛的应用前景 相对于其它真实感图形的绘制算法 辐射度算法的主要特点在于 1 经典的辐射度算法只处理纯漫反射封闭场景 2 场景的辐射度计算与视点无关 3 其它的绘制算法大都基于实践经验 而辐射度算法从一开始就建立在 求解能量平衡方程组的基础上 因而从光能分布计算上讲 辐射度算法比其它 1 5 北京工业大学工学硕十学位论文 真实感图形的绘制算法更为准确 为了便于讲述辐射度算法的基本思想 我们先介绍几个与辐射度有关的概 念 光通量 光通量是指单位时间内通过某一面积的光的能量 光照度 光照度e 指的是单位面积的光通量 e d f 幽 光亮度 面元沿某一方向的光亮度 定义为 面元在这一方向单位投影面 积朝单位立体角所发出的光通量 即 堑 墨 3 9 一 一 lj y d a c o s o d mc o s o d m 根据热辐射理论 一个面片实际发出的能量 称为辐射度 等于它作为 光源发射的能量与它所反射的能量之和 可用光亮度方程表示如下 够 e j p j 岛弓 1 2 忉 3 1 0 或用矩阵形式表示如下 1 一肛e 1 一岛e 1 一p n f n 2 一岛互2 1 一岛互2 一p n f n 2 一岛互 一色e 一p n fn n 6 l 6 2 吃 q 乞 巳 3 1 1 其中6 是面片 所辐射的光亮度 e j 是面片歹自身发出的光亮度 p 是面 片 的漫反射系数 r 是形状因子 它是一个纯几何的量 反映了离开面片i 到 达面片 的光能占面片f 总辐射能的比例 如果面片足够小 可以认为面片之间 相互遮挡关系为要么完全可见 要么完全不可见 那么凡可以通过双重面积分 求得 弓 者圳鼍笋勰西i 式中圪是遮挡因子 只取0 和1 两个值 事实上 场景中的面片之间不可避免地会存在不完全的遮挡关系 为了更 准确地计算场景能量的分布 实际的积分区域应该是面片之间相互可见的部分 因此 解析求取形状因子的计算非常复杂 在辐射度技术刚被引入到计算机图形学中时 因为解析求解形状因子进而 求解能量平衡方程组的计算量非常大 工程上的应用受到了很大的限制 1 9 8 5 年 c o h e n 等人提出用半立方体方法离散地求取形状因子的近似解 1 6 第3 章光照模型及绘制算法 2 6 1 如图3 2 所示 它的基本思想是在能量发射面片上建一个有足够分辨率的 半立方体作为投影面 利用深度缓存的消隐算法 把复杂的积分运算转变成以 能量发射面片中心为视点的透视投影运算和扫描线填充等简单操作来完成 二 次运算就能得到一个能量发射面片到其它所有面片的形状因子 使辐射度计算 得到了很大的简化 能量接受 受丽 图3 2 用半立方体求取形状因子 f i g u r e3 2s o l v es h a p ef a c t o ru s i n gc u b o c t a h e d r o n 辐射度算法光能分布计算的单位是面片 为准确计算场景中所有面上不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论