数字地球上基于GPU的海水渲染方法
发布时间:2021-06-27 15:23
该文在工程基础上基于数字地球对大规模海面场景的绘制进行深入研究并应用。在光学建模方面,该文通过基于GUP像素渲染器进行光学模型计算,解决了顶点渲染器中进行计算时渲染效果在不同分辨率不能平滑过渡的问题。同时,利用光学原理,提出了将多种光学效果进行综合的公式,表现出水面的各种光学现象,使得水面与周围环境和光线之间产生实时互动的光学特征,大大提高了海面光学效果的真实感。
【文章来源】:电子质量. 2020,(11)
【文章页数】:5 页
【部分图文】:
顶点渲染器计算出的光照效果
从图1中可以看出,光照效果不是光滑过渡的,而且在不同网格分辨率之间会发生较大差异,引起失真。出现这种情况的原因有两个:一是在建立地球网格时,最精细网格划分到16层,网格网孔较粗,每两顶点对应像素点较多;二是不同瓦块分辨率对应的顶点间接不同,上一级分辨率是下一级的一半。出现图2所示的情况。在顶点渲染器中计算光照是逐顶点来进行计算的,故其结果依赖于网格顶点的构造,所以会出现以上的效果。本文对此问题的解决方法是基于像素渲染器进行光照计算,即基于像素进行逐像素进行计算。原因如下:首先,屏幕像素是均匀分布的,逐像素计算就解决了瓦块相邻分辨率的顶点交接出现跃变;其次,像素密度较网格顶点密度较大,解决网孔较粗的问题。本文依据像素渲染器可以对颜色进行均匀插值的原理,将相邻顶点之间的像素进行均匀插值,生成虚拟顶点并进行光照计算,这样就可以解决以上两个问题。如图3所示。
在顶点渲染器中计算光照是逐顶点来进行计算的,故其结果依赖于网格顶点的构造,所以会出现以上的效果。本文对此问题的解决方法是基于像素渲染器进行光照计算,即基于像素进行逐像素进行计算。原因如下:首先,屏幕像素是均匀分布的,逐像素计算就解决了瓦块相邻分辨率的顶点交接出现跃变;其次,像素密度较网格顶点密度较大,解决网孔较粗的问题。本文依据像素渲染器可以对颜色进行均匀插值的原理,将相邻顶点之间的像素进行均匀插值,生成虚拟顶点并进行光照计算,这样就可以解决以上两个问题。如图3所示。在渲染器中进行光照计算就涉及以下问题:光照计算所需的顶点空间坐标信息如何输入像素渲染器中。像素渲染器只处理纹理以及颜色信息并将其输出,即其只接收颜色值和纹理坐标信息,并不能直接讲顶点信息所为输入进行接收。本文将顶点渲染器进行世界坐标变换后的点Pos当作颜色进行输出,该颜色的rgb颜色分量其实包含的是该顶点的空间坐标信息。在顶点渲染器中实现如下:
【参考文献】:
期刊论文
[1]21世纪海上丝绸之路的战略构想与建设方略[J]. 全毅. 理论参考. 2014(09)
[2]真实感海底场景的实时绘制[J]. 李晨辉,王长波,李洋,赵敏,汪国憬,刘董倩. 中国图象图形学报. 2011(08)
[3]基于海浪谱的3D海浪模拟[J]. 罗玉,钟珞. 武汉理工大学学报(交通科学与工程版). 2008(02)
[4]基于Cg和OpenGL的实时水面环境模拟[J]. 马骏,朱衡君,龚建华. 系统仿真学报. 2006(02)
本文编号:3253102
【文章来源】:电子质量. 2020,(11)
【文章页数】:5 页
【部分图文】:
顶点渲染器计算出的光照效果
从图1中可以看出,光照效果不是光滑过渡的,而且在不同网格分辨率之间会发生较大差异,引起失真。出现这种情况的原因有两个:一是在建立地球网格时,最精细网格划分到16层,网格网孔较粗,每两顶点对应像素点较多;二是不同瓦块分辨率对应的顶点间接不同,上一级分辨率是下一级的一半。出现图2所示的情况。在顶点渲染器中计算光照是逐顶点来进行计算的,故其结果依赖于网格顶点的构造,所以会出现以上的效果。本文对此问题的解决方法是基于像素渲染器进行光照计算,即基于像素进行逐像素进行计算。原因如下:首先,屏幕像素是均匀分布的,逐像素计算就解决了瓦块相邻分辨率的顶点交接出现跃变;其次,像素密度较网格顶点密度较大,解决网孔较粗的问题。本文依据像素渲染器可以对颜色进行均匀插值的原理,将相邻顶点之间的像素进行均匀插值,生成虚拟顶点并进行光照计算,这样就可以解决以上两个问题。如图3所示。
在顶点渲染器中计算光照是逐顶点来进行计算的,故其结果依赖于网格顶点的构造,所以会出现以上的效果。本文对此问题的解决方法是基于像素渲染器进行光照计算,即基于像素进行逐像素进行计算。原因如下:首先,屏幕像素是均匀分布的,逐像素计算就解决了瓦块相邻分辨率的顶点交接出现跃变;其次,像素密度较网格顶点密度较大,解决网孔较粗的问题。本文依据像素渲染器可以对颜色进行均匀插值的原理,将相邻顶点之间的像素进行均匀插值,生成虚拟顶点并进行光照计算,这样就可以解决以上两个问题。如图3所示。在渲染器中进行光照计算就涉及以下问题:光照计算所需的顶点空间坐标信息如何输入像素渲染器中。像素渲染器只处理纹理以及颜色信息并将其输出,即其只接收颜色值和纹理坐标信息,并不能直接讲顶点信息所为输入进行接收。本文将顶点渲染器进行世界坐标变换后的点Pos当作颜色进行输出,该颜色的rgb颜色分量其实包含的是该顶点的空间坐标信息。在顶点渲染器中实现如下:
【参考文献】:
期刊论文
[1]21世纪海上丝绸之路的战略构想与建设方略[J]. 全毅. 理论参考. 2014(09)
[2]真实感海底场景的实时绘制[J]. 李晨辉,王长波,李洋,赵敏,汪国憬,刘董倩. 中国图象图形学报. 2011(08)
[3]基于海浪谱的3D海浪模拟[J]. 罗玉,钟珞. 武汉理工大学学报(交通科学与工程版). 2008(02)
[4]基于Cg和OpenGL的实时水面环境模拟[J]. 马骏,朱衡君,龚建华. 系统仿真学报. 2006(02)
本文编号:3253102
本文链接:https://www.wllwen.com/kejilunwen/haiyang/3253102.html