掌桥专利:专业的专利平台
掌桥专利
首页

一种虚拟地形生成方法、装置、电子设备及可读存储介质

文献发布时间:2024-04-18 19:52:40


一种虚拟地形生成方法、装置、电子设备及可读存储介质

技术领域

本申请涉及计算机领域,具体涉及一种虚拟地形生成方法、装置、电子设备及计算机可读存储介质。

背景技术

在游戏中,一张精确或风格鲜明的场景地图能在一定程度上提高游戏的质量,提升用户的体验。在游戏地图的制作过程中,虚拟地形的制作是制作场景地图关键的一环。

在一种虚拟地形制作方法中,虚拟地形制作包括地形策划阶段和美术制作阶段。其中,地形策划阶段需要策划人员制作地形布局结构的设计草图,然后由美术人员参照地形结构的设计草图,在地形编辑器中,利用地形编辑器提供的画笔等工具,手动的搭建与地形结构的设计草图相对应的地形,呈现出地形高低起伏。比如,策划人员在地形结构的设计草图中的指定位置设计了固定尺寸的墙体,美术人员需要在地形编辑器中手动还原设计图中指定位置以及固定尺寸的墙体。

上述方式中,在地形的美术制作阶段,设计阶段的草图仅作为参照,美术人员需要耗费大量的精力才能还原设计草图中的地形,若设计草图有修改,需要美术人员一一对应的手动修改,在制作地形过程中,存在繁复的重复工作,地形生成效率不高。

发明内容

本申请提供了一种虚拟地形生成方法、装置、电子设备及计算机可读存储介质,能够充分利用地形策划阶段的设计草图,提高虚拟地形的生成效率。

第一方面,本申请实施例提供了一种虚拟地形生成方法,方法包括:

获取地形草图文件,所述地形草图文件包括构成虚拟地形的地形元素;

确定所述地形元素的地形特征;

确定所述地形元素在所述虚拟地形中所属的地形区域;

根据所述地形元素的地形特征,调整所述地形区域的地形数据,得到所述虚拟地形。

第二方面,本申请实施例提供了一种虚拟地形生成装置,装置包括:获取单元、确定单元以及生成单元;

所述获取单元,用于获取地形草图文件,所述地形草图文件包括构成虚拟地形的地形元素;

所述确定单元,用于确定所述地形元素的地形特征;

所述确定单元,还用于确定所述地形元素在所述虚拟地形中所属的地形区域;

所述生成单元,用于根据所述地形元素的地形特征,调整所述地形区域的地形数据,得到所述虚拟地形。

第三方面,本申请实施例提供了一种电子设备,包括:

处理器;以及

存储器,用于存储数据处理程序,该电子设备通电并通过处理器运行该程序后,执行如第一方面的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,存储有数据处理程序,该程序被处理器运行,执行如第一方面的方法。

本申请具有以下优点:用户可以在使用方法简单的表格工具中设计地形草图,然后电子设备通过获取地形草图文件,该地形草图文件中包括构成虚拟地形的地形元素,电子设备在读取地形草图文件中的地形元素之后,确定该地形元素的地形特征,地形特征用于表征虚拟地形的地表形态,比如地表的纹理特征和高度特征。进一步确定出该地形元素在虚拟地形中所属的地形区域,即,确定该地形元素在虚拟地形中的占地面积,然后根据地形元素的地形特征,调整地形元素对应的地形区域的地形数据,得到虚拟地形。

可见,本申请实施例提供的虚拟地形生成方法,能够充分复用地形草图文件生成虚拟地形,简化了虚拟地形的制作流程,提高了地形生成效率。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1本申请实施例提供的游戏策划阶段的虚拟地形的设计草图的一例示意图;

图2为本申请实施例提供的相关技术中在地形编辑器中参照设计草图进行地形编辑的编辑界面的界面示意图;

图3为本申请实施例提供的虚拟地形生成方法的一例流程图;

图4为本申请实施例提供的获取地形草图文件的图形用户界面的一例示意图;

图5本申请实施例提供的采用虚拟地形生成方法生成的虚拟地形的显示一例示意图;

图6为本申请实施例提供的虚拟地形生成装置的结构示意图;

