基于GPU的实时绘制算法研究

来源 :重庆大学 | 被引量 : 0次 | 上传用户:yjcog
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
图形质量和绘制速度是三维实时绘制技术的主要矛盾。三维实时绘制的场景常常包含数百万甚至上千万的三角形,而且其几何模型还有越来越复杂的趋势。传统图形流水线完全依赖CPU执行各环节的大量运算,而CPU并不是专门为图形运算设计的。因此,完全利用CPU来实现三维实时绘制是非常困难的。GPU(Graphics Processing Unit)的出现为这一重要问题提供了一条现实的解决途径。近年来,GPU的发展速度已经大大超过了摩尔定律。目前,GPU的浮点运算性能和数据吞吐率已经超过同时代的主流CPU。更重要的是,GPU已经具有了独立的处理核心、内存空间和编程语言,获得了与CPU类似的可编程能力,这一切使得GPU无可争议地成为三维实时绘制的主流计算平台。GPU的出现和发展不但极大地提高了计算机图形处理的速度和质量,而且还极大地促进了计算机图形相关应用领域的快速发展。图形流水线是计算机图形学中最基本、最重要的技术框架。几乎所有的计算机图形研发工作都以这个框架模型为基础。虽然GPU具有非常高的计算速度,但以前在传统图形流水线上实现的算法却并不能直接照搬到GPU图形流水线上来,这是因为GPU与CPU在系统结构上存在本质区别。GPU基于一种流水化的硬件结构和并行化的编程模型,这是GPU在执行图形运算时具有显著高性能的根本原因。因此,传统图形流水线的串行处理模型必须进行适当改造,才能使GPU的并行计算能力和性能优势得到最充分的发挥。本文对传统图形流水线和GPU图形流水线进行了对比分析和研究。我们首先研究了传统图形流水线中最基本的环节,包括三维物体的数据表示,几何变换,光照模型,光栅化、纹理映射和加速算法。在传统图形流水线的研究基础上,对GPU图形流水线的顶点变换器和片元着色器进行了重点研究。给出了实现动画效果和环境映射效果的顶点变换算法;给出了实现距离衰减效果和聚光灯效果的片元着色算法;总结归纳了若干条优化图形程序性能的编程准则。最后以OpenGL和CG语言为工具,给出了两个基于GPU图形流水线的算法实例。算法实例1给出了模拟单波源三维水波的顶点变换算法;算法实例2给出了计算各向异性光照的片元着色算法。算法实例1采用正弦函数作为构造水波网格的基本波函数,利用Uniform参数传入波的振荡因子,在顶点变换器中执行波面网格顶点的位移计算,实现了波面荡漾的效果;算法实例2假定场景中只有一个光源,然后在片元着色器中计算各向异性光照。算法实例2使用一张纹理作为光照值的查找表。查找表中的每一项都是RGBA格式的颜色值。其中,RGB三个分量存储预先计算的漫反射因子,A分量存储镜面反射因子。实例2给出的算法非常适合模拟金属物体的抛光表面。
其他文献
随着互联网的普及和高速发展,结合地理信息系统(GIS)与因特网的WebGIS促进GIS向着互操作化、大众化和跨平台化发展。Rich Internet Applications(RIA)技术的推出,RIA具有传统
为了修复软件错误或者添加新的功能,经常需要更新软件。然而对于一些比较严格的软件(如云端应用)而言,为了保证连续的服务,必须在没有停机时间的情况下更新这些软件。传统的
近年来,大量的数据库被用于商业管理,客户信息和数据的积累越来越多,激增的数据背后隐藏着许多重要的信息,企业希望能够对这些客户信息进行更高层次的分析,以便更好地利用这些数据
网格技术是近几年研究较为热门的一项技术,网格技术利用互联网把分散在不同地理位置的计算机组织成一个虚拟的超级计算机,未来互联网的发展方向是将网络中众多闲置的计算资源
凸壳问题是计算几何中最重要、最基本,也是得到大量深入研究,并有广泛应用的问题之一。其应用领域包括统计学等。它是在20世纪提出的,70年代以来,二维凸壳所具有的问题复杂性与应
随着Internet的迅猛发展,Web上可获得的Web服务急剧增多,如何从庞大的服务群中有效地获得所需功能的Web服务和如何在功能相似的Web服务中找到最佳服务成为了值得关心的问题,这些
在当今移动互联网时代,Android智能设备融入到人们生活的方方面面并且被人们重度依赖。大量的个人隐私数据,如联系人、通话记录、短信、照片等保存在其中,人们非常关切个人隐
本文介绍了XML语法的主要特点以及DTD、Schema的使用;阐明了XML数据在数据库中的存储方式;重点从三个角度讲述了XML在关系数据库中的存储方法:独立于模式的XML数据在关系数据库
网格计算作为下一代互联网技术成为当前国内外研究的热点。资源管理与调度算法是网格计算中的两个核心问题。本文以现有主流的网格中间件Globus为基础平台,以校园计算网格为
随着存储需求的增加及存储应用日益复杂,对象存储接口将逐步取代以块和文件为访问单元的存储接口,成为将来存储系统发展的主要趋势。利用光纤通道协议传输对象存储设备的命令