[发明专利]一种3D游戏随机地图的生成方法有效
申请号: | 201710261203.X | 申请日: | 2017-04-20 |
公开(公告)号: | CN107126702B | 公开(公告)日: | 2020-08-25 |
发明(设计)人: | 舒林;苏汝杰;金碎永 | 申请(专利权)人: | 杭州游聚信息技术有限公司 |
主分类号: | A63F13/5378 | 分类号: | A63F13/5378;A63F13/60 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 刘静;邱启旺 |
地址: | 310052 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种3D游戏随机地图的生成方法,首先生成二维数组并将其映射为二维网格图,然后生成搜索列表用以储存需要扩展子节点的节点,在二维网格图中选择网格作为起始点,将其深度设为零放入搜索列表开始拓展。每次从列表中取出深度值最小的节点,以设定概率往上下左右方向拓展子节点,拓展的有效节点以设定概率设为关键节点,将非关键子节点加入列表,从列表中取出深度最小的节点进行下一轮扩展,直到关键节点的数量和列表中的节点的数量之和达到设定关键节点数量,将列表中的节点设置为关键节点。根据连接节点在二维网格图中与其父节点与子节点的位置关系确定其模块的形状与位置信息,根据二维数组信息完成3D模块拼接,实现3D地图的生成。 | ||
搜索关键词: | 一种 游戏 随机 地图 生成 方法 | ||
【主权项】:
一种3D游戏随机地图的生成方法,所述随机地图由关键模块以及连接关键模块的道路模块组成,其特征在于,该方法包括以下步骤:步骤1,根据设定的关键模块数量的大小,生成一个二维数组保存地图信息,该数组映射为一个二维网格图,数组的每个元素为一个结构体,保存网格图上对应的网格放置的节点信息,包括节点的父节点和子节点、节点的深度、节点所要放置的3D模块的类型(关键模块或道路模块)和位置信息。步骤2,在网格图中取一个网格,将其设为起始节点,深度设置为0,建立一个搜索列表,将起始节点加入搜索列表。步骤3,将上、下、左、右四个方向随机排列,从搜索列表中取出深度值最小的节点(将其从搜索列表中删除),按照随机出的方向顺序来扩展其子节点,对于每个方向产生一个随机数,并将该随机数与一个可设定的数值(由用户根据每个节点需要扩展的子节点的数量设定)进行比较来决定这个方向是否拓展子节点,若比较的结果是往该方向拓展子节点,则判断该子节点是否位于网格图范围内以及该子节点对应的网格是否已有节点信息,将不符合要求的子节点销毁,符合要求的子节点深度设置为其父节点深度加1,并以一个可设定的概率(由用户根据需求设定)设置为关键节点,把没有设置为关键节点的子节点加入搜索列表。步骤4,判断现在已有的关键节点的数量和搜索列表中的节点的数量之和是否大于设定的关键节点的数量,若是,将搜索列表中的所有节点设置为关键节点,若否,重复步骤3,直到搜索列表中的元素个数为零。检查关键节点的数量,如果关键节点的数量未达到设定值,则清空网格信息,重新回到步骤2。步骤5,经过步骤4会得到关键节点和连接这些关键节点的道路节点,根据父节点和子节点在二维网格图的相对位置确定连接关键节点的道路节点应放置的道路模块的形状。步骤6,根据前5步生成的地图信息,设置各个节点所放置的3D模块的位置、方向信息,从地图的起始节点(根节点)出发,开始拼接3D模块,完成随机地图的生成。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州游聚信息技术有限公司,未经杭州游聚信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710261203.X/,转载请声明来源钻瓜专利网。
- 上一篇:带有拓展显示装置的游戏外设安装吊架
- 下一篇:多方位多模式多构成的互动系统