图7为本申请实施例提供用于生成虚拟地形的电子设备结构框图。

具体实施方式

在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。

需要说明的是,本申请的权利要求书、说明书及附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,并不用于描述特定的顺序或先后次序。这样使用的数据在适当情况下是可以互换的,以便于本文所描述的本申请的实施例,能够以除了在本文图示或描述的内容以外的顺序实施。此外,术语“包括”、“具有”以及他们的变形形式,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

应当理解,在本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或者两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含A、B和/或C”是指包含A、B、C三者中任1个或任2个或3个。

应当理解,在本申请实施例中,“与A对应的B”、“与A相对应的B”、“A与B相对应”或者“B与A相对应”,表示B与A相关联,根据A可以确定B。根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。

在详细说明本申请的实施方式之前,首先对本实施例涉及的相关概念进行介绍。

地形编辑器是一种可以让游戏开发人员创建、编辑和修改游戏中的地形的工具,通常是一个独立的软件模块集成在游戏引擎中,或者也可以是游戏内的一个可视化的编辑器。

虚拟地形,虚拟地形可以理解为在大世界场景下的地形,如山川、平原、河流或沙漠等地形,或者也可以是据点场景下的地形,如一座城市中的城墙、道路或房屋等地形资源。

纹理,可以包括使物体表面呈现凹凸不平的沟纹或者物理的光滑表面上的彩色图案,在本实施例中,可以在制作虚拟地形时对虚拟地形添加纹理,使虚拟地形更加逼真,更加贴近显示生活中所看到的地形,比如用于生成地形中的平原草地的纹理、村庄草地的纹理、火山岩的纹理、沙漠的纹理等。

地形元素,在本实施例中,地形元素是表示地表形态类型的基本单元,如山脊、沟谷或河流等,通过地形元素的不同空间组合可形成多种虚拟地形。

地形网格,地形网格就是通过很多位置不同的正方形单元格组成的一张网格,在地形制作过程中,通过改变网格中某些顶点的高度值,就可以形成高低起伏的地形;或者对网格进行纹理填充,就可以展现不同沟纹或不同图案的地形环境。

接下来,对相关技术进行进一步介绍。

在一种虚拟地形生成方法中,制作虚拟地形包括地形策划阶段和美术制作阶段。其中,地形策划阶段需要策划人员制作地形结构的设计草图,通常情况下,策划人员制作地形结构的设计草图时,主要聚焦于与故事发展相匹配的地形元素的布局以及地形元素的设计等,例如,在以户外自然风景为主的游戏中,策划人员需要根据故事发展确定沙漠、城池、虚拟对象移动路线或者植被分布等地形元素,以及这些地形元素之间的布局。因此,在地形的设计草图中需要反映出地形元素的类型标识以及地形元素在虚拟地形中的位置,以使其他开发人员可以通过设计草图清楚地了解虚拟地形的平面布局。在实际应用中,策划人员通常使用的制作设计草图的工具通常可以是能够清楚表达各地形元素之间的相对位置关系的表格工具,例如,表格工具可以是word或者excel等。参照图1,图1是本申请实施例提供的游戏策划阶段的一种虚拟地形的设计草图。该设计草图中,可以通过不同的标识指示不同的地形元素,且通过地形元素的标识在草图中的位置可以指示该地形元素在虚拟地形中的位置,例如,在一种塔防游戏场景的地形草图设计过程中,以颜色标识各种地形元素。如图1所示的黑色区域可以表示怪物出生的区域,灰色区域可以表示与怪物进行对战的虚拟角色的摆放区域,白色区域表示怪物可以移动的区域。又如,在一种野外风景游戏中,图1所示的黑色区域可以表示火山,灰色区域可以表示为沙漠,白色区域表示为植被。

然后由美术人员参照上述设计草图,在地形编辑器中,利用地形编辑器提供的笔刷等工具,手动的搭建与图1所示的设计草图相对应的地形。参照图2,图2是本申请实施例提供的在地形编辑器中参照设计草图进行地形编辑的编辑界面200的界面示意图。比如,美术人员需要按照图1所示的地形布局设计,在编辑界面200通过选取的笔刷手动还原图1的地形布局,即,草图中黑色区域对应设计怪物出生地形,白色区域对应设计怪物移动路线地形,灰色区域对应设计与怪物进行对战的虚拟角色的摆放地形。美术人员需要准确的在地形编辑器中手动搭建怪物出生地、怪物移动路线以及与怪物进行对战的虚拟角色的摆放地之间的布局关系以及各地形的高低起伏形态。

