【技术实现步骤摘要】
导航网格生成方法、装置、非易失性存储介质及电子装置
[0001]本专利技术涉及计算机领域,具体而言,涉及一种导航网格生成方法、装置、非易失性存储介质及电子装置。
技术介绍
[0002]对于开放世界类型游戏而言,通常允许游戏玩家在游戏地图中使用一些模板化的部件自由搭建虚拟建筑模型。为了提升游戏氛围和体验,需要非玩家角色(NPC)能够自由地进入游戏玩家所搭建的虚拟建筑模型并且还能够在虚拟建筑模型的内部自由行动。这便需要实现动态虚拟建筑模型内部的寻路需求,并且能够从虚拟建筑模型外部导航到虚拟建筑模型内部。在三维(3D)游戏场景中,通常会采用导航网格(NavMesh)方式实现寻路,然而,从场景资源生成NavMesh寻路网格却是一个非常耗时的过程。另外,在网络游戏的开发过程中,虽然从安全性角度考虑,NPC的逻辑通常运行在服务端,但是在服务端实时地根据虚拟建筑模型的不断变化重新生成寻路数据存在一定性能压力且延时较高,从而对NPC的人工智能(AI)表现造成一定不利影响。
[0003]在通常情况下,可以使用导航(navigation)库离线生成寻路的NavMesh网格,并且在静态场景中可以直接加载使用,以获取从起始点到目标点的通行路径。当游戏玩家能够自由搭建虚拟建筑模型时,原先可通行路径很有可能会被虚拟建筑模型所阻挡,目标点也可能由原先位于虚拟建筑模型外部变为位于虚拟建筑模型内部,因此静态的网格已经无法满足需求。为此,相关技术中所提供的解决方案在于:将虚拟建筑模型的网格(Mesh)数据与游戏场景地形的Mesh数据共同作为输入 ...
【技术保护点】
【技术特征摘要】
1.一种导航网格生成方法,其特征在于,包括:获取虚拟建筑模型所包含的多个虚拟建筑部件的属性信息集合;基于所述属性信息集合确定与所述多个虚拟建筑部件中可行走虚拟建筑部件对应的多边形的顶点在游戏场景中的位置信息;根据所述位置信息以及所述多边形的连接关系得到第一多边形网格,并将所述第一多边形网格转化为第一导航网格;在第二导航网格中去除与所述第一导航网格中目标类型虚拟建筑部件的对应网格,得到第三导航网格,其中,所述第二导航网格为初始的场景地形导航网格;在所述第三导航网格与所述第一导航网格之间建立连通关系,生成目标导航网格。2.根据权利要求1所述的导航网格生成方法,其特征在于,所述多边形的连接关系为根据所述可行走虚拟建筑部件的邻接关系确定的连接关系。3.根据权利要求1所述的导航网格生成方法,其特征在于,所述属性信息集合包括:所述虚拟建筑部件的位置信息、和/或所述虚拟建筑部件的旋转信息。4.根据权利要求1所述的导航网格生成方法,其特征在于,所述目标虚拟建筑部件对应的网格为目标包围盒对应的网格,所述目标包围盒为所述目标虚拟建筑部件对应的包围盒。5.根据权利要求1所述的导航网格生成方法,其特征在于,所述方法还包括:基于所述虚拟建筑模型所包含的多个虚拟建筑部件的部件类型,将所述多个虚拟建筑部件划分为所述可行走虚拟建筑部件和不可行走虚拟建筑部件。6.根据权利要求1所述的导航网格生成方法,其特征在于,基于所述属性信息集合确定与所述可行走虚拟建筑部件对应表面的多边形的顶点在所述游戏场景中的位置信息包括:基于所述可行走虚拟建筑部件的位置信息和旋转信息计算所述多边形中每个顶点在所述可行走虚拟建筑部件的局部空间坐标系下的第一坐标位置;将所述局部空间坐标系下的第一坐标位置转换为所述游戏场景的世界空间坐标系下的第二坐标位置。7.根据权利要求1所述的导航网格生成方法,其特征在于,所述属性信息集合还包括:所述虚拟建筑模型的出入口位置,在所述第三导航网格与所述第一导航网格之间建立所述连通关系,生成所述目标导航网格包括:在所述第一导航网格中获取所述出入口位置;在所述第三导航网格中获取与所述出入口位置对应的待连通位置;利用分离网格链接组件在所述出入口位置与所述待连通位置之间建立所述连通关系,生成所述目标导航网格。8.根据权利要求1所述的导航网格生成方法,其特征在于,所述属性信息集合还包括:每个虚拟建筑部件的包围盒信息,所述方法还包括:基于每个虚拟建筑部件的包围盒信息构建多层次包围盒树。9.根据权利要求8所述的导航网格生成方法,其特征在于,所述方法还包括:当向所述虚拟建筑模型中添加新的虚拟建筑部件时,基于待添加的虚拟建筑部件的部件类型对所述多边形的连接关系和/或所述多层次包围盒树进行更新。10.根据权利要求9所述的导航网格生成方法,其特征在于,基于所述待添加的虚拟建
筑部件的部件类型对所述多边形的连接关系和/或所述多层次包围盒树进行更新包括:当所述待添加的虚拟建筑部件的部件类型为所述可行走虚拟建筑部件并且不属于所述目标类型虚拟建筑部件时,将所述待添加的虚拟建筑部件对应表面的多边形添加至所述第一多边形网格并更新所述多边形的连接关系,得到第二多边形网格;将所述第二多边形网格转化为第四导航网格,以及基于所述待添加的虚拟建筑部件的包围盒信息更新所述多层次包围盒树。11.根据权利要求9所述的导航网格生成方法,其特征在于,基于所述待添加的虚拟建筑部件的部件类型对所述多边形的连接关系和/或所述多层次包围盒树进行更新包括:当所述待添加的虚拟建筑部件的部件类型为所述可行走虚拟建筑部件并且属于所述目标类型虚拟建筑部件时,将所述待添加的虚拟建筑部件对应表面的多边形添加至所述第一多边形网格并更新所述多边形的连接关系,得到第三多边形网格;将所述第三多边形网格转化为第五导航网格,以及基于所述待添加的虚拟建筑部件的包围盒信息更新所述多层次包围盒树;在所述第三导航网格中去除与所述待添加的虚拟建筑部件的包围盒对应的网格,得到第六导航网格;在所述第五导航网格与所述第六导航网格之间建立连通关系,更新所述目标导航网格。12.根据权利要求9所述的导航网格生成方法,其特征在于,基于所述待添加的...
【专利技术属性】
技术研发人员:刘晶,
申请(专利权)人:网易杭州网络有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。