一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

地图生成方法、装置、计算机设备及计算机可读存储介质与流程

2022-02-22 23:32:53 来源:中国专利 TAG:


1.本技术涉及图像处理技术领域,特别是涉及一种地图生成方法、装置、计算机设备及计算机可读存储介质。


背景技术:

2.随着生活水平的提高,人们的生存质量和生活环境发生了翻天覆地的变化,大规模的城市建设,给人们的生活带来高品质享受的同时,也带来了巨大的压力,人们在压力环境下容易出现焦虑、精神不集中、工作无法正常完成等问题,因此,很多可以用于缓解疲劳以及娱乐的游戏应运而生。近年来,图像处理技术飞速发展,市面上场景类的游戏受到大量玩家的青睐。场景类的游戏中大多为追身镜头,给玩家提供了更加浸入式的游戏体验,游戏中关卡的路线以及乐趣性是极为重要的一个点,因此,游戏的开发人员在开发游戏时,通常会为游戏场景生成地图,使玩家全面了解游戏场景。
3.相关技术中,游戏场景是3d(3dimensions,三维)的,开发人员会将3d的游戏场景进行分割截图,得到3d的场景截图,对3d的场景截图中不同色块进行套索截取,分别填充不同的颜色,实现将3d的场景截图进行2d(2dimensions,二维)化处理,并最后将得到的2d化截图重新进行加工处理,生成最终的场景地图。
4.在实现本技术的过程中,申请人发现相关技术至少存在以下问题:
5.场景截图的截取以及填充均是开发人员人为操作的,人为操作会出现截取位置偏差、绘制位置不精准的问题,且在游戏场景发生修改时需要重新生成新的地图,不仅生成的地图精准度不高,而且涉及到大量的人力物力,地图的生成效率较低。


技术实现要素:

