虚拟资源对象的渲染方法、存储介质、处理器及终端技术

技术编号:17734682 阅读:42 留言:0更新日期:2018-04-18 11:52
本发明专利技术公开了一种虚拟资源对象的渲染方法、存储介质、处理器及终端,应用于包含一显示单元和一摄像单元的电子设备,虚拟资源对象包含虚拟水体对象和预设虚拟资源对象,该方法包括:通过电子设备的摄像单元捕获现实场景的图像,并以现实场景的图像为背景构建一三维场景;确定虚拟水体对象在三维场景中的第一位置与预设虚拟资源对象在三维场景中的第二位置;在三维场景中确定一观察位置;根据第一位置、第二位置和观察位置确定虚拟水体对象和预设虚拟资源对象之间的渲染顺序;根据渲染顺序渲染虚拟水体对象和预设虚拟资源对象。本发明专利技术解决了相关技术中所提供的可交互水体方式无法直接适用于AR平台的技术问题。

Rendering methods, storage media, processors and terminals for virtual resource objects

【技术实现步骤摘要】
虚拟资源对象的渲染方法、存储介质、处理器及终端
本专利技术涉及计算机图形学领域,具体而言,涉及一种虚拟资源对象的渲染方法、存储介质、处理器及终端。
技术介绍
增强现实(AugmentedReality,简称为AR)技术是一种实时地计算摄影机影像的位置及角度并添加相应图像、视频、三维模型的技术。这种技术的目标在于:在屏幕上将虚拟世界嵌套在现实世界并进行互动。此项技术通过将真实环境与虚拟物体实时地叠加至同一个画面上,由此不仅能够展现真实世界的信息,而且还可以将虚拟世界显示出来,进而使得两种信息相互补充与叠加。实时渲染技术的本质在于图形数据的实时计算和输出。在计算能力有限的情况下,通过一些简单的模拟方法能够快速地渲染出逼真的虚拟元素。现有的AR应用中还未出现可交互的水体。在流体仿真模拟领域和游戏实时渲染领域,分别存在不同的对于可交互水体的实现方案。在流体仿真模拟领域中,较为常用的模拟水的方法可以分为粒子法和网格法。粒子法将水体拆分成为多个粒子,通过纳维-斯托克斯方程(在流体力学领域描述粘性不可压缩流体动量守恒的运动方程)或者基于位置的密度估计等算法来计算粒子间的相互作用力,从而驱动粒子移动本文档来自技高网...
虚拟资源对象的渲染方法、存储介质、处理器及终端

【技术保护点】
一种虚拟资源对象的渲染方法,其特征在于,应用于包含一显示单元和一摄像单元的电子设备,所述虚拟资源对象包含虚拟水体对象和预设虚拟资源对象,所述方法包括:通过所述电子设备的所述摄像单元捕获现实场景的图像,并以所述现实场景的图像为背景构建一三维场景;确定所述虚拟水体对象在所述三维场景中的第一位置与所述预设虚拟资源对象在所述三维场景中的第二位置,其中,所述虚拟水体对象为具有顶面和侧面的三维结构体,所述预设虚拟对象为不写深度缓存的虚拟资源对象;在所述三维场景中确定一观察位置;根据所述第一位置、所述第二位置和所述观察位置确定所述虚拟水体对象和所述预设虚拟资源对象之间的渲染顺序;根据所述渲染顺序渲染所述虚拟...

