【技术实现步骤摘要】
一种用于六边形密铺地图中山体生成的方法
[0001]本专利技术涉及互动媒体场景程序化生成领域,特别是涉及一种用于六边形密铺地图中山体生成的方法。
技术介绍
[0002]山脉效果是游戏等互动媒体中画面表现的重要组成部分,大多数涉及野外环境的互动媒体几乎都需要投入成本进行山脉效果的研发。而随着硬件技术的提高、研发软件的迭代,互动媒体中的山脉效果也需要有越来越丰富、逼真的表现,如需要较大地理跨度、较多地理元素的策略类游戏,是互动媒体中对山脉效果需求最旺盛的细分品类。尽管这些品类中已经诞生了许多高知名度、高收益、高单体付费的作品甚至作品系列(如《文明》系列、《三国志》系列等),但其表现效果仍有进步的空间:
[0003]1.该品类的手机端网络游戏由于手机硬件性能较差、游戏地图需要持续更新迭代、需要容纳大量玩家,因而地图体量巨大,所以往往采用资源开发较为简单的正方形密铺地图(如《率土之滨》、《三国志战略版》),但表现效果会出现重复性高、单调生硬的问题(图1)。
[0004]2.该品类的PC端游戏(如《文明》系列近期作品、《HumankinD》等)由于性能限制较小,通常采用六边形密铺地图提升可玩性与表现效果。但是由于这类游戏常常需要为每次开局随机生成地图,对地图生成的时间、性能有要求,因而生成的都是较为简单的、线性链接的山脉,难以做到连绵山脉的效果。同时也有重复性高、不够生动的问题(图2)。
[0005]3.目前学术界也有许多关于山体生成、山体侵蚀美化方面的研究。然而,一方面学界上缺乏可以用于大体量地图高性 ...
【技术保护点】
【技术特征摘要】
1.一种用于六边形密铺地图中山体生成的方法,其特征在于,包括如下步骤:S1:接收输入的的山体基础模块;S2:接收输入的地图中需要生成山脉的山脉区域的划定;S3:摆放山体基础模块以填充山脉区域,在地图中生成山体效果。2.根据权利要求1所述的方法,其特征在于,步骤S1中山体基础模块的制作方法包括如下步骤:S1
‑
1:根据项目需求生产山体模块,每个所述山体模块覆盖按特定方式排列的六边形网格区域,确定每个所述山体模块覆盖的面积后,为其生成简单基础形状进而得到高度图;S1
‑
2:对所述高度图进行细化制作得到基础模型;S1
‑
3:计算基础模型参数,得到山体基础模块。3.根据权利要求2所述的方法,其特征在于,步骤S1
‑
1中生成简单基础形状进而得到高度图的方法包括如下步骤:S1
‑1‑
1:对于每个所述山体模块覆盖的面积进行细分,设置至少1个顶点;S1
‑1‑
2:计算每个顶点到所述山体模块的外轮廓的最短距离;S1
‑1‑
3:将每个所述顶点的纵坐标设置为该顶点到所述外轮廓的最短距离;S1
‑1‑
4:纵向整体缩放每个所述顶点的纵坐标;S1
‑1‑
5:将外轮廓以及缩放后的顶点转为高度图。4.根据权利要求3所述的方法,其特征在于,步骤S1
‑
3中计算基础模型参数,得到山体基础模块的方法包括如下步骤:S1
‑3‑
1提取模块的边缘线,要求线上的每个点及其相邻的两个点不能都在同一直线上,否则删除该点并将该点的两个相邻点相连,重复本步骤直到所有点符合要求;S1
‑3‑
2对于区域的每个六边形,计算其每个顶点到步骤S1
‑3‑
1中得到的模块边缘线最近点的距离,取平均值记为D;S1
‑3‑
3对于区域的每个六边形,计算其中心点到D值最高的六边形的中心点的矢量距离,记为P;S1
‑3‑
4将所有六边形中最高的D值记为Dmax;S1
‑3‑
5将该模块覆盖六边形的数量记为A;S1
‑3‑
6将所有模块先按照A值从高到低排列,再按照Dmax值从高到低排列。5.根据权利要求4所述的方法,其特征在于,步骤S2中地图中需要生成山脉的山脉区域的划定的方法包括如下步骤:S2
‑
1:在大地图上划定需要生成山脉的区域,暂时删去不需要生成山脉的六边形,每个相连的区域即为一个山脉区域;S2
‑
2:对于步骤S2
‑
1中得到的每个山脉区域,进行步骤S1
‑3‑
2和步骤S1
‑3‑
4。6.根据权利要求5所述的方法,其特征在于,步骤S2中地图中需要生成山脉的山脉区域的划定可以由人工划定也可以由随机算法生成。7.根据权利要求5所述的方法,其特征在于,视每个六边形的边长为1,步骤S3中摆放山体模块以填充山脉区域包括如下步骤:S3
‑
1:预处理,令S、F为山...
【专利技术属性】
技术研发人员:闫广赫,聂晓梅,
申请(专利权)人:清华大学深圳国际研究生院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。