上述方式中,美术人员需要耗费大量的精力才能还原设计草图中的地形,若设计草图有修改,需要美术人员一一对应的手动修改,在制作地形过程中,存在繁复的重复工作,虚拟地形的生成效率不高。

另外,当游戏中的场景较多时,可能需要针对每个场景分别绘制对应的地形草图,然后通过上述美术人员手动在美术编辑器中绘制与草图对应的虚拟地形的方式才能实现,地形生成效率低下。同时,在参照地形草图在地形编辑器中生成虚拟地形时,需要有较高的专业性,非美术人员无法生成地形,即,对美术人员的要求较高,学习成本较高。

基于上述存在的问题,发明人考虑到相关技术中的地形生成技术,通常采用地形网格来模拟生成地形,网格中的单元网格作为整块地形的一个地形块。这与地形草图设计阶段采用的表格工具类似,都是通过格子来表示地形的布局,因此,本申请考虑将地形草图中的表格与虚拟地形中的地形网格进行关联,进而将策划人员想要在草图表格的每个格子中表达的地形元素应用至虚拟地形的地形网格中,实现地形草图的复用,提高虚拟地形的生成效率。

基于上述构思,本申请实施例提供了一种虚拟地形生成方法、装置、电子设备以及计算机可读存储介质。本申请实施例提供的虚拟地形生成方法可以由电子设备执行,该电子设备可以为终端或者服务器等设备。该终端可以为智能手机、平板电脑、笔记本电脑等终端设备。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。

下面通过具体实施例对本申请的技术方案进行详细说明。需要说明的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。

如图3所示,图3为本申请实施例提供的虚拟地形生成方法的一例流程图。需要说明的是,可以以不同于该方法流程图中示出的逻辑顺序执行所示出的步骤。该方法可以包括如下步骤S310~步骤S340。

步骤S310:获取地形草图文件,地形草图文件包括构成虚拟地形的地形元素。

在本实施例中,地形草图文件为地形策划阶段的策划人员制作的地形设计草图,该地形草图文件中包括构成虚拟地形的地形元素,且可以用于指示各地形元素在虚拟地形中的分布情况,即可以表示虚拟地形的平面布局。

在本实施例中,地形草图文件可以是包含有表格形式的地形草图的文件,例如,可以是xls文件、包含有表格形式的地形草图的word文件或者包含有表格形式的地形草图的图片文件等所有可以承载表格形式的地形草图的文件,本实施例不具体限制。

采用表格承载地形草图是为了能够直观的表达各地形元素在虚拟地形中的位置分布。具体实施例中,可以对地形草图中用于构成地形元素的各个元素单元设置单元位置,每个元素单元即占用表格中的一个单元格,该单元位置可以理解为位置坐标,通过该位置坐标可以准确定位到构成某种地形元素的元素单元在地形草图中的位置。参照图1,图1示出了6×6的一张地形草图,每个元素单元都对应有自己的位置坐标,该位置坐标可以理解为在地图草图中基于表格预设的行号和列号。比如,图1中左上角第一个单元格的位置坐标为(1,1),表示该单元格处于地形草图的表格中的第一行第一列。可以理解的是,在地形草图的设计阶段,该表格中每个格子的形状和长度不做限制。本实施例中仅以尺寸相同的单元格组成的表格展示地形草图为例进行说明。

可以理解的,上述地形元素是地形策划阶段的策划人员在草图中预设的至少一种地形元素。本实施例中,可以对不同的地形元素赋予不同的标识来标记地形元素。地形元素的标识可以包括文字、颜色或者形状符号标记等。例如,参照图1,图1示出的地形草图中包括三种地形元素,假设这三种地形元素分别为怪物出生地、怪物移动路线和与怪物进行对战的虚拟角色的摆放位置。策划人员在设计地形草图时,可以分别对这三种地形设置不同的标识,比如,以文字作为标识,图1中采用了字母作为标识,A表示与怪物进行对战的虚拟角色的摆放位置这一地形元素,B表示怪物出生地这一地形元素,C表示怪物移动路线这一地形元素。