【技术特征摘要】
1.一种虚拟资源对象的渲染方法,其特征在于,应用于包含一显示单元和一摄像单元的电子设备,所述虚拟资源对象包含虚拟水体对象和预设虚拟资源对象,所述方法包括:通过所述电子设备的所述摄像单元捕获现实场景的图像,并以所述现实场景的图像为背景构建一三维场景;确定所述虚拟水体对象在所述三维场景中的第一位置与所述预设虚拟资源对象在所述三维场景中的第二位置,其中,所述虚拟水体对象为具有顶面和侧面的三维结构体,所述预设虚拟对象为不写深度缓存的虚拟资源对象;在所述三维场景中确定一观察位置;根据所述第一位置、所述第二位置和所述观察位置确定所述虚拟水体对象和所述预设虚拟资源对象之间的渲染顺序;根据所述渲染顺序渲染所述虚拟水体对象和所述预设虚拟资源对象。2.根据权利要求1所述的方法,其特征在于,所述根据所述第一位置、所述第二位置和所述观察位置确定所述虚拟水体对象和预设虚拟资源对象的渲染顺序,包括:若所述第二位置和所述观察位置的连线穿过所述第一位置,则确定所述预设虚拟资源对象先于所述虚拟水体对象渲染。3.根据权利要求1所述的方法,其特征在于,在确定所述第一位置与所述第二位置之前,还包括:配置所述虚拟水体对象的顶面,其中,所述顶面用于模拟海浪;配置所述虚拟水体对象的侧面,其中,所述侧面用于呈现立体特效,且所述侧面所包含的网格面数量小于所述顶面所包含的网格面数量;分别为所述顶面上的每个顶点以及所述侧面上的每个顶点配置初始颜色,其中,所述初始颜色用于标识所述虚拟水体对象中与每个顶点对应的区域。4.根据权利要求3所述的方法,其特征在于,分别为所述顶面上的每个顶点以及所述侧面上的每个顶点配置所述初始颜色包括:将位于所述顶面上的每个顶点的第一颜色通道的取值设置为真;将位于第一部分侧面上的每个顶点的第二颜色通道的取值设置为真,其中,所述第一部分侧面是所述侧面中与所述顶面相邻的部分侧面;将位于第二部分侧面上的每个顶点的第三颜色通道的取值设置为真,其中,所述第二部分侧面是所述侧面中与所述第一部分侧面相邻的另外部分侧面。5.根据权利要求2所述的方法,其特征在于,确定所述预设虚拟资源对象先于所述虚拟水体对象渲染包括:计算第一向量与第二向量的数量积,得到第一计算结果,其中,所述第一向量是由所述顶面和所述侧面中每个平面的中心位置与所述第二位置确定的,所述第二向量为每个平面的法向量;计算第三向量与所述第二向量的数量积,得到第二计算结果,其中,所述第三向量是由每个平面的中心位置与所述观察位置确定的;计算所述第一计算结果与所述第二计算结果的向量积,得到第三计算结果;如果发现与每个平面分别对应的第三计算结果中存在任一计算结果小于或等于0,则确定所述预设虚拟资源对象先于所述虚拟水体对象进行渲染。6.根据权利要求1所述的方法,其特征在于,根据所述渲染顺序渲染所述虚拟水体对象包括:对所述顶面和所述侧面上的每个顶点进行顶点着色处理,其中,所述顶点着色处理用于在所述虚拟水体对象与所述三维场景之间对所述顶面和所述侧面上的每个顶点进行空间坐标变换以及为所述顶面和所述侧面上的部分或全部顶点配置模拟动画;对所述三维场景中被所述虚拟水体对象覆盖的像素区域进行片元着色处理,其中,所述片元着色处理用于将虚拟水体对象颜色和帧缓存中与所述像素区域对应的颜色进行混合。7.根据权利要求1所述的方法,其特征在于,在根据所述渲染顺序渲染所述虚拟水体对象和所述预设虚拟资源对象之后,还包括:确定所述观察位置由所述虚拟水体对象的外部切换至所述虚拟水体对象的内部;获取与所述虚拟水体对象内部对应的着色器代码并触发显示屏幕后处理效果来模拟水下视觉,其中,所述屏幕后处理效果包括以下至少之一:线性雾,高度雾,表面阳光散射,水下气泡,鱼群。8.根据权利要求1所述的方法,其特征在于,在根据所述渲染顺序渲染所述虚拟水体对象和所述预设虚拟资源对象之后,还包括:确定所述观察位置由所述虚拟水体对象的内部切换至所述虚拟水体对象的外部;获取与所述观察位置适配的三维场景,并对所述适配的三维场景进行折射扭曲处理。9.根据权利要求1所述的方法,其特征在于,在所述三维场景中确定一观察位置,包括:根据所述电子设备的所述摄像单元捕获的现实场景的图像在所述三维场景中确定一观察位置。10.一种虚拟资源对象的渲染装置,其特征在于,应用于包含一显示单元和一摄像单元的电子设备,所述虚拟资源对象包含虚拟水体对象和预设虚拟资源对象,所述装置包括:处理模块,用于通过所述电子设备的所述摄像单元捕获现实场景的图像,并以所述现实场景的图像为背景构建...

【专利技术属性】
技术研发人员:姜帆
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1