The invention provides a method for searching the character path of 3D games, which includes: dividing the navigation map of the character path of the 3D game into a number of triangles, and taking the three edges of the triangle at the starting point as the initial three feasible search directions, searching the overlapping search node to find the branch points, and the overlapping search nodes between the adjacent two branch points. It is saved as a set of overlapping search nodes; if there are multiple paths between two branch points, the shortest path is marked; the rough direction of the character path is judged; the end point and the starting point can not be reached directly, then the starting point, the shortest path between the branch points and the end point are connected in turn; otherwise, the connection between the starting point and the end point is searched. The character path. In the search process, the whole character path navigation map is branched and marked, and the related branch path is searched and combined into the final path, and the principle of ray is used to search the inflection point, to avoid the search and calculation of unnecessary nodes, and to reduce the search time and the amount of memory possession.
【技术实现步骤摘要】
一种3D游戏的人物路径搜索方法
本专利技术属于数字媒体
,特别涉及一种3D游戏的人物路径搜索方法。
技术介绍
随着人们对游戏的要求不断提高,3D游戏在游戏中占据了越来越重的比率。3D游戏比较2D游戏,其更显真实,而且对空间操作的随意性也较强。这意味着3D游戏对显卡的运算速度和内存要求都存在很高的要求。3D游戏中一个重要环节就是自动寻路。自动寻路采用的算法对于复杂的地形计算时间较长,占有内存较多,不仅如此,对于处理动态障碍物问题上也有相同的问题出现。这样在3D游戏中用户可能出现等待时间长,游戏不流畅等问题。影响了游戏的质量。传统3D游戏采用A*算法作为主要实现算法。A*算法是一种静态路网中求解最短路径最有效的直接搜索方法。公式表示为:f(n)=g(n)+h(n),其中f(n)是从初始点经由节点n到目标点的估价函数,g(n)是在状态空间中从初始节点到n节点的实际代价,h(n)是从n到目标节点最佳路径的估计代价。保证找到最短路径(最优解的)条件,关键在于估价函数f(n)的选取。估价值h(n)<=n到目标节点的距离实际值,这种情况下,搜索的点数多,搜索范围大,效率低。但能得到最优解。并且如果h(n)=d(n),即距离估计h(n)等于最短距离,那么搜索将严格沿着最短路径进行,此时的搜索效率是最高的。但在复杂地形下A*算法占据的内存较大,计算的时间也比较长。在3D游戏中,其物理环境采用了一种分层次的路径规划解决方案。首先,游戏环境处理层负责根据地形,静态障碍物的规划以及关卡设计信息生成导航网格图。然后,路径规划层负责选择合适的寻路算法对不同角色进行路径规划。最后 ...
【技术保护点】
一种3D游戏的人物路径搜索方法,其特征在于,包括:步骤1:将3D游戏的人物路径导航地图划分成若干三角形,并记录每个三角形的顶点和边,相邻两个三角形连接的顶点设为搜索节点;步骤2:将人物路径的起始位置作为人物路径搜索的起始点,以起始点所在三角形的三条边为人物路径的初始三个可行搜索方向;步骤3:分别以人物路径的初始三个可行搜索方向,搜索人物路径导航地图中的所有交叠搜索节点,找到人物路径导航地图中的所有分支点,将相邻两个分支点之间的交叠搜索节点保存为交叠搜索节点集合;所述交叠搜索节点是与当前三角形共用两个搜索节点的三角形中的另一个搜索节点;每两个交叠搜索节点组成成对交叠搜索节点;步骤4:分别以各交叠搜索节点集合为路径,确定各路径上的最短路线并记录,若出现两个分支点之间有多条路径,标记该两个分支点间最短路径;步骤5:判断人物路径的大致方向:选取人物路径的结束点,从起始点向起始点所在三角形三边中点分别做射线,以结束点向三条射线分别做垂线,垂线长度最小值对应的射线所在方向即人物路径的大致方向;步骤6:从结束点向起始点做射线,若射线经过不可行区域,则结束点与起始点间有障碍物不能够直达,从结束点往起始 ...
【技术特征摘要】
1.一种3D游戏的人物路径搜索方法,其特征在于,包括:步骤1:将3D游戏的人物路径导航地图划分成若干三角形,并记录每个三角形的顶点和边,相邻两个三角形连接的顶点设为搜索节点;步骤2:将人物路径的起始位置作为人物路径搜索的起始点,以起始点所在三角形的三条边为人物路径的初始三个可行搜索方向;步骤3:分别以人物路径的初始三个可行搜索方向,搜索人物路径导航地图中的所有交叠搜索节点,找到人物路径导航地图中的所有分支点,将相邻两个分支点之间的交叠搜索节点保存为交叠搜索节点集合;所述交叠搜索节点是与当前三角形共用两个搜索节点的三角形中的另一个搜索节点;每两个交叠搜索节点组成成对交叠搜索节点;步骤4:分别以各交叠搜索节点集合为路径,确定各路径上的最短路线并记录,若出现两个分支点之间有多条路径,标记该两个分支点间最短路径;步骤5:判断人物路径的大致方向:选取人物路径的结束点,从起始点向起始点所在三角形三边中点分别做射线,以结束点向三条射线分别做垂线,垂线长度最小值对应的射线所在方向即人物路径的大致方向;步骤6:从结束点向起始点做射线,若射线经过不可行区域,则结束点与起始点间有障碍物不能够直达,从结束点往起始点搜索分支点依次连接起始点、分支点间的最短路径、结束点,得到人物路径搜索结果;否则结束点与起始点间没有障碍物能够直达,此时起始点与结束点的连线为搜索到的人物路径。2.根据权利要求1所述的方法,其特征在于,步骤3所述搜索人物路径导航地图中的所有交叠搜索节点过程中,三个搜索节点都被搜索过的三角形标记为已搜索三角形;当搜索到已搜索三角形或无后续三角形时结束搜索。3.根据权利要求1所述的方法,其特征在于,所述步骤3按如下步骤进行:步骤3-1:以起始点所在三角形的三条边中任一条作为搜索方向开始搜索,找到与起始点所在三角形共用两个搜索节点的三角形中的另一个搜索节点,即交叠搜索节点;步骤3-2:根据当前交叠搜索节点继续向前搜索交叠搜索节点,若根据当前交叠搜索节点能搜索到不止一个交叠搜索节点,则当前交叠搜索节点具有分支路径,执行步骤3-3;否则,当前交叠搜索节点没有分支路径;步骤3-3:标记具有分支路径的交叠搜索节点为分支点,将相邻两个分支点之间的交叠搜索节点保存为交叠搜索节点集合;并判断是否已搜索完所有交叠搜索节点:是,则执行步骤4;否则分别以分支点搜索到的各交叠...
【专利技术属性】
技术研发人员:高天寒,徐嘉宝,
申请(专利权)人:北京广同川临场互动科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。