具体实施方式中,针对高度不同的同类型地形元素可以赋予不同的标识,比如,对于高低不一的墙体,高的墙体和低的墙体可以设置为不同的标识。即,在本实施例中,一种标识所表示的地形元素的高度值相同。换言之,本实施例中,策划阶段设计地形元素时,地形元素的数量除了根据地形元素的类型来确定之外,还需要考虑同一类型的地形元素的高度特征。

在具体实施时,虚拟地形可能是不规则的,因此在地形草图的设计阶段,设计的各地形元素所占用的单元格所组成的草图形状并不一定是正方形,为了后续方便利用草图生成虚拟地形,可以对未占用满的单元格进行补齐处理,最终生成一个正方形的地形草图,对于补齐的单元格赋予其特定的标识。

在一种可选的实施例中,电子设备获取地形草图文件可以通过在地形编辑器中设置导入控件并操控该导入控件,实现获取地形草图文件的功能。即,将通过地形草图文件生成虚拟地形的功能嵌入至现有的地形编辑器中,在不改变地形编辑器的功能的基础上,实现基于地形草图文件生成虚拟地形。参照图4,图4是本申请实施例提供的获取地形草图文件的图形用户界面示意图。在图4所示的图形用户界面400中,设置导入控件40,当用户触发该导入控件40时,可以进入电子设备的本地存储空间查找并获取地形草图文件。

或者,在一些实施例中,上述获取地形草图文件的获取也可以通过语音获取或者通过特定手势、快捷键来触发获取指令,本实施例不具体限制。可以理解的,在本实施例中涉及到的各种指令,均可以通过语音、触发控件、特定手势或者快捷键等方式触发,后续不再赘述。

步骤S320:确定地形元素的地形特征。

上述地形元素的地形特征用于表示地形元素在虚拟地形中的地表形态。可选的实施例中,地形特征可以包括纹理特征和高度特征。其中,纹理特征用于增加地形元素拟真性,高度特征用于调整地形元素的高度值。

在一些实施例中,步骤S320中可以通过对地形草图中的各地形元素的标识所对应的地形元素预先设置相应的地形特征。或者,在一些实施例中,在通过导入控件400获取到地形草图文件后,会读取地形草图文件中的至少一个地形元素的标识,并在图形用户界面400中进行显示。具体的实施例中,可以在图形用户界面400中显示设置界面41,设置界面41中包括上述地形元素的标识和每个地形元素对应的地形特征的第一输入控件。地形开发人员可以通过地形特征的第一输入控件对地形草图中每个地形元素赋予其对应的地形特征,电子设备通过接收用户在设置界面中的第一输入控件中输入的地形元素的地形特征来确定地形元素的地形特征。

可选的实施例中,在上述设置界面41中还可以显示地形草图文件在电子设备本地的存储路径,用户可以通过触发该存储路径,对获取的地形草图文件进行更换。

参照图4,地形元素对应的特征变量可以包括纹理特征和/或高度特征。即,第一输入控件可以包括输入纹理特征的编辑控件和/或输入高度特征的输入控件。

第一输入控件中输入的地形元素的纹理特征具体可以采用如下方式,响应于对纹理特征的编辑控件的触发指令,在图形用户界面中显示上述地形元素的至少一个候选纹理特征;响应于对至少一个候选纹理特征的选择指令,获得该地形元素的纹理特征。可以理解的,上述候选纹理特征是预先存储的可用的纹理贴图。

设置界面中41中还可以包括地形元素对应的高度特征的输入控件;可以理解的是,地形元素对应的高度特征的输入控件可以是一个文本输入框,用户在所述文本输入框中输入地形元素的高度特征;或者,可以上述编辑控件43是一个选择控件,可以通过上下滑动,获得地形元素对应的高度特征。电子通过接收用于在该文本输入框输入的高度值,并将其确定为地形元素的高度特征。

