【技术实现步骤摘要】
虚拟场景的处理方法和装置以及存储介质
[0001]本专利技术涉及计算机
,具体而言,涉及一种虚拟场景的处理方法和装置以及存储介质。
技术介绍
[0002]现今,人们的空闲时间越来越多的选择通过游戏度过,将加快游戏的发展,游戏中丰富的3D场景将给玩家带来较高的游戏体验,因此,对游戏客户端3D场景建模的要求越来越高。
[0003]传统的多边形网格(PolyMesh)的3D场景描述方法中,它把游戏场景中的碰撞表面抽像成多边形网格来表示。它的精度高,因为平面可以无限切割,理论上可以表示非常精确的碰撞表面,可以做到与客户端相同的精度表示。
[0004]基于PolyMesh(多边形网格)的NavMesh(导航网格)是常见的客户端3D场景建模解决方案,但是数据结构复杂,算法复杂,计算量大,如果直接移植客户端引擎到服务端,开发难度较大,维护成本高。体素建模方案,数据结构简单,算法简单,开发成本低,但是精度略低,会丢失一些细节,占用空间较大,会有一些冗余数据。
[0005]另,场景建模非常重要的应用之一是场景寻路或判定两点是否可达,基于PolyMesh(多边形网格)的寻路算法。它主要有以下三个步骤:(a)由起点和终点定位到具体多边形poly;(b)查找起始poly到目标poly的联通路径;(c)根据联通的poly路径信息计算出拐点,生成路径点。
[0006]在场景寻路或判定两点是否可达,基于PolyMesh方案需要在服务器端导入大量的美术资源,资源量大,占用空间大;碰撞计算非常消耗CPU,计算量大 ...
【技术保护点】
【技术特征摘要】
1.一种虚拟场景的处理方法,其特征在于,包括:在虚拟三维地图的目标平面区域中查找目标平面位置,其中,所述目标平面位置上具有用于表示三维场景元素的体素;在查找到所述目标平面位置的情况下,获取所述目标平面位置上的体素的体素数据;在内存中存储所述目标平面位置上的体素的体素数据,其中,在所述目标平面位置包括多个平面位置、且所述多个平面位置中的每个平面位置上具有一层或多层体素的情况下,所述多个平面位置中的至少两个平面位置上的体素所对应的层数不同。2.根据权利要求1所述的方法,其特征在于,所述获取所述目标平面位置上的体素的体素数据,包括:获取所述目标平面位置上的各层体素的体素数据;所述在内存中存储所述目标平面位置上的体素的体素数据,包括:在所述内存中存储所述目标平面位置以及所述目标平面位置上的各层体素的体素数据。3.根据权利要求2所述的方法,其特征在于,所述获取所述目标平面位置上的各层体素的体素数据,包括:在所述目标平面位置包括第一平面位置、且所述第一平面位置上具有多层体素表示的三维场景元素的情况下,获取所述第一平面位置上的所述多层体素的体素数据;在所述内存中存储所述目标平面位置以及所述目标平面位置上的各层体素的体素数据,包括:在所述内存中存储所述第一平面位置以及所述第一平面位置上的所述多层体素的体素数据。4.根据权利要求2所述的方法,其特征在于,所述获取所述目标平面位置上的各层体素的体素数据,包括:在所述目标平面位置包括第二平面位置、且所述第二平面位置上具有单层体素表示的三维场景元素的情况下,获取所述第二平面位置上的所述单层体素的体素数据;在所述内存中存储所述目标平面位置以及所述目标平面位置上的各层体素的体素数据,包括:在所述内存中存储所述第二平面位置以及所述第二平面位置上的所述单层体素的体素数据。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:在查找到所述目标平面位置的情况下,将所述目标平面位置的标记设置为第一标记,其中,所述第一标记用于表示所述目标平面位置上存在静态体素、以及所述目标平面位置上存在静态体素的层;在所述目标平面区域中包括除所述目标平面位置之外的其他平面位置的情况下,将所述其他平面位置的标记设置为第二标记,其中,所述第二标记用于表示所述其他平面位置上不存在静态体素。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:获取所述目标平面区域中的第一虚拟对象所在的第三平面位置;在所述第三平面位置的标记表示所述第三平面位置上存在静态体素、且所述第三平面位置上存在静态体素的层为目标层的情况下,根据所述内存中存储的与所述第三平面位置相关的体素的体素数据,获取所述目标层上的静态体素的上沿高度和下沿高度;在所述第一虚拟对象的高度在所述上沿高度和所述下沿高度之间的情况下,确定所述
第一虚拟对象出现碰撞。7.根据权利要求6所述的方法,其特征在于,所述根据所述内存中存储的与所述第三平面位置相关的体素的体素数据,获取所述目标层上的体素的上沿高度和下沿高度,包括:在所述目标层为起始层的情况下,在所述内存中存储的所述第三平面位置上的体素的体素数据中,获取所述目标层上的静态体素的上沿高度和下沿高度;在所述目标层不为起始层的情况下,在所述内存中获取所述第三平面位置所在的目标分片上的体素的体素数据,在所述目标分片上的体素的体素数据中获取所述第三平面位置上的所述目标层上的静态体素的上沿高度和下沿高度。8.根据权利要求6所述的方法,其特征在于,所述方法还包括:在所述第一虚拟对象的高度不在所述上沿高度和所述下沿高度之间的情况下,判断所述第三平面位置上是否存在动态体素;在所述第三平面位置上存在动态体素的情况下,获取所述动态体素的上沿高度和下沿高度;在...
【专利技术属性】
技术研发人员:邱立业,方振镇,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。