基于GPU加速的水下海洋环境光照模拟的研究.docx

基于GPU加速的水下海洋环境光照模拟的研究.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

基于GPU加速的水下海洋环境光照模拟的研究

?

?

张雨侬秦勃梁艺

摘要:该文依据FFT(快速傅立叶变换)方法创建水面三角网格,通过加载三角网格数据的计算水下光线,利用OpenGL在屏幕上绘制出水下海洋环境中的光照模拟效果,再使用GPU并行算法对计算过程进行优化加速,最后通过使用OpenGL的VBO(顶点缓冲区对象)和VAO(顶点数组对象)两种方式来实现两者的交互。通过优化数据结构及存储器分配,有效缓解了模拟方法在GPU架构上的性能瓶颈。实验结果表明,该方法能够实时逼真地模拟水下光照,与已有的方法相比处理速度有显著的提升。

关键词:光照模拟;GPU加速;OpenGL;像素緩冲区对象;顶点缓冲区对象

:TP302:A:1009-3044(2018)02-0271-05

ResearchonUnderwaterMarineEnvironmentLightingSimulationBasedonGPUAcceleration

ZHANGYu-nong,QINBo,LIANGYi

(DepartmentofComputerScienceTechnology,OceanUniversityofChina,Qingdao266100,China)

Abstract:Inthispaper,accordingtotheFFT(FastFourierTransform)methodtocreatethesurfacetriangulargrid,byloadingtriangulargriddatatocalculatetheunderwaterlight,usingOpenGLonthescreentodrawtheunderwatermarineenvironmentinthelightsimulationeffect,andthenusetheGPUparallelalgorithmpairTheprocessofoptimizationtoaccelerate,andfinallythroughtheuseofOpenGLVBO(vertexbufferobject)andVAO(vertexarrayobject)intwowaystoachievetheinteractionbetweenthetwo.Byoptimizingthedatastructureandmemoryallocation,effectivelyalleviatetheperformancebottleneckofthesimulationmethodontheGPUarchitecture.Theexperimentalresultsshowthatthemethodcansimulatetheunderwaterlightinginrealtime,andtheprocessingspeedissignificantlyimprovedcomparedwiththeexistingmethods.

Keywords:lightingsimulation;GPUacceleration;OpenGL;pixelbufferobject;vertexbufferobject

1概述

近年来,“智慧海洋”逐渐成为海洋信息智能化发展最前沿的课题之一。水下光照的模拟是海洋虚拟场景模拟中的一个重要的课题,由于受到海洋复杂多变的环境影响,水下光线可能会产生折射、焦散、衰减等现象,而为了实现更加逼真的渲染效果,如何提高程序的并行性和计算效率、提高渲染的实时性成为了国内外学者研究的一个难点。

2001年,Mitchell[1]和Dobashi[2]通过将视域体分割成平行的平面来渲染水下光束,每个分割平面上采用Godray模型计算光强积分,并将结果累加到帧缓存中,阴影通过映射来实现。2001年,Jensen[3]通过把视域体分割成32个切片来表示光强,使用体渲染技术来渲染,并且将一个有动画效果的焦散纹理投射到每一个切片上。2002年,Iwasaki[4,5,6]描述了一种基于物理模型的水下光束渲染的方法,为每个光束构建一个平行六面体,并将其分割成若干子体,以准确计算各个子体的光强,最后把结果累加到帧缓存中;同样,采用阴影映射方式描述阴影。

2013年,方贵盛[7]对近年来水模拟的方法进行了总结,介绍了一些水体渲染的加

您可能关注的文档

文档评论(0)

134****8507 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档