比如,对于图1中标识B表示的怪物出生地这一地形元素,可以对其纹理特征设置为泥地纹理,在生成的虚拟场景中,怪物出生地则表现为泥地,高度特征设置为-1,则该泥地可以表现为泥坑,即将原本的地形高度值向下进行调整。

步骤是330:确定地形元素在虚拟地形中所属的地形区域。

在一种实施例中,具体可以通过如下方法确定地形元素在虚拟地形中所属的地形区域。首先读取构成所述地形元素的元素单元在所述地形草图文件中的第一单元位置;生成所述虚拟地形的地形网格区域,所述地形网格区域中的网格位置与所述地形草图文件中的单元位置相对应;在所述地形网格区域中查找与所述第一单元位置相对应的第一网格位置,得到所述地形元素在所述虚拟地形中所属的地形区域。

可以理解的是,地形草图文件是表格文件,在表格文件中通过多个元素单元构成地形元素,如图1所示的地形元素B,构成地形元素B的元素单元有4个,即图1中黑色的四个单元格构成地形元素B。每一个用于存储地形元素的元素单元都有其对应的位置坐标,因此,可以读取地形元素在地形草图文件中的位置坐标得到第一单元位置。比如,图1所示的地形草图文件中,各地形元素的第一单元位置如表1所示。可以理解的,表1仅是部分地形元素的部分单元位置示例。其中,地形元素A对应的第一单元位置为(2,2)时,表示构成地形元素A的元素单元位于地形草图中第二行第二列。

表1地形元素的元素单元在地形草图文件中第一单元位置示例

可以理解的是,上述虚拟地形的地形网格区域即为生成的虚拟地形的占地面积大小,且将所占面积划分为网格的形式。具体实施例中,虚拟地形对应的地形网格可以按照下述方法确定。

获取虚拟地形的起始位置以及单位网格尺寸,然后根据虚拟地形的起始位置以及单位网格尺寸,生成虚拟地形的地形网格区域。其中,虚拟地形的起始位置可以用起始坐标来确定。该起始坐标为绘制地形网格区域时建立的坐标系中的坐标值,且该坐标系可以是相对坐标系也可以是绝对坐标系。相对坐标系可以理解为生成该虚拟地形时单独建立的只用于该虚拟地形坐标系,绝对坐标系可以理解为生成该虚拟地形时采用的世界坐标系。当坐标系为相对坐标系时,虚拟地形的位置可以是相对坐标系的原点坐标(0,0),第一单元位置为(2,2)时,即表示第一单元位置(2,2)所指示的元素单元在虚拟地形的相对坐标系中对应的第一网格位置为(2,2)。所谓单位网格尺寸即为构成地形网格的每一个网格的尺寸,即单位网格可以表示一个地形块的占地面积。在本实施例中,单位网格尺寸的度量单位可以是米,比如,当单位网格的尺寸为2×2,则表示单位网格的占地面积为4平方米。当然,单位网格尺寸的度量单位也可以是其他单位,比如厘米或英尺等,本实施例不具体限制。

具体实施例中,根据虚拟地形的起始位置以及单位网格尺寸,生成虚拟地形的地形网格区域具体包括如下步骤:读取地形草图文件中第一预设方向的单元格数量和第二预设方向的单元格数量,然后根据所述单位网格尺寸、所述第一预设方向的单元格数量和所述第二预设方向的单元格数量,以所述起始位置为起点,生成所述虚拟地形的地形网格区域。

其中,上述第一预设方向和第二预设方向相互垂直。可以理解的是,第一预设方向和第二预设方向可以是图1所示的地形草图文件中的行方向或者列方向,行方向可以是向右,列方向可以是向下。

确定单位网格尺寸可以包括如下任意一种实施方式,通过读取预设的单位网格尺寸,或者参照图4,在图形用户界面40中的设置界面41中显示有单位网格尺寸的第二输入控件,电子设备接收在图形用户界面中用户在第二输入控件中输入的单位网格尺寸,获得地形网格的单位网格尺寸。即,分别对图4中单位网格尺寸对应的X变量和Y变量进行赋值。