6.有鉴于此,本技术提供了一种地图生成方法、装置、计算机设备及计算机可读存储介质,主要目的在于解决目前生成的地图精准度不高,涉及到大量的人力物力,地图的生成效率较低的问题。
7.依据本技术第一方面,提供了一种地图生成方法,该方法包括:
8.确定待处理游戏场景,生成所述待处理游戏场景的多个区域图,所述多个区域图根据所述待处理游戏场景中的场景模型、地表材质、水域范围生成;
9.构建所述待处理游戏场景的多个高度图,基于所述多个高度图将所述多个区域图进行截取,得到所述待处理游戏场景的初始场景地图;
10.生成所述待处理游戏场景的等高线图,按照所述等高线图,对所述初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图;
11.获取所述待处理游戏场景的场景细节,将所述场景细节添加至所述中间场景地图,得到所述待处理游戏场景的目标场景地图。
12.可选地,所述生成所述待处理游戏场景的多个区域图,包括:
13.确定所述待处理游戏场景包括的多个场景模型,根据所述多个场景模型的模型属
性,生成所述待处理游戏场景的人文建筑图和地表模型图;
14.查询所述待处理游戏场景包括的多个地表材质,为所述多个地表材质中每个地表材质生成地表材质图,得到多个地表材质图;
15.在所述待处理场景中确定所述水域范围,按照所述水域范围的水域深度,生成所述待处理游戏场景的水域图;
16.将所述人文建筑图、所述地表模型图、所述多个地表材质图、所述水域图作为所述多个区域图。
17.可选地,所述根据所述多个场景模型的模型属性,生成所述待处理游戏场景的人文建筑图和地表模型图,包括:
18.读取所述多个场景模型的模型属性,在所述多个场景模型中提取所述模型属性指示人文建筑的第一场景模型,根据所述第一场景模型的外轮廓,输出所述人文建筑图,所述人文建筑图中所述第一场景模型的外轮廓填充有预设颜色;
19.同时或分别在所述多个场景模型中确定除所述第一场景模型外的其他场景模型,在所述其他场景模型中提取尺寸大于等于尺寸阈值的第二场景模型,根据所述第二场景模型的外轮廓,输出所述地表模型图,所述地表模型图中所述第二场景模型的外轮廓填充有所述预设颜色。
20.可选地,所述查询所述待处理游戏场景包括的多个地表材质,为所述多个地表材质中每个地表材质生成地表材质图,得到多个地表材质图,包括:
21.对于所述多个地表材质中每个地表材质,确定所述地表材质的材质覆盖范围,将所述材质覆盖范围输出,并采用预设颜色对所述材质覆盖范围进行填充;
22.确定所述地表材质与其他地表材质的结合处,统计所述地表材质在所述结合处的材质比例,所述其他地表材质是所述多个地表材质中除当前的所述地表材质外的地表材质;
23.按照所述材质比例,对所述材质覆盖范围中填充在所述结合处的所述预设颜色的深浅度进行调整,得到所述地表材质的地表材质图;
24.重复执行上述生成地表材质图的过程,分别为所述每个地表材质生成地表材质图,得到所述多个地表材质图。
25.可选地,所述在所述待处理场景中确定所述水域范围,按照所述水域范围的水域深度,生成所述待处理游戏场景的水域图,包括:
26.确定所述待处理场景包括的全部水域,识别所述全部水域的水域覆盖范围,将所述水域覆盖范围输出;
27.采用预设颜色对所述水域覆盖范围进行填充,得到水域范围图;
28.查询所述全部水域中每个水域的水域深度,在所述全部水域中提取水域深度大于深度阈值的深水域;
29.将所述深水域的深水覆盖范围输出,并采用所述预设颜色对所述深水覆盖范围进行填充,得到深水图;
30.将所述水域范围图和所述深水图作为所述水域图。
31.可选地,所述构建所述待处理游戏场景的多个高度图,包括:
32.确定所述待处理游戏场景的场景最低点和场景最高点,所述场景最高点是所述待
处理游戏场景中除模型属性指示人文建筑的第一场景模型外的其他场景模型的最高点;
33.以所述场景最低点为基准,向上每达到预设高度差,对所述待处理游戏场景进行横截面处理,直至达到所述场景最高点,得到所述待处理游戏场景的多个场景横截面;
34.采用预设颜色对所述多个场景横截面进行填充,得到所述多个高度图。
35.可选地,所述基于所述多个高度图将所述多个区域图进行截取,得到所述待处理游戏场景的初始场景地图,包括:
36.按照所述多个高度图的指示,截取所述多个区域图中每个区域图的最高区域,得到多个最高区域;
37.采用预设颜色对所述多个最高区域进行填充,输出包括填充后的所述多个最高区域的场景图;
38.分别确定所述多个区域图中每个区域图对应的区域填充色,得到多个区域填充色;
39.对于所述多个区域填充色中每个区域填充色,确定所述区域填充色对应的目标区域图,在所述场景图中查询所述目标区域图的目标最高区域;
40.在所述场景图中采用所述区域填充色对所述目标最高区域进行填充;
41.重复执行上述填充区域填充色的过程,在所述场景图中分别对所述多个最高区域中每个最高区域进行填充,得到所述初始场景地图。
42.可选地,所述生成所述待处理游戏场景的等高线图,包括:
43.识别所述多个高度图中每个高度图中填充有预设颜色的场景横截面的横截面轮廓线,得到所述多个高度图的多个横截面轮廓线;
44.将所述多个横截面轮廓线进行叠加,为所述多个横截面轮廓线中每两个横截面轮廓线之间的区域进行颜色填充,生成所述等高线图。
45.可选地,所述获取所述待处理游戏场景的场景细节,将所述场景细节添加至所述中间场景地图,得到所述待处理游戏场景的目标场景地图,包括:
46.确定预设像素,按照所述预设像素,在所述待处理游戏场景的正上方对所述待处理游戏场景进行场景截取,得到所述待处理游戏场景的场景俯瞰图;
47.识别所述场景俯瞰图,在所述场景俯瞰图上提取多个场景模型的模型细节作为所述场景细节;
48.在所述中间场景地图中确定所述多个场景模型对应的模型区域,将所述场景细节绘制在所述模型区域,得到所述目标场景地图。
49.依据本技术第二方面,提供了一种地图生成装置,该装置包括:
50.生成模块,用于确定待处理游戏场景,生成所述待处理游戏场景的多个区域图,所述多个区域图根据所述待处理游戏场景中的场景模型、地表材质、水域范围生成;
51.截取模块,用于构建所述待处理游戏场景的多个高度图,基于所述多个高度图将所述多个区域图进行截取,得到所述待处理游戏场景的初始场景地图;
52.调整模块,用于生成所述待处理游戏场景的等高线图,按照所述等高线图,对所述初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图;
53.添加模块,用于获取所述待处理游戏场景的场景细节,将所述场景细节添加至所述中间场景地图,得到所述待处理游戏场景的目标场景地图。
54.可选地,所述生成模块,用于确定所述待处理游戏场景包括的多个场景模型,根据所述多个场景模型的模型属性,生成所述待处理游戏场景的人文建筑图和地表模型图;查询所述待处理游戏场景包括的多个地表材质,为所述多个地表材质中每个地表材质生成地表材质图,得到多个地表材质图;在所述待处理场景中确定所述水域范围,按照所述水域范围的水域深度,生成所述待处理游戏场景的水域图;将所述人文建筑图、所述地表模型图、所述多个地表材质图、所述水域图作为所述多个区域图。
55.可选地,所述生成模块,用于读取所述多个场景模型的模型属性,在所述多个场景模型中提取所述模型属性指示人文建筑的第一场景模型,根据所述第一场景模型的外轮廓,输出所述人文建筑图,所述人文建筑图中所述第一场景模型的外轮廓填充有预设颜色;同时或分别在所述多个场景模型中确定除所述第一场景模型外的其他场景模型,在所述其他场景模型中提取尺寸大于等于尺寸阈值的第二场景模型,根据所述第二场景模型的外轮廓,输出所述地表模型图,所述地表模型图中所述第二场景模型的外轮廓填充有所述预设颜色。
56.可选地,所述生成模块,用于对于所述多个地表材质中每个地表材质,确定所述地表材质的材质覆盖范围,将所述材质覆盖范围输出,并采用预设颜色对所述材质覆盖范围进行填充;确定所述地表材质与其他地表材质的结合处,统计所述地表材质在所述结合处的材质比例,所述其他地表材质是所述多个地表材质中除当前的所述地表材质外的地表材质;按照所述材质比例,对所述材质覆盖范围中填充在所述结合处的所述预设颜色的深浅度进行调整,得到所述地表材质的地表材质图;重复执行上述生成地表材质图的过程,分别为所述每个地表材质生成地表材质图,得到所述多个地表材质图。
57.可选地,所述生成模块,用于确定所述待处理场景包括的全部水域,识别所述全部水域的水域覆盖范围,将所述水域覆盖范围输出;采用预设颜色对所述水域覆盖范围进行填充,得到水域范围图;查询所述全部水域中每个水域的水域深度,在所述全部水域中提取水域深度大于深度阈值的深水域;将所述深水域的深水覆盖范围输出,并采用所述预设颜色对所述深水覆盖范围进行填充,得到深水图;将所述水域范围图和所述深水图作为所述水域图。
58.可选地,所述截取模块,用于确定所述待处理游戏场景的场景最低点和场景最高点,所述场景最高点是所述待处理游戏场景中除模型属性指示人文建筑的第一场景模型外的其他场景模型的最高点;以所述场景最低点为基准,向上每达到预设高度差,对所述待处理游戏场景进行横截面处理,直至达到所述场景最高点,得到所述待处理游戏场景的多个场景横截面;采用预设颜色对所述多个场景横截面进行填充,得到所述多个高度图。
59.可选地,所述截取模块,用于按照所述多个高度图的指示,截取所述多个区域图中每个区域图的最高区域,得到多个最高区域;采用预设颜色对所述多个最高区域进行填充,输出包括填充后的所述多个最高区域的场景图;分别确定所述多个区域图中每个区域图对应的区域填充色,得到多个区域填充色;对于所述多个区域填充色中每个区域填充色,确定所述区域填充色对应的目标区域图,在所述场景图中查询所述目标区域图的目标最高区域;在所述场景图中采用所述区域填充色对所述目标最高区域进行填充;重复执行上述填充区域填充色的过程,在所述场景图中分别对所述多个最高区域中每个最高区域进行填充,得到所述初始场景地图。
60.可选地,所述调整模块,用于识别所述多个高度图中每个高度图中填充有预设颜色的场景横截面的横截面轮廓线,得到所述多个高度图的多个横截面轮廓线;将所述多个横截面轮廓线进行叠加,为所述多个横截面轮廓线中每两个横截面轮廓线之间的区域进行颜色填充,生成所述等高线图。
61.可选地,所述添加模块,用于确定预设像素,按照所述预设像素,在所述待处理游戏场景的正上方对所述待处理游戏场景进行场景截取,得到所述待处理游戏场景的场景俯瞰图;识别所述场景俯瞰图,在所述场景俯瞰图上提取多个场景模型的模型细节作为所述场景细节;在所述中间场景地图中确定所述多个场景模型对应的模型区域,将所述场景细节绘制在所述模型区域,得到所述目标场景地图。
62.依据本技术第三方面,提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述方法的步骤。
63.依据本技术第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法的步骤。
64.借由上述技术方案,本技术提供的一种地图生成方法、装置、计算机设备及计算机可读存储介质,本技术根据待处理游戏场景中的场景模型、地表材质、水域范围生成多个区域图,构建待处理游戏场景的多个高度图,基于多个高度图将多个区域图进行截取,得到待处理游戏场景的初始场景地图,并生成待处理游戏场景的等高线图,按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图,接着获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到目标场景地图。本技术的技术方案根据待处理游戏场景的地貌、建筑生成各个区域图,且直接截取各个区域图中需要进行展示的区域进行填色,并辅以等高线图增加地图的明度变化,将建筑细节加工在地图上形成最终的地图,不仅能够自动快速精准生成地图,而且无需开发人员手动绘制,节省大量的人力物力,提高地图的生成效率。
65.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
66.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
67.图1示出了本技术实施例提供的一种地图生成方法流程示意图;
68.图2a示出了本技术实施例提供的一种地图生成方法流程示意图;
69.图2b示出了本技术实施例提供的一种地图生成方法的示意图;
70.图2c示出了本技术实施例提供的一种地图生成方法的示意图;
71.图2d示出了本技术实施例提供的一种地图生成方法的示意图;
72.图2e示出了本技术实施例提供的一种地图生成方法的示意图;
73.图2f示出了本技术实施例提供的一种地图生成方法的示意图;
74.图2g示出了本技术实施例提供的一种地图生成方法的示意图;
75.图2h示出了本技术实施例提供的一种地图生成方法的示意图;
76.图2i示出了本技术实施例提供的一种地图生成方法的示意图;
77.图2j示出了本技术实施例提供的一种地图生成方法的示意图;
78.图2k示出了本技术实施例提供的一种地图生成方法的示意图;
79.图3示出了本技术实施例提供的一种地图生成装置的结构示意图;
80.图4示出了本技术实施例提供的一种计算机设备的装置结构示意图。
具体实施方式
81.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
82.本技术实施例提供了一种地图生成方法,如图1所示,该方法包括:
83.101、确定待处理游戏场景,生成待处理游戏场景的多个区域图,多个区域图根据待处理游戏场景中的场景模型、地表材质、水域范围生成。
84.102、构建待处理游戏场景的多个高度图,基于多个高度图将多个区域图进行截取,得到待处理游戏场景的初始场景地图。
85.103、生成待处理游戏场景的等高线图,按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图。
86.104、获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到待处理游戏场景的目标场景地图。
87.本技术实施例提供的方法,根据待处理游戏场景中的场景模型、地表材质、水域范围生成多个区域图,构建待处理游戏场景的多个高度图,基于多个高度图将多个区域图进行截取,得到待处理游戏场景的初始场景地图,并生成待处理游戏场景的等高线图,按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图,接着获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到目标场景地图。本技术的技术方案根据待处理游戏场景的地貌、建筑生成各个区域图,且直接截取各个区域图中需要进行展示的区域进行填色,并辅以等高线图增加地图的明度变化,将建筑细节加工在地图上形成最终的地图,不仅能够自动快速精准生成地图,而且无需开发人员手动绘制,节省大量的人力物力,提高地图的生成效率。
88.本技术实施例提供了一种地图生成方法,如图2a所示,该方法包括:
89.201、确定待处理游戏场景,生成待处理游戏场景的多个区域图。
90.近年来,场景类游戏的游戏场景的面积越来越大,玩家在游戏场景中游戏时通常难以感知完整的游戏场景,因此,游戏的开发人员会为游戏场景生成俯瞰形式的场景地图,以便玩家在游戏中能够确定角色处于哪个位置、往哪个方向行进。其中,在生成场景地图时,开发人员通常采用两种方法:一种方法是以游戏场景截图为参考,手工绘制地图。该方法,可以理解为将3d的场景截图,进行2d化处理,将截图逐步加工,需要对各个不同色块进行套索截取,分别填充不同的颜色,最后将完整的地图重新加工处理,绘制成最终地图。另
一种方方法是直接使用场景航拍并简单处理后作为地图,也即将游戏内的3d场景进行航拍,航拍的2d地图进行简单处理,直接作为游戏内地图使用。
91.但是申请人认识到,采用第一种方法生成场景地图时,因为存在人工截取再填充等人为的操作,会出现截取位置偏差,绘制位置不精准问题;而且在截取过程中,将会耗费大量人力时长,导致成本过高;且一旦出现修改场景情况,则必须重新截取并制作。所以总结来看,第一种方法存在制作的地图位置不精准、耗费人力时长、一旦修改场景则必须重新制作这三个缺陷。而采用第二种方法生成场景地图时,因游戏内场景截图更加偏向于游戏真实场景,偏3d化的实景会导致玩家被多种光影干扰,不便于查看,且不利于表达游戏内的地形要素,地图内指示性偏弱,该方式虽然可以快速由游戏场景制作出地图,但制作出的地图可读性差,不美观。所以总结来看,第二种方法存在生成的地图不方便玩家整体查看信息、可读性差、不美观这三个缺陷。
92.因此,本技术提出一种地图生成方法,根据待处理游戏场景中的场景模型、地表材质、水域范围生成多个区域图,构建待处理游戏场景的多个高度图,基于多个高度图将多个区域图进行截取,得到待处理游戏场景的初始场景地图,并生成待处理游戏场景的等高线图,按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图,接着获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到待处理游戏场景的目标场景地图。本技术的技术方案根据待处理游戏场景的地貌、建筑生成各个区域图,且直接截取各个区域图中需要进行展示的区域进行填色,并辅以等高线图增加地图的明度变化,将建筑细节加工在地图上形成最终的地图,不仅能够自动快速精准生成地图,而且无需开发人员手动绘制,节省大量的人力物力,提高地图的生成效率。
93.本技术提出的技术方案可以由具有对游戏各个地表、模型、高度分别进行截取的地图生成工具实现,以取代人工截取场景色块。其中,开发人员可以将需要生成地图的待处理游戏场景输入至该地图生成工具,以使地图生成工具确定待处理游戏场景,根据待处理游戏场景中的场景模型、地表材质、水域范围生成多个区域图。其中,多个区域图实际上包括人文建筑图、地表模型图、多个地表材质图、水域图,下面分别对这些图的生成过程进行描述:
94.一、人文建筑图和地表模型图。
95.在一个可选地实施方案中,在生成人文建筑图时,需要确定待处理游戏场景包括的多个场景模型,根据多个场景模型的模型属性,生成待处理游戏场景的人文建筑图和地表模型图。具体地,读取多个场景模型的模型属性,在多个场景模型中提取模型属性指示人文建筑的第一场景模型,根据第一场景模型的外轮廓,输出人文建筑图,其中,人文建筑图中第一场景模型的外轮廓填充有预设颜色。同时或分别在多个场景模型中确定除第一场景模型外的其他场景模型,在其他场景模型中提取尺寸大于等于尺寸阈值的第二场景模型,根据第二场景模型的外轮廓,输出地表模型图,其中,地表模型图中第二场景模型的外轮廓填充有预设颜色。
96.实际上,上面的过程也即依据游戏内的全部人文建筑,输出人文建筑图。人文建筑物统一放置于游戏的building(建筑)文件夹内,因此,在另一个可选地实施方案中,可以将所有地图的人文建筑物根据外轮廓输出,得到人文建筑图。预设颜色可以为黑色,这样,输出的人文建筑图中,人文建筑物区域为黑色,其余为透明,如图2b所示。
97.而在输出地表模型图时,考虑到待处理游戏场景内有一些小型杂物,比如小石头、地上的小树枝、小蘑菇等等,这些小型杂物是为了对待处理游戏场景进行装饰的,对最终生成的场景地图影响并不大,因此,此处将这些小型杂物省略,直接依据游戏内的全部地表大模型,输出地表模型图。进一步地,由于人文建筑物在特殊的文件夹building内,因此,在另一个可选地实施方案中,地图生成工具需要排除文件夹building内的模型,即排除所有人文建筑物,其余为地表其他模型。其中,地图生成工具会配置尺寸阈值,地表其他模型中尺寸小于尺寸阈值的模型为小石块、小型草本植物等,排除该类小模型,不输出。而对于地表其他模型中尺寸大于等于尺寸阈值的模型,地图生成工具将模型根据外轮廓,输出一张地表模型图。具体如图2c所示的地表模型图,地表模型为黑色(也即预设颜色),其余为透明。需要说明的是,在地表模型图的制作过程中,可能地表材质、或水域高于模型部分,这些高于模型部分的地表材质、水域等为无效区域,不在地表模型图上显示,输出为透明即可。
98.二、多个地表材质图。
99.待处理游戏场景中有多少种地表材质便生成多少个地表材质图,一般来说,游戏每个场景大约包括10至20种材质,因此,通常生成10至20张地表材质图。在一个可选地实施方案中,地图生成工具查询待处理游戏场景包括的多个地表材质,为多个地表材质中每个地表材质生成地表材质图,得到多个地表材质图,下面以多个地表材质中任一地表材质为例,描述地表材质图的生成过程:
100.其中,对于多个地表材质中每个地表材质,首先,地图生成工具确定地表材质的材质覆盖范围,将材质覆盖范围输出,并采用预设颜色对材质覆盖范围进行填充。
101.随后,地图生成工具确定地表材质与其他地表材质的结合处,统计地表材质在结合处的材质比例,按照材质比例,对材质覆盖范围中填充在结合处的预设颜色的深浅度进行调整,得到地表材质的地表材质图。其中,其他地表材质是多个地表材质中除当前的地表材质外的地表材质,也即如果为材质交界结合部分,则根据地表材质所占比例,输出对应半透明图。
102.这样,通过重复执行上述生成地表材质图的过程,便可以分别为每个地表材质生成地表材质图,得到多个地表材质图。需要说明的是,在一个可选地实施方案中,地图生成工具可以依据各游戏内的terrain(除模型外的地表材质),输出多个地表材质图,当前材质部分为有效区域,有效区域为黑色,无效区域为透明,每个材质各输出一张。而且在生成地表材质图时,地表上搭建的模型、水域等,如果高于地表,则该地表的地表材质会被模型、水域等覆盖,是看不见的,因此,这些地表也为无效区域,该处地表不显示,输出为透明部分。具体参见图2d,图2d是地表材质为草地材质时生成的地表材质图,黑色部分即为草地的覆盖范围,半透明部分为草地与其他地表材质的结合处。
103.三、水域图。
104.在生成水域图时,地图生成工具会在待处理场景中确定水域范围,按照水域范围的水域深度,生成待处理游戏场景的水域图,具体生成过程如下:
105.在一个可选地实施方案中,首先,确定待处理场景包括的全部水域,识别全部水域的水域覆盖范围,将水域覆盖范围输出,并采用预设颜色对水域覆盖范围进行填充,得到水域范围图。具体地图生成工具可以依据游戏内的所有水域,包括瀑布、河流、湖泊、海洋等,所有含水部分,生成一张水域范围图,水域部分为黑色,其余为透明。需要说明的是,游戏中
有些水可能低于地表材质,即地下河,此处的水实际上无法通过俯瞰游戏场景观测到,因此为无效区域,不显示在水域范围图上。具体可以输出图2e所示的水域范围图,其中黑色部分为水域覆盖范围。
106.接着,由于水域是具有一定深度的,深水域需要额外在最终生成的地图上体现出来,使深水域和浅水域的颜色不同,因此,地图生成工具会查询全部水域中每个水域的水域深度,在全部水域中提取水域深度大于深度阈值的深水域,将深水域的深水覆盖范围输出,并采用预设颜色对深水覆盖范围进行填充,得到深水图,并将水域范围图和深水图作为水域图。具体以上述图2e所示的水域范围图为例,可以生成图2f所示的深水图,将水域范围图中深度达到深度阈值的水域额外采用一张图表示出来。
107.这样,通过执行上述三部分内容,便为待处理游戏场景生成了人文建筑图、地表模型图、多个地表材质图、水域图,将人文建筑图、地表模型图、多个地表材质图、水域图作为多个区域图,以便后续通过对区域图的截取,生成最终的目标场景地图。
108.202、构建待处理游戏场景的多个高度图。
109.在本技术实施例中,为了实现对多个区域图的截取,将多个区域图中能够在最终的目标场景地图中显示的部分截取出来,需要构建待处理游戏场景的多个高度图,以便后续按照多个高度图对每个区域图进行截取,具体生成多个高度图的过程如下:
110.在一个可选地实施方案中,地图生成工具会确定待处理游戏场景的场景最低点和场景最高点。其中,场景最高点是待处理游戏场景中除模型属性指示人文建筑的第一场景模型外的其他场景模型的最高点,也即不截取人文建筑,其他地形、场景内大石块等模型都会被截到。
111.随后,地图生成工具以场景最低点为基准,向上每达到预设高度差,对待处理游戏场景进行横截面处理,直至达到场景最高点,得到待处理游戏场景的多个场景横截面。
112.最后,地图生成工具采用预设颜色对多个场景横截面进行填充,得到多个高度图。
113.实际上,在进行横截面的截取时,除人文建筑外,所有截到实体的均为有效区域,且在横截面上不能截到有效区域时,则停止截面,采用预设颜色(也即黑色)对有效区域进行填充,得到高度图。具体在实际应用的过程中,生成的高度图之一可如图2g所示。
114.203、基于多个高度图将多个区域图进行截取,得到待处理游戏场景的初始场景地图。
115.在本技术实施例中,生成了多个高度图后,地图生成工具开始基于多个高度图对多个区域图进行截取,为每个区域图确定能够展示的部分,将这些部分作为有效区域输出,形成待处理游戏场景的初始场景地图。
116.在一个可选地实施方案中,生成初始场景地图的过程如下:
117.首先,地图生成工具按照多个高度图的指示,确定多个区域图中每个区域图的最高区域,得到多个最高区域。随后,采用预设颜色对多个最高区域进行填充,输出包括填充后的多个最高区域的场景图。接着,分别确定多个区域图中每个区域图对应的区域填充色,得到多个区域填充色。对于多个区域填充色中每个区域填充色,确定区域填充色对应的目标区域图,在场景图中查询目标区域图的目标最高区域,在场景图中采用区域填充色对目标最高区域进行填充。重复执行上述填充区域填充色的过程,在场景图中分别对多个最高区域中每个最高区域进行填充,得到初始场景地图。
118.通过上述过程实际上根据多个高度图指示的高度,确定了全部区域图中的最高部分作为有效区域进行输出显示,并按照待处理各个区域图对应的区域填充色对输出的有效部分进行了色彩的填充,比如对基于水域图输出的有效区域,用蓝色填充;对基于草地材质的地表材质图输出的有效区域,用绿色填充,从而得到一个以颜色区分不同区域的初始场景地图,后续继续对该初始场景地图进行细化操作。
119.204、生成待处理游戏场景的等高线图。
120.在本技术实施例中,考虑到不同高度的区域在最终的目标场景地图中显示的明暗程度是不一样的,按照区域的高度对不同区域的明暗进行调整才能保证生成的目标场景地图真实、精确,因此,地图生成工具会生成待处理游戏场景的等高线图,根据等高线图调整不同高度的明暗。
121.在一个可选地实施方案中,在生成等高线图时,地图生成工具识别多个高度图中每个高度图中填充有预设颜色的场景横截面的横截面轮廓线,得到多个高度图的多个横截面轮廓线,并将多个横截面轮廓线进行叠加,为多个横截面轮廓线中每两个横截面轮廓线之间的区域进行颜色填充,生成等高线图。实际上也就是高度图上,以有效区域外轮廓的线为该高度的等高线,将各个等高线叠加,不同等高线之间填充不同颜色,便可以形成等高线图,具体等高线图的样式可以如图2h所示,图中轮廓线即为等高线,等高线之间填充不同的颜色。
122.205、按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图。
123.在本技术实施例中,生成了待处理游戏场景的等高线图后,地图生成工具会辅以等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,增加初始场景地图的明度(深浅)变化,将不同高度的区域之间的区别显露出来,使后续玩家通过地图便能够知道哪里的地势高,哪里的地势低。
124.206、获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到待处理游戏场景的目标场景地图。
125.在本技术实施例中,待处理游戏场景中有些人文建筑等场景模型可能绘制有特殊的花纹,或者配置有特殊的武器等,是人文建筑的标志性图案或配置,因此,在本技术实施例中,地图生成工具会获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到待处理游戏场景的目标场景地图,使玩家能够直接在目标场景地图上找到这些特殊的标志性建筑,快速定位自己想要前往或者当前所处位置。
126.在一个可选地实施方案中,确定场景细节并进行添加的过程如下:
127.首先,地图生成工具会确定预设像素,按照预设像素,在待处理游戏场景的正上方对待处理游戏场景进行场景截取,得到待处理游戏场景的场景俯瞰图。也即该场景俯瞰图是由地图生成工具对真实的待处理游戏场景进行截取得到的,且可以配置截取后的场景俯瞰图的图像素大小,保证清晰度和效率。需要说明的是,在截取场景俯瞰图时,需要忽略待处理场景中的阴影、光照、透视关系,实际应用的过程中可以得到图2i所示的场景俯瞰图,场景俯瞰图是带有颜色的,颜色与待处理游戏场景的实际情况匹配,图2i中并未展示颜色。
128.随后,地图生成工具识别场景俯瞰图,在场景俯瞰图上提取多个场景模型的模型细节作为场景细节,并在中间场景地图中确定多个场景模型对应的模型区域,将场景细节
绘制在模型区域,得到目标场景地图。实际应用的过程中,可以得到图2j所示的目标场景地图,需要说明的是,目标场景地图是带有颜色的,颜色与待处理游戏场景的实际情况匹配,图2j中并未展示颜色。
129.这样,通过执行上述步骤201至步骤206中的过程,便为待处理游戏场景自动生成了精确的目标场景地图,该目标场景地图也即应用在游戏中,为玩家提供游戏参考。需要说明的是,图2b至图2j是以图2i所示的游戏场景为例,距离说明各个图的具体样式的示意图,实际应用的过程中,待处理游戏场景的真实场景是什么样式的,就会得到什么样式的区域图、高度图、等高线图,并不限制与图2b至图2j所示的地图一致。
130.综上,本技术提出的地图生成方法的具体过程如下:
131.参见图2k,获取待处理游戏场景,确定待处理游戏场景包括的多个场景模型,判断场景模型的模型属性是否为人文建筑。根据模型属性为人文建筑的场景模型,生成人文建筑图;对于模型属性不是人文建筑的场景模型,判断场景模型的尺寸是否大于等于尺寸阈值,根据尺寸大于等于尺寸阈值的场景模型,生成地表模型图,尺寸小于尺寸阈值的场景模型确定为小型杂物,不进行输出。接着,查询待处理游戏场景包括的多个地表材质,为多个地表材质中每个地表材质生成地表材质图,得到多个地表材质图。然后,确定待处理场景包括的全部水域,识别全部水域的水域覆盖范围,将水域覆盖范围输出,采用预设颜色对水域覆盖范围进行填充,得到水域范围图。同时,查询全部水域中每个水域的水域深度,在全部水域中提取水域深度大于深度阈值的深水域,将深水域的深水覆盖范围输出,并采用预设颜色对深水覆盖范围进行填充,得到深水图,水域深度低于深度阈值的浅水域忽略。随后,地图生成工具生成待处理游戏场景的多个高度图,根据多个高度图,对人文建筑图、地表模型图、多个地表材质图、水域范围图、深水图进行截取,将这些图中最高部分输出为有效区域进行展示,并以不同的颜色区分这些有效区域,得到初始场景地图。随后,地图生成工具按照多个高度图生成等高线图,按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图,并在待处理游戏场景的场景俯瞰图上提取场景细节添加在中间场景地图上,得到最终的目标场景地图。
132.本技术实施例提供的方法,根据待处理游戏场景中的场景模型、地表材质、水域范围生成多个区域图,构建待处理游戏场景的多个高度图,基于多个高度图将多个区域图进行截取,得到待处理游戏场景的初始场景地图,并生成待处理游戏场景的等高线图,按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图,接着获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到目标场景地图。本技术的技术方案根据待处理游戏场景的地貌、建筑生成各个区域图,且直接截取各个区域图中需要进行展示的区域进行填色,并辅以等高线图增加地图的明度变化,将建筑细节加工在地图上形成最终的地图,不仅能够自动快速精准生成地图,而且无需开发人员手动绘制,节省大量的人力物力,提高地图的生成效率。
133.进一步地,作为图1所述方法的具体实现,本技术实施例提供了一种地图生成装置,如图3所示,所述装置包括:生成模块301,截取模块302,调整模块303和添加模块304。
134.该生成模块301,用于确定待处理游戏场景,生成所述待处理游戏场景的多个区域图,所述多个区域图根据所述待处理游戏场景中的场景模型、地表材质、水域范围生成;
135.该截取模块302,用于构建所述待处理游戏场景的多个高度图,基于所述多个高度
图将所述多个区域图进行截取,得到所述待处理游戏场景的初始场景地图;
136.该调整模块303,用于生成所述待处理游戏场景的等高线图,按照所述等高线图,对所述初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图;
137.该添加模块304,用于获取所述待处理游戏场景的场景细节,将所述场景细节添加至所述中间场景地图,得到所述待处理游戏场景的目标场景地图。
138.在具体的应用场景中,该生成模块301,用于确定所述待处理游戏场景包括的多个场景模型,根据所述多个场景模型的模型属性,生成所述待处理游戏场景的人文建筑图和地表模型图;查询所述待处理游戏场景包括的多个地表材质,为所述多个地表材质中每个地表材质生成地表材质图,得到多个地表材质图;在所述待处理场景中确定所述水域范围,按照所述水域范围的水域深度,生成所述待处理游戏场景的水域图;将所述人文建筑图、所述地表模型图、所述多个地表材质图、所述水域图作为所述多个区域图。
139.在具体的应用场景中,该生成模块301,用于读取所述多个场景模型的模型属性,在所述多个场景模型中提取所述模型属性指示人文建筑的第一场景模型,根据所述第一场景模型的外轮廓,输出所述人文建筑图,所述人文建筑图中所述第一场景模型的外轮廓填充有预设颜色;同时或分别在所述多个场景模型中确定除所述第一场景模型外的其他场景模型,在所述其他场景模型中提取尺寸大于等于尺寸阈值的第二场景模型,根据所述第二场景模型的外轮廓,输出所述地表模型图,所述地表模型图中所述第二场景模型的外轮廓填充有所述预设颜色。
140.在具体的应用场景中,该生成模块301,用于对于所述多个地表材质中每个地表材质,确定所述地表材质的材质覆盖范围,将所述材质覆盖范围输出,并采用预设颜色对所述材质覆盖范围进行填充;确定所述地表材质与其他地表材质的结合处,统计所述地表材质在所述结合处的材质比例,所述其他地表材质是所述多个地表材质中除当前的所述地表材质外的地表材质;按照所述材质比例,对所述材质覆盖范围中填充在所述结合处的所述预设颜色的深浅度进行调整,得到所述地表材质的地表材质图;重复执行上述生成地表材质图的过程,分别为所述每个地表材质生成地表材质图,得到所述多个地表材质图。
141.在具体的应用场景中,该生成模块301,用于确定所述待处理场景包括的全部水域,识别所述全部水域的水域覆盖范围,将所述水域覆盖范围输出;采用预设颜色对所述水域覆盖范围进行填充,得到水域范围图;查询所述全部水域中每个水域的水域深度,在所述全部水域中提取水域深度大于深度阈值的深水域;将所述深水域的深水覆盖范围输出,并采用所述预设颜色对所述深水覆盖范围进行填充,得到深水图;将所述水域范围图和所述深水图作为所述水域图。
142.在具体的应用场景中,该截取模块302,用于确定所述待处理游戏场景的场景最低点和场景最高点,所述场景最高点是所述待处理游戏场景中除模型属性指示人文建筑的第一场景模型外的其他场景模型的最高点;以所述场景最低点为基准,向上每达到预设高度差,对所述待处理游戏场景进行横截面处理,直至达到所述场景最高点,得到所述待处理游戏场景的多个场景横截面;采用预设颜色对所述多个场景横截面进行填充,得到所述多个高度图。
143.在具体的应用场景中,该截取模块302,用于按照所述多个高度图的指示,截取所述多个区域图中每个区域图的最高区域,得到多个最高区域;采用预设颜色对所述多个最
高区域进行填充,输出包括填充后的所述多个最高区域的场景图;分别确定所述多个区域图中每个区域图对应的区域填充色,得到多个区域填充色;对于所述多个区域填充色中每个区域填充色,确定所述区域填充色对应的目标区域图,在所述场景图中查询所述目标区域图的目标最高区域;在所述场景图中采用所述区域填充色对所述目标最高区域进行填充;重复执行上述填充区域填充色的过程,在所述场景图中分别对所述多个最高区域中每个最高区域进行填充,得到所述初始场景地图。
144.在具体的应用场景中,该调整模块303,用于识别所述多个高度图中每个高度图中填充有预设颜色的场景横截面的横截面轮廓线,得到所述多个高度图的多个横截面轮廓线;将所述多个横截面轮廓线进行叠加,为所述多个横截面轮廓线中每两个横截面轮廓线之间的区域进行颜色填充,生成所述等高线图。
145.在具体的应用场景中,该添加模块304,用于确定预设像素,按照所述预设像素,在所述待处理游戏场景的正上方对所述待处理游戏场景进行场景截取,得到所述待处理游戏场景的场景俯瞰图;识别所述场景俯瞰图,在所述场景俯瞰图上提取多个场景模型的模型细节作为所述场景细节;在所述中间场景地图中确定所述多个场景模型对应的模型区域,将所述场景细节绘制在所述模型区域,得到所述目标场景地图。
146.本技术实施例提供的装置,根据待处理游戏场景中的场景模型、地表材质、水域范围生成多个区域图,构建待处理游戏场景的多个高度图,基于多个高度图将多个区域图进行截取,得到待处理游戏场景的初始场景地图,并生成待处理游戏场景的等高线图,按照等高线图,对初始场景地图中多个场景高度的颜色深浅进行调整,得到中间场景地图,接着获取待处理游戏场景的场景细节,将场景细节添加至中间场景地图,得到目标场景地图。本技术的技术方案根据待处理游戏场景的地貌、建筑生成各个区域图,且直接截取各个区域图中需要进行展示的区域进行填色,并辅以等高线图增加地图的明度变化,将建筑细节加工在地图上形成最终的地图,不仅能够自动快速精准生成地图,而且无需开发人员手动绘制,节省大量的人力物力,提高地图的生成效率。
147.需要说明的是,本技术实施例提供的一种地图生成装置所涉及各功能单元的其他相应描述,可以参考图1和图2a至图2k中的对应描述,在此不再赘述。
148.在示例性实施例中,参见图4,还提供了一种计算机设备,该计算机设备包括总线、处理器、存储器和通信接口,还可以包括输入输出接口和显示设备,其中,各个功能单元之间可以通过总线完成相互间的通信。该存储器存储有计算机程序,处理器,用于执行存储器上所存放的程序,执行上述实施例中的地图生成方法。
149.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的地图生成方法的步骤。
150.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本技术可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施场景所述的方法。
151.本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本技术所必须的。
152.本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
153.上述本技术序号仅仅为了描述,不代表实施场景的优劣。
154.以上公开的仅为本技术的几个具体实施场景,但是,本技术并非局限于此,任何本领域的技术人员能思之的变化都应落入本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献