具体的,可以将地形草图文件中第一预设方向和第二预设方向的单元格数量分别确定为地形网格区域在第一预设方向和第二预设方向的网格数量。比如,地形草图文件为6×6的元素单元组成的表格,那么,地形网格区域的网格也是6×6。进而根据单位网格尺寸,可以确定出地形网格的区域尺寸,比如上述单位网格尺寸为2米×2米,则地形网格区域为12米×12米,占地面积为144平方米。

可以理解的,在地形草图文件中第一预设方向和第二预设方向的单元格数量与地形网格区域在第一预设方向和第二预设方向的网格数量相同的情况下,生成的地形网格区域中的网格位置与地形草图文件中的元素单元的单元位置相对应。比如,当地形元素的第一单元位置为(2,2)时,可以在地形网格区域中查找位置坐标(2,2)相对应的网格区域,并将位置坐标(2,2)对应的网格区域作为地形元素在地形区域中所属的地形区域。

可选的具体实施例中,上述以起始位置为起点,生成虚拟地形的地形网格区域可以理解为:以起始位置为起点,可以沿第一预设方向和第二预设方向生成虚拟地形的地形网格区域。比如第一预设方向为向右,第二预设方向为向下,则以起始位置为起点,向右向下生成地形网格区域。

步骤S340:根据地形元素的地形特征,调整地形区域的地形数据,得到虚拟地形。

可以理解的,上述生成的虚拟地形是三维虚拟地形,如图5所示,图5是本实施提供的一例虚拟地形的显示示意图。图5所示的虚拟地形的显示示意图即为图1所示的地形草图对应的一例虚拟地形。

上述调整地形区域的地形数据,可以理解为对地形区域的原有地形特征进行变更。在一种可选的实施例中,地形元素的地形特征可以包括纹理特征和/或高度特征。所述根据所述地形元素的地形特征,调整所述地形区域的地形数据具体可以包括:根据所述纹理特征对所述地形区域进行纹理填充,和/或,根据所述高度特征调整所述地形区域的地形高度。

可见,用户可以在使用方法简单的表格工具中设计地形草图,然后电子设备通过获取地形草图文件,该地形草图文件中包括构成虚拟地形的地形元素,电子设备在读取地形草图文件中的地形元素之后,确定该地形元素的地形特征,地形特征用于表征虚拟地形的地表形态,比如地表的纹理特征和高度特征。进一步确定出该地形元素在虚拟地形中所属的地形区域,即,确定该地形元素在虚拟地形中的占地面积,然后根据地形元素的地形特征,调整地形元素对应的地形区域的地形数据,得到虚拟地形。

可见,本申请实施例提供的虚拟地形生成方法,能够充分复用地形草图文件生成虚拟地形,简化了虚拟地形的制作流程,提高了地形生成效率。

接下来,对本申请提供的部分可选的实施例进行介绍。

在一些实施例中,本申请提供的虚拟地形生成方法除了生成整个虚拟地形,也可以用于生成大地形场景中的部分虚拟地形,比如,针对大世界游戏,会包括不同的地形场景,有沙漠地形,热带雨林地形或者城市地形等。在这种游戏中,地形草图可以是不同策划人员分区域设计的或者是分批次设计的,即,这种情况下会存在多个地形草图文件,在生成虚拟地形时会存在分批次生成各地形草图文件分别对应的虚拟地形,由多个虚拟地形拼接构成大地形场景。比如先生成沙漠地形,然后在具有沙漠地形的基础上再生成热带雨林地形,构成具有沙漠地形和热带雨林地形的大地形场景。本申请提供的虚拟地形生成方法时,需要能够实现将多个地形草图文件分批次导入,逐步拼接生成大地形场景的功能。因此,本实施例提供的虚拟地形的生成方法还包括如下步骤S350。

步骤S350:读取虚拟地形所属的地形场景的场景文件。

上述地形场景即为大地形场景,或称为大世界地形。场景文件可以理解为包括多种虚拟地形的地形场景的文件。

这种情况下,步骤S310中获取的地形草图文件为地形场景中对应的部分虚拟地形。相应的,生成所述虚拟地形的地形网格区域,包括:在所述地形场景中生成所述虚拟地形的地形网格区域。

上述在地形场景中生成虚拟地形的地形网格区域,需要确定虚拟地形从地形场景中的哪个位置开始生成虚拟地形,以达到将每个批次生成的虚拟地形直接拼接为完整的地形场景。因此,上述在地形场景中生成虚拟地形的地形网格区域,首先需要获取所述虚拟地形在所属地形场景中的起始位置,然后以地形场景中的起始位置为起点,在所述地形场景中生成所述虚拟地形的地形网格区域。

在本实施例中,为了使生成的虚拟地形与地形场景中其余虚拟地形之间可以进行准确的位置布局,在地形场景中生成虚拟地形时,地形场景中的位置坐标为世界坐标。在地形场景中生成所述虚拟地形的地形网格区域时需要注意对地形草图文件中的元素单元的单元位置进行坐标转换,以得到每个元素单元在地形场景中对应的世界坐标。在本实施例中,对元素单元的单元位置进行坐标转换时,可以通过将元素单元的单元位置乘以单位网格尺寸,获得元素单元的单元位置在地形场景中的偏移量。例如,第一单元位置为表1中的位置坐标(3,4),单位网格尺寸为2米×2米,即,第一单元位置(3,4)在地形场景中的偏移量为从坐标(0,0)开始,沿第一预设方向移动6米,沿第二预设方向移动8米,得到第一单元位置在地形场景中的世界坐标(6,8)。即,地形草图文件中位于(3,4)元素单元的地形元素在地形场景中的生成位置为(6,8),换言之,在地形草图文件中位于(3,4)元素单元的地形元素,根据该元素单元的地形元素的纹理特征和高度特征对地形场景中的位置坐标为(6,8)的网格进行纹理填充和高度调整。上述虚拟地形在所属地形场景中的起始位置可以理解为在地形场景中用于生成虚拟地形的起点位置的位置坐标。例如,起始位置的位置坐标可以为地形场景中的坐标(0,0),即,表示在地形场景中的坐标为(0,0)的位置处生成地形草图文件对应的虚拟地形。

在确定出地形场景中生成虚拟地形的起始位置后,在地形场景中生成虚拟地形网格区域的方法可以参照前述直接生成虚拟地形网格区域的方法,此处不再赘述。

可选的具体实施例中,在生成虚拟地形的地形网格区域过程中,当虚拟地形的地形网格区域大于以起始位置坐标为起点的地形场景的尺寸时,可以扩大地形场景的尺寸,以使地形场景能够包含地形草图文件所对应的虚拟地形。

可以理解的,参照图4,可以在设置界面41中显示起始位置坐标的第三输入控件,电子设备接收用户在图形用户界面中第三输入控件输入的数值,获得起始位置坐标。

在一种实施例中,前述设置界面41中还包括生成控件,在通过上述设置界面对地形元素的地形特征、起始位置或者单位网格尺寸设置完成后,触发该生成控件,生成针对虚拟地形的生成指令,电子设备响应于该针对虚拟地形的生成指令,根据获取到的地形元素和地形元素的地形特征,生成虚拟地形,并将其显示在图形用户界面中。即,用户在通过地形编辑器获取地形草图文件后,电子设备读取地形草图文件中的地形元素的标识,然后将地形元素的标识显示在设置界面41中,用户通过设置界面41,依次设置每个地形元素的标识对应的纹理特征、高度特征、起始位置坐标以及单位网格尺寸,之后,只需要点击生成控件44,即可生成虚拟地形。可见,在该实施例中,在利用地形草图文件生成虚拟地形时,可以通过可视化的方式进行地形元素的地形特征设置,进而生成虚拟地形。

至此,对本实施例提供的方法进行了说明,本申请实施例提供的虚拟地形生成方法,可以基于策划阶段的地形草图文件生成虚拟地形,简化虚拟地形的制作过程,降低地形编辑器的使用门槛,提高虚拟地形的生成效率,从而提高游戏开发效率。

另外,还可以使得策划人员通过这种高效的虚拟地形生成方法生成的三维虚拟地形,直观的感受虚拟地形的实际效果,进而对地形布局进行优化调整,不仅可以提高虚拟地形的生成效率,还可以提高虚拟地形的生成质量。

与本申请实施例提供的虚拟地形生成方法相对应的,本申请实施例还提供了一种虚拟地形生成装置600,如图6所示,该装置包括:获取单元601、确定单元602以及生成单元603;

所述获取单元601,用于获取地形草图文件,所述地形草图文件包括构成虚拟地形的地形元素;

所述确定单元602,用于确定所述地形元素的地形特征;

所述确定单元602,还用于确定所述地形元素在所述虚拟地形中所属的地形区域;

所述生成单元603,用于根据所述地形元素的地形特征,调整所述地形区域的地形数据,得到所述虚拟地形。

可选的,所述确定单元602,具体用于读取构成所述地形元素的元素单元在所述地形草图文件中的第一单元位置;生成所述虚拟地形的地形网格区域,所述地形网格区域中的网格位置与所述地形草图文件中的单元位置相对应;在所述地形网格区域中查找与所述第一单元位置相对应的第一网格位置,得到所述地形元素在所述虚拟地形中所属的地形区域。

可选的,所述获取单元601,还用于读取所述虚拟地形所属的地形场景的场景文件;

所述生成单元603,具体用于在所述地形场景中生成所述虚拟地形的地形网格区域。

可选的,所述确定单元602,具体还用于获取所述虚拟地形在所属地形场景中的起始位置坐标以及所述虚拟地形的单位网格尺寸;根据所述起始位置坐标和所述单位网格尺寸,生成所述虚拟地形的地形网格区域。

可选的,所述确定单元602,具体还用于读取所述地形草图文件中的第一预设方向的网格数量和第二预设方向的网格数量,所述第一预设方向与所述第二预设方向相互垂直;根据所述单位网格尺寸、所述第一预设方向的网格数量和所述第二预设方向的网格数量,以所述起始位置为起点,生成所述虚拟地形的地形网格区域。

可选的,所述地形元素的地形特征包括纹理特征和/或高度特征。

所述生成单元603,具体用于根据所述纹理特征对所述地形区域进行纹理填充,和/或,根据所述高度特征调整所述地形区域的地形高度。

可选的,所述装置600还包括显示单元604;

所述显示单元604,用于通过终端显示图形用户界面,所述图形用户界面显示有地形元素对应的地形特征的第一输入控件;

所述确定单元602,还用于接收在所述图形用户界面的所述第一输入控件中输入的所述地形元素的地形特征。

可选的,所述显示单元604,还用于在图形用户界面显示有所述单位网格尺寸的第二输入控件;所述确定单元602,还用于接收在所述图形用户界面的所述第二输入控件中输入的单位网格尺寸。

可选的,所述显示单元604,还用于在所述图形用户界面显示由所述起始位置坐标的第三输入控件;所述确定单元602,还用于接收在所述图形用户界面的所述第三输入控件中输入的起始位置坐标。

与本申请实施例提供的一种虚拟地形生成方法相对应的,本申请实施例还提供了一种用于生成虚拟地形的电子设备,如图7所示,电子设备包括:处理器701;以及存储器702,用于存储虚拟地形生成方法的程序,该设备通电并通过处理器运行该虚拟地形生成方法的程序后,执行如下步骤:

获取地形草图文件,所述地形草图文件包括构成虚拟地形的地形元素;

确定所述地形元素的地形特征;

确定所述地形元素在所述虚拟地形中所属的地形区域;

根据所述地形元素的地形特征,调整所述地形区域的地形数据,得到所述虚拟地形。

与本申请实施例提供的虚拟地形生成方法相对应的,本申请实施例还提供了一种计算机可读存储介质,存储有虚拟地形生成方法的程序,该程序被处理器运行,执行下述步骤:

获取地形草图文件,所述地形草图文件包括构成虚拟地形的地形元素;

确定所述地形元素的地形特征;

确定所述地形元素在所述虚拟地形中所属的地形区域;

根据所述地形元素的地形特征,调整所述地形区域的地形数据,得到所述虚拟地形。

需要说明的是,对于本申请实施例提供的装置、电子设备及计算机可读存储介质的详细描述可以参考对本申请方法实施例的相关描述,这里不再赘述。

本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

在一个典型的配置中,区块链节点的计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读操作、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。

技术分类

06120116330113