CN113856201A - 一种游戏地貌创建方法、系统、存储介质及计算设备 - Google Patents
一种游戏地貌创建方法、系统、存储介质及计算设备 Download PDFInfo
- Publication number
- CN113856201A CN113856201A CN202111144521.0A CN202111144521A CN113856201A CN 113856201 A CN113856201 A CN 113856201A CN 202111144521 A CN202111144521 A CN 202111144521A CN 113856201 A CN113856201 A CN 113856201A
- Authority
- CN
- China
- Prior art keywords
- landform
- map
- game
- data
- attribute
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Geometry (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供了一种游戏地貌创建方法、系统、存储介质及计算设备,该方法包括:获取场景地图的地图属性;若分析地图属性为随机地图,查找与随机地图中各地图块分别对应的预制地貌数据,其中,随机地图由多个地图块随机动态组装;将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,依据转换到同一坐标系的位置信息对相应的地貌数据进行组合;根据组合后的地貌数据在场景地图上创建游戏地貌。本发明实施例通过对各个地图块对应的地貌数据中的位置统一标准并进行重新组合,有效地方便了对随机地图中任意地图块的地貌数据的查找导航,解决了多地图块动态组装的地图场景跨模块导航的问题。
Description
技术领域
本发明涉及游戏场景技术领域,特别是一种游戏地貌创建方法、系统、存储介质及计算设备。
背景技术
现有开发游戏中,游戏场景内容为预设定好的,地表信息和导航信息固定且单调,部分游戏会将现实环境的季度通过资料片等形式更新迭代场景,亦或提前准备多个场景进行切换加载。例如,常见游戏地图多为事先设计好的,导航信息绑定在固定的一个大场景上,无法实现多场景块动态拼接,及拼接组合后跨场景块导航等问题。再例如,场景中地貌固有化,无法实时模拟真实环境地表信息变化,如无法实时模拟天气下雪时水面会结冰导致移动打滑,下雨时地面会产生积水导致某些地表不可行走。另外,现有技术在寻路过程中如果场景发生动态障碍物的生成和销毁会重新计算所有格子的连通性,导致性能损耗。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的游戏地貌创建方法、系统、存储介质及计算设备,能够方便地对随机地图中任意地图块的地貌数据的查找导航,解决了多地图块动态组装的地图场景跨模块导航的问题,奠定了实现完备场景拼接的基础,提高了游戏场景的可玩性。
根据本发明实施例的一方面,提供了一种游戏地貌创建方法,包括:
获取场景地图的地图属性;
若分析所述地图属性为随机地图,查找与所述随机地图中各地图块分别对应的预制地貌数据,其中,所述随机地图由多个地图块随机动态组装;
将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,依据转换到同一坐标系的位置信息对相应的地貌数据进行组合;
根据组合后的地貌数据在所述场景地图上创建游戏地貌。
可选地,获取场景地图的地图属性之前,所述方法还包括:
通过地貌数据编辑器接收对各地图块手动配置的预制地貌数据并保存;和/或
通过地貌数据编辑器自动化读取场景美术资源地信息,依据所述场景美术资源地信息自动配置预制地貌数据并保存。
可选地,获取场景地图的地图属性之后,所述方法还包括:
若分析所述地图属性为预制地图,加载与所述预制地图对应的预制地貌文件;
根据所述预制地貌文件中的信息在所述场景地图上创建游戏地貌。
可选地,所述预制地貌数据还包含地貌属性和地貌高度数据,根据组合后的地貌数据在所述场景地图上创建游戏地貌之后,所述方法还包括:
若检测到改变地貌的游戏事件,依据所述游戏事件的内容信息对所创建游戏地貌的地貌属性进行相应调整;根据调节地貌属性后的地貌数据更新所述场景地图上的游戏地貌;和/或
若检测到改变地貌高度的移动物体,确定地貌高度产生变化的地图区域;对地貌高度产生变化的地图区域重新计算地貌高度数据;利用重新计算后的地貌高度数据更新所述场景地图上的游戏地貌。
可选地,预先定义预制地貌数据的最小储存单位为地貌小格;
依据所述游戏事件的内容信息对所创建游戏地貌的地貌属性进行相应调整包括:依据所述游戏事件的内容信息对所创建游戏地貌包含的各地貌小格的地貌属性分别进行相应调整;
对地貌高度产生变化的地图区域重新计算地貌高度数据包括:对地貌高度产生变化的地图区域对应的各地貌小格重新计算地貌高度数据。
可选地,确定地貌高度产生变化的地图区域,包括:根据所述移动物体移动前后帧的边界数据确定地貌高度产生变化的地图区域;
对地貌高度产生变化的地图区域重新计算地貌高度数据,包括:通过射线检测方式重新计算地貌高度产生变化的地图区域内的地貌高度数据。
可选地,所述预制地貌数据还包含地貌属性和地貌高度数据分别对应的可通行性属性,更新所述场景地图上的游戏地貌之后,还包括:
获取调整后的地貌属性对应的可通行性属性和/或重新计算后的地貌高度数据对应的可通行性属性;
若针对任一地貌小格获取到的所有可通行性属性为可通行,将对应地貌小格的可通行性属性更新为可通行;
若针对任一地貌小格获取到至少一个可通行性属性为不可通行,将对应地貌小格的可通行性属性更新为不可通行;
根据更新后的可通行性属性采用预设寻路算法重新进行寻路计算。
可选地,所述方法还包括:
将更新可通行性属性后的地貌数据发送至游戏逻辑模块,由所述游戏逻辑模块执行对应的逻辑操作;
其中,所述游戏逻辑模块包括玩家操作逻辑模块、游戏角色行为逻辑模块中的至少一项。
可选地,将更新可通行性属性后的地貌数据发送至游戏逻辑模块,由所述游戏逻辑模块执行对应的逻辑操作,包括:
若改变地貌的游戏事件调整所述地貌属性为冰面属性,且针对所述冰面属性更新对应地貌小格的可通行性属性为可通行,将包含可通行属性的地貌数据发送至游戏角色行为逻辑模块,由所述游戏角色行为逻辑模块控制游戏角色产生速度减慢、移动打滑、遭受伤害中的至少一项行为;
若改变地貌的游戏事件调整所述地貌属性为水面属性,且针对所述水面属性更新对应地貌小格的可通行性属性为不可通行,将包含不可通行属性的地貌数据发送至玩家操作逻辑模块,由所述玩家操作逻辑模块阻止玩家操作游戏角色移动至不可通行的地图区域。
根据本发明实施例的另一方面,还提供了一种游戏地貌创建系统,包括:
获取单元,适于获取场景地图的地图属性;
查找单元,适于若分析所述地图属性为随机地图,查找与所述随机地图中各地图块分别对应的预制地貌数据,其中,所述随机地图由多个地图块随机动态组装;
组合单元,适于将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,依据转换到同一坐标系的位置信息对相应的地貌数据进行组合;
创建单元,适于根据组合后的地貌数据在所述场景地图上创建游戏地貌。
根据本发明实施例的另一方面,还提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行上文任意实施例的游戏地貌创建方法。
根据本发明实施例的另一方面,还提供了一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行上文任意实施例的游戏地貌创建方法。
本发明实施例,在分析所述地图属性为随机地图后,查找与所述随机地图中各地图块分别对应的预制地貌数据,并将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,进而可依据转换到同一坐标系的位置信息对相应的地貌数据进行组合,最后根据组合后的地貌数据在所述场景地图上创建游戏地貌。由此,本发明实施例通过对各个地图块对应的地貌数据中的位置统一标准并进行重新组合,有效地方便了对随机地图中任意地图块的地貌数据的查找导航,解决了多地图块动态组装的地图场景跨模块导航的问题,奠定了实现完备场景拼接的基础,提高了游戏场景的丰富性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了根据本发明一实施例的游戏地貌创建方法的流程示意图;
图2示出了根据本发明一实施例的游戏地貌数据的编辑器的一个编辑界面示意图;
图3a和图3b分别示出了根据本发明不同实施例的移动物体动态阻挡示意图;
图4示出了根据本发明一实施例的寻路小格的结构示意图;
图5示出了根据本发明一实施例的游戏地貌创建系统的结构示意图;
图6示出了根据本发明一实施例的游戏地貌创建系统的结构示意图;
图7示出了根据本发明一实施例的游戏地貌创建系统的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
为解决上述技术问题,本发明实施例提供了一种游戏地貌创建方法,该方法可以应用于Unity游戏引擎。图1示出了根据本发明一实施例的游戏地貌创建方法的流程示意图。参见图1,该方法包括步骤S102至步骤S108。
步骤S102,获取场景地图的地图属性。
步骤S104,若分析地图属性为随机地图,查找与随机地图中各地图块分别对应的预制地貌数据,其中,随机地图由多个地图块随机动态组装。
步骤S106,将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,依据转换到同一坐标系的位置信息对相应的地貌数据进行组合。
在该实施例中,不同地图块对应的预制地貌数据可以保存于不同的地貌文件中,例如,随机地图包含地图块a、地图块b和地图块c,地图块a、地图块b和地图块c分别对应地貌文件a、地貌文件b和地貌文件c,可以将各个地貌文件中的位置信息转换为同一坐标系下的位置,将转换位置信息后的地貌数据进行组合,并将组合后的地貌数据加载至随机地图块。
步骤S108,根据组合后的地貌数据在场景地图上创建游戏地貌。
本发明实施例通过对各个地图块对应的地貌数据中的位置统一标准并进行重新组合,有效地方便了对随机地图中任意地图块的地貌数据的查找导航,解决了多地图块动态组装的地图场景跨模块导航的问题,奠定了实现完备场景拼接的基础,提高了游戏场景的丰富性。
本发明实施例还提供了地貌数据的编辑器,供开发者预先设置模块化的地貌数据。在执行步骤S102获取场景地图的地图属性之前,通过地貌数据编辑器对各地图块配置地貌数据,配置方式可以包含两种。第一种,通过地貌数据编辑器接收对各地图块手动配置的预制地貌数据并保存。第二种,通过地貌数据编辑器自动化读取场景美术资源地信息,依据场景美术资源地信息自动配置预制地貌数据并保存。这两种配置方式可以同时实现。下面以图2为例介绍手动配置地貌数据的方式。
参见图2,地貌数据编辑器的编辑界面上展示出了配置区域和显示区域。开发者可以在右侧配置区域手动设置或调节参数,同时根据设置或调节的参数将相应的地貌展示于左侧的显示区域中,开发者从显示区域可直观地浏览地貌。例如,开发者在编辑器里打开场景美术资源,在配置区域配置地貌的“起点”、“终点”、“高度”、“可通行性属性”等参数,从而建立覆盖场景的地貌数据。
在本发明实施例中,地貌数据由若干大小相同的正方形小格构成,其大小相同且可通过“方格大小”参数调节。每个地貌小格是地貌数据的最小储存单位,每个地貌小格对应的地貌数据由一个32位的整数值存贮,可以至多存储32位信息,每种属性位所具备特性都可以由开发者在配置表里动态扩展,并标记相应的属性。例如,地貌小格的第2位属性为“水面”,“水面”的可通过性为“否”,通行速度为“0”,第2位若为“1”,则表明对应地貌为“水面”,“水面”的各项特性将会影响此地貌小格;第2位若为“0”,则反之。
本发明实施例可以批量配置和修改多个小格属性,通常可以对属性相同的小格进行批量配置和修改,从而提高预制地貌数据的配置效率,还可以对地图块进行选择性染色以方便开发人员直观地察看。当然,本发明实施例的编辑器还可以提供快捷读取功能,通过自动化读取场景美术资源地信息,以快速建立地貌。
在配置完成地貌数据后,编辑器可以自动保存地貌数据,并将地貌数据储存为二进制文件,二进制文件经解码后每位可表示不同含义。例如,第一行为40,40,-10,-10,1.00,0.5,从前到后每位的含义为小格总列数,小格总行数,起点X坐标,起点Z坐标,地貌绝对高度,小格大小。其他行包含小格的属性,小格的相对高度,小格的属性,小格的相对高度等等。
通过编辑器配置完成并保存预制地貌数据后,在执行步骤S104时,可以方便地从编辑器保存的地貌数据中直接查找与随机地图中各地图块分别对应的预制地貌数据。
在本发明实施例中,场景地图的地图属性除了包含由多个可复用的地图块随机动态组装的随机地图,还可以包含预制地图,预制地图是预先已经制作完成的地图。在获取场景地图的地图属性之后,若分析地图属性为预制地图,则可以直接加载与预制地图对应的预制地貌文件,并根据预制地貌文件中的信息在场景地图上创建游戏地貌。即若分析地图属性为预制地图,在进入游戏场景时会加载为地图场景预制的地貌文件,并根据地貌文件中记录的信息重建地貌。重建地貌的地貌数据根据文件信息进行初始化,是预制地貌数据的独立拷贝,此后重建地貌将会在预制地貌数据的基础上进行动态改变,但是不会影响源预制地貌文件的信息,从而可以方便对地貌文件模块化地复用。
参见上文步骤S106,由于随机地图是由若干可复用的地图块(模块化场景资源)随机动态组装而成,因此,也需要对地图场景的地貌信息进行相应的动态组装。在将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系的过程中,可以将各地图块对应的预制地貌数据中的位置信息转换到世界坐标系下,通过将各个地图块对应的地貌数据中的位置统一到世界坐标系下,使得随机地图的各个地图块对应的地貌数据都包含统一标准的位置信息,从而可以方便对随机地图中任意地图块处的地貌数据的查找导航。
例如,预制地貌数据中的起点位置为(40,40),而随机地图的地图块实际坐标为(100,100),则地貌应该于世界坐标的(140,140)处重建。依次重建所有地图块的地貌后,将这些地图块的地貌重新组合成一张完整的场景地貌,并且可以定义最左下角的地图块索引为(0,0),并基于最左下角的地图块索引为所有地图块生成新的索引。
在本发明一实施例中,预制地貌数据还包含地貌属性,在执行步骤S106根据组合后的地貌数据在场景地图上创建游戏地貌之后,若检测到改变地貌的游戏事件,还可以依据游戏事件的内容信息对所创建游戏地貌的地貌属性进行相应调整,并根据调节地貌属性后的地貌数据更新场景地图上的游戏地貌。地貌属性可以包括如冰面、水面、草地等等自然属性,本发明实施例对此不作限定。
该实施例中,改变地貌的游戏事件可以包含玩家操作行为和/或游戏世界的逻辑事件。游戏中玩家的某些操作行为或游戏世界的逻辑事件可能会产生改变地貌的影响,例如,原本河流的地貌属性为“水面”,当游戏世界的逻辑事件为游戏世界转变为冬季时,此处的“水面”属性将改变为“冰面”,相关区域的所有地图块的“水面”位将由“1”置为“0”,“冰面”位将由“0”置为“1”,致其“水面”的相关属性将去除,并替换为“冰面”的相关属性,并且地貌属性的“不可通行”将更改为“可通行”,而且通行速度还可以从“0”变更为“0.2”,并将获得“易滑倒”等“冰面”的特殊性质。
在本发明实施例中,在游戏场景中并不全是静态的物体,可移动的物体产生了位移则相对应的地貌也要发生改变,并后续会影响到寻路。本发明实施例的预制地貌数据还包含地貌高度数据,若检测到改变地貌高度的移动物体后,先确定地貌高度产生变化的地图区域,然后对地貌高度产生变化的地图区域重新计算地貌高度数据,并利用重新计算后的地貌高度数据更新场景地图上的游戏地貌。
在可选实施例中,在确定地貌高度产生变化的地图区域时,可以根据移动物体移动前后帧的边界数据(bound数据)确定地貌高度产生变化的地图区域。物体的bound数据可以提供包围盒的对角两点的位置,当这类物体移动时,可以根据物体移动前后帧的bound数据得到地形产生变化的地图块区域。如图3a和图3b所示,假设移动物体前一帧所在区域为A,移动后的所在区域为B,则变化的区域为A∪B,移动物体移动前后的区域可能重叠,也可能不重叠。图3a和图3b中的细线条方框为起始点,粗线条方框区域为终点,方格所在区域为地貌高度产生变化的待检测区域。
在可选实施例中,在对地貌高度产生变化的地图区域重新计算地貌高度数据时,可以通过射线检测方式重新计算地貌高度产生变化的地图区域内的地貌高度数据。对地貌高度产生变化的地图区域通过射线检测可以重新计算得到每一个小格的地貌高度,进而可以利用计算后的地貌高度数据更新产生变化的地图块区域原来的地貌高度数据。
该实施例的射线检测是指在待检测区域内从每个小格中心上方一个较高的位置垂直向下作一条射线,射线遇到地貌和阻挡物都会停止,记射线终点的高度为实际高度并更新地貌高度数据。
由此,本发明实施例有效地解决了场景中的地貌固有化问题,可动态地改变游戏地貌属性,能实时模拟游戏世界中的环境变化,实现游戏地貌的动态改变,提升玩家代入感,并使游戏世界更加真实。
在本发明实施例中,由于地图地貌改变之后可能会影响到寻路,因此在上文实施例中更新场景地图上的游戏地貌之后,还需要重新进行动态寻路。该实施例的预制地貌数据还包含与地貌属性和地貌高度数据分别对应的可通行性属性。例如,受到游戏事件的影响,游戏中的某些地貌属性将从“水面”改变为“冰面”,其对应的可通行性属性也会因此产生动态改变,由“不可通行”改变为“可通行”的属性。再例如,游戏世界中某地图区域的地貌高度增加之前为“可通行”,在地貌高度增加后变为“不可通行”。
由此,本发明实施例在获取调整后的地貌属性对应的可通行性属性和/或重新计算后的地貌高度数据对应的可通行性属性后,若针对任一地貌小格获取到的所有可通行性属性为可通行,则将对应地貌小格的可通行性属性更新为可通行。若针对任一地貌小格获取到至少一个可通行性属性为不可通行,则将对应地貌小格的可通行性属性更新为不可通行。
该实施例先遍历调整后的地貌数据对应的可通行性属性,每个小格都将会重新获得唯一确定的更新后的可通行性属性,这是基于“与运算”得到的,即所有正在起效的所有可通行性属性位的可通行性为“真”,其可通行性的结果才为“真”。例如,若一个地图块的至少一个地貌属性对应的可通过性均是“可通行”,则该地图块的可通行性属性为“可通行”,若一个地图块的至少一个地貌属性对应的可通过性均为“不可通行”,则该地图块的可通行性属性为“不可通行”。
进而,可以根据更新后的可通行性属性采用预设寻路算法重新进行寻路计算。由于本发明实施例的地貌数据由若干大小相同的正方形地貌小格构成,因此预设寻路算法可以采用A*寻路算法(A-star寻路算法),该实施例的A*寻路算法包含如下步骤a至d。
a.将玩家所在的小格记为起点,目的地小格记为终点,将初始考察小格记为玩家所在的小格,即首先选择起点作为考察小格。
b.计算考察小格四周所有可通行且未计算过值的小格的G值、H值以及G值和H值之和F值,其中,G值为此考察小格到起点的距离,H值为此考察小格到终点的距离。
c.选择所有已计算过值且未曾成为过考察小格的所有小格中F值最小的小格,将选择出的小格记为下一考察小格;
d.判断选择的考察小格是否为终点,若是,结束流程,若否,再次执行步骤b至d。
由此,本发明实施例在寻路过程中不断地寻找“F”值最小的小格,直到找到终点为止,并且最终寻路到的F值最小的小格构成了最短路径。
图4展示了本发明实施例的A*寻路算法的简单示例。其中,起点小格是A小格,终点是H值为0的小格。黑线框内小格和白线框内小格都曾是考察小格,黑线框内小格是最终构成最短路径的小格,白线框内小格是被淘汰的考察小格,剩余带有数字的小格是计算过值但未获得考察资格的小格。在各小格中,左上角的值为G值、右上角的值为H值,中间的值为F值。
由此,采用本发明实施例的方案在地图场景发生改变(如动态障碍物的生成和销毁)后,可以减小计算连通性耗时过长性能损耗,较小了寻路过程中动态障碍物的生成和销毁导致的性能损耗问题。
在本发明一实施例中,地貌数据的动态改变结果将最终反馈到游戏逻辑上。因此,还可以将更新可通行性属性后的地貌数据发送至游戏逻辑模块,以由游戏逻辑模块执行对应的逻辑操作,其中,游戏逻辑模块包括玩家操作逻辑模块、游戏角色行为逻辑模块中的至少一项。
结合上文实施例,由于“水面”改变为“冰面”,对应地貌属性的可通性会发生改变,因此将会影响玩家操作逻辑,并影响游戏中NPC(Non-Player Character,非玩家角色)的行为逻辑。本发明实施例可以通过相应的接口将更新后的地貌数据发送到其他游戏逻辑模块,例如可以以消息事件的方式通知其他游戏逻辑模块,使对应的游戏逻辑模块做出相应的响应和处理。
在本发明一可选实施例中,若改变地貌的游戏事件为下雪,该游戏事件可将地貌属性由水面属性调整为冰面属性,并且针对冰面属性更新对应地貌小格的可通行性属性变为可通行,在将包含可通行属性的地貌数据发送至游戏角色行为逻辑模块后,可由游戏角色行为逻辑模块控制游戏角色的行为产生变化,例如控制游戏角色的速度减慢,在冰面上行走时打滑(移动打滑),或者是行走至冰面上遭受伤害等等。若改变地貌的游戏事件为下雨,该游戏事件可将地貌属性变为水面属性,并且针对水面属性更新对应地貌小格的可通行性属性变为不可通行,在将包含不可通行属性的地貌数据发送至玩家操作逻辑模块后,可由玩家操作逻辑模块阻止玩家操作游戏角色移动至不可通行的地图区域,即通过玩家操作逻辑模块可以有效地阻止玩家操作游戏角色向有水的地图区域前进。
由此,本发明实施例不仅可以使得游戏场景地貌随着游戏事件的变化而产生变化,实时模拟真实环境地表信息变化,避免游戏场景的固有化,还能够随着游戏世界的地貌变化改变玩家的影响,如玩家所处地貌小格的当前属性为“冰面”,可影响玩家的通过速度、使玩家滑倒等,从而使得游戏世界更加真实,有效提升了玩家的代入感和游戏体验。
基于同一发明构思,本发明实施例还提供了一种游戏地貌创建系统,图5示出了根据本发明一实施例的游戏地貌创建系统的结构示意图。参见图5,游戏地貌创建系统包括获取单元510、查找单元520、组合单元530和创建单元540。
获取单元510,适于获取场景地图的地图属性;
查找单元520,适于若分析地图属性为随机地图,查找与随机地图中各地图块分别对应的预制地貌数据,其中,随机地图由多个地图块随机动态组装;
组合单元530,适于将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,依据转换到同一坐标系的位置信息对相应的地貌数据进行组合;
创建单元540,适于根据组合后的地貌数据在场景地图上创建游戏地貌。
参见图6,在本发明一实施例中,图5所示游戏地貌创建系统还包括配置单元550,适于在获取单元510获取场景地图的地图属性之前,通过地貌数据编辑器接收对各地图块手动配置的预制地貌数据并保存;和/或通过地貌数据编辑器自动化读取场景美术资源地信息,依据场景美术资源地信息自动配置预制地貌数据并保存。
在本发明一实施例中,创建单元540还适于在获取单元510获取场景地图的地图属性之后,若分析地图属性为预制地图,加载与预制地图对应的预制地貌文件;根据预制地貌文件中的信息在场景地图上创建游戏地貌。
参见图7,在本发明一实施例中,预制地貌数据还包含地貌属性和地貌高度数据,图5所示游戏地貌创建系统还包括更新单元560,适于在创建单元540根据组合后的地貌数据在场景地图上创建游戏地貌之后若检测到改变地貌的游戏事件,依据游戏事件的内容信息对所创建游戏地,貌的地貌属性进行相应调整;根据调节地貌属性后的地貌数据更新场景地图上的游戏地貌;和/或若检测到改变地貌高度的移动物体,确定地貌高度产生变化的地图区域;对地貌高度产生变化的地图区域重新计算地貌高度数据;利用重新计算的地貌高度数据更新场景地图上的游戏地貌。
在本发明一实施例中,更新单元560还适于根据移动物体移动前后帧的边界数据确定地貌高度产生变化的地图区域;通过射线检测方式重新计算地貌高度产生变化的地图区域内的地貌高度数据。
在本发明一实施例中,预先定义预制地貌数据的最小储存单位为地貌小格;更新单元560还适于依据游戏事件的内容信息对所创建游戏地貌包含的各地貌小格的地貌属性分别进行相应调整;并且对地貌高度产生变化的地图区域对应的各地貌小格重新计算地貌高度数据。
继续参见图7,在本发明一实施例中,预制地貌数据还包含地貌属性和地貌高度数据分别对应的可通行性属性,游戏地貌创建系统还包括重新计算单元570,适于获取调整后的地貌属性对应的可通行性属性和/或重新计算后的地貌高度数据对应的可通行性属性;若针对任一地貌小格获取到的所有可通行性属性为可通行,将对应地貌小格的可通行性属性更新为可通行;若针对任一地貌小格获取到至少一个可通行性属性为不可通行,将对应地貌小格的可通行性属性更新为不可通行;根据更新后的可通行性属性采用预设寻路算法重新进行寻路计算。
继续参见图7,在本发明一实施例中,游戏地貌创建系统还包括发送单元580,适于将更新可通行性属性后的地貌数据发送至游戏逻辑模块,由游戏逻辑模块执行对应的逻辑操作;其中,游戏逻辑模块包括玩家操作逻辑模块、游戏角色行为逻辑模块中的至少一项。
在本发明一实施例中,发送单元580还适于若改变地貌的游戏事件调整地貌属性为冰面属性,且针对冰面属性更新对应地貌小格的可通行性属性为可通行,将包含可通行属性的地貌数据发送至游戏角色行为逻辑模块,由游戏角色行为逻辑模块控制游戏角色产生速度减慢、移动打滑、遭受伤害中的至少一项行为;若改变地貌的游戏事件调整地貌属性为水面属性,且针对水面属性更新对应地貌小格的可通行性属性为不可通行,将包含不可通行属性的地貌数据发送至玩家操作逻辑模块,由玩家操作逻辑模块阻止玩家操作游戏角色移动至不可通行的地图区域。
基于同一发明构思,本发明实施例还提供了一种计算机存储介质,计算机存储介质存储有计算机程序代码,当计算机程序代码在计算设备上运行时,导致计算设备执行上文任意实施例的游戏地貌创建方法。
基于同一发明构思,本发明实施例还提供了一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当计算机程序代码被处理器运行时,导致计算设备执行上文任意实施例的游戏地貌创建方法。
所属领域的技术人员可以清楚地了解到,上述描述的系统、装置、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,为简洁起见,在此不另赘述。
另外,在本发明各个实施例中的各功能单元可以物理上相互独立,也可以两个或两个以上功能单元集成在一起,还可以全部功能单元都集成在一个处理单元中。上述集成的功能单元既可以采用硬件的形式实现,也可以采用软件或者固件的形式实现。
本领域普通技术人员可以理解:所述集成的功能单元如果以软件的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,其包括若干指令,用以使得一台计算设备(例如个人计算机,服务器,或者网络设备等)在运行所述指令时执行本发明各实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM),磁碟或者光盘等各种可以存储程序代码的介质。
或者,实现前述方法实施例的全部或部分步骤可以通过程序指令相关的硬件(诸如个人计算机,服务器,或者网络设备等的计算设备)来完成,所述程序指令可以存储于一计算机可读取存储介质中,当所述程序指令被计算设备的处理器执行时,所述计算设备执行本发明各实施例所述方法的全部或部分步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:在本发明的精神和原则之内,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离本发明的保护范围。
Claims (12)
1.一种游戏地貌创建方法,其特征在于,包括:
获取场景地图的地图属性;
若分析所述地图属性为随机地图,查找与所述随机地图中各地图块分别对应的预制地貌数据,其中,所述随机地图由多个地图块随机动态组装;
将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,依据转换到同一坐标系的位置信息对相应的地貌数据进行组合;
根据组合后的地貌数据在所述场景地图上创建游戏地貌。
2.根据权利要求1所述的方法,其特征在于,获取场景地图的地图属性之前,所述方法还包括:
通过地貌数据编辑器接收对各地图块手动配置的预制地貌数据并保存;和/或
通过地貌数据编辑器自动化读取场景美术资源地信息,依据所述场景美术资源地信息自动配置预制地貌数据并保存。
3.根据权利要求1所述的方法,其特征在于,获取场景地图的地图属性之后,所述方法还包括:
若分析所述地图属性为预制地图,加载与所述预制地图对应的预制地貌文件;
根据所述预制地貌文件中的信息在所述场景地图上创建游戏地貌。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述预制地貌数据还包含地貌属性和地貌高度数据,根据组合后的地貌数据在所述场景地图上创建游戏地貌之后,所述方法还包括:
若检测到改变地貌的游戏事件,依据所述游戏事件的内容信息对所创建游戏地貌的地貌属性进行相应调整;根据调节地貌属性后的地貌数据更新所述场景地图上的游戏地貌;和/或
若检测到改变地貌高度的移动物体,确定地貌高度产生变化的地图区域;对地貌高度产生变化的地图区域重新计算地貌高度数据;利用重新计算后的地貌高度数据更新所述场景地图上的游戏地貌。
5.根据权利要求4所述的方法,其特征在于,
所述确定地貌高度产生变化的地图区域,包括:根据所述移动物体移动前后帧的边界数据确定地貌高度产生变化的地图区域;
所述对地貌高度产生变化的地图区域重新计算地貌高度数据,包括:通过射线检测方式重新计算地貌高度产生变化的地图区域内的地貌高度数据。
6.根据权利要求4所述的方法,其特征在于,预先定义预制地貌数据的最小储存单位为地貌小格;
依据所述游戏事件的内容信息对所创建游戏地貌的地貌属性进行相应调整包括:依据所述游戏事件的内容信息对所创建游戏地貌包含的各地貌小格的地貌属性分别进行相应调整;
对地貌高度产生变化的地图区域重新计算地貌高度数据包括:对地貌高度产生变化的地图区域对应的各地貌小格重新计算地貌高度数据。
7.根据权利要求6所述的方法,其特征在于,所述预制地貌数据还包含地貌属性和地貌高度数据分别对应的可通行性属性,更新所述场景地图上的游戏地貌之后,还包括:
获取调整地貌属性后的各地貌小格对应的可通行性属性和/或重新计算地貌高度数据的各地貌小格对应的可通行性属性;
若针对任一地貌小格获取到的所有可通行性属性为可通行,将对应地貌小格的可通行性属性更新为可通行;
若针对任一地貌小格获取到至少一个可通行性属性为不可通行,将对应地貌小格的可通行性属性更新为不可通行;
根据更新后的可通行性属性采用预设寻路算法重新进行寻路计算。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
将更新可通行性属性后的地貌数据发送至游戏逻辑模块,由所述游戏逻辑模块执行对应的逻辑操作;
其中,所述游戏逻辑模块包括玩家操作逻辑模块、游戏角色行为逻辑模块中的至少一项。
9.根据权利要求8所述的方法,其特征在于,将更新可通行性属性后的地貌数据发送至游戏逻辑模块,由所述游戏逻辑模块执行对应的逻辑操作,包括:
若改变地貌的游戏事件调整所述地貌属性为冰面属性,且针对所述冰面属性更新对应地貌小格的可通行性属性为可通行,将包含可通行属性的地貌数据发送至游戏角色行为逻辑模块,由所述游戏角色行为逻辑模块控制游戏角色产生速度减慢、移动打滑、遭受伤害中的至少一项行为;
若改变地貌的游戏事件调整所述地貌属性为水面属性,且针对所述水面属性更新对应地貌小格的可通行性属性为不可通行,将包含不可通行属性的地貌数据发送至玩家操作逻辑模块,由所述玩家操作逻辑模块阻止玩家操作游戏角色移动至不可通行的地图区域。
10.一种游戏地貌创建系统,其特征在于,包括:
获取单元,适于获取场景地图的地图属性;
查找单元,适于若分析所述地图属性为随机地图,查找与所述随机地图中各地图块分别对应的预制地貌数据,其中,所述随机地图由多个地图块随机动态组装;
组合单元,适于将各地图块对应的预制地貌数据中的位置信息转换到同一坐标系,依据转换到同一坐标系的位置信息对相应的地貌数据进行组合;
创建单元,适于根据组合后的地貌数据在所述场景地图上创建游戏地貌。
11.一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行权利要求1-9中任一项所述的游戏地貌创建方法。
12.一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行权利要求1-9中任一项所述的游戏地貌创建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111144521.0A CN113856201A (zh) | 2021-09-28 | 2021-09-28 | 一种游戏地貌创建方法、系统、存储介质及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111144521.0A CN113856201A (zh) | 2021-09-28 | 2021-09-28 | 一种游戏地貌创建方法、系统、存储介质及计算设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113856201A true CN113856201A (zh) | 2021-12-31 |
Family
ID=78991907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111144521.0A Pending CN113856201A (zh) | 2021-09-28 | 2021-09-28 | 一种游戏地貌创建方法、系统、存储介质及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113856201A (zh) |
-
2021
- 2021-09-28 CN CN202111144521.0A patent/CN113856201A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102865872B (zh) | 路径生成系统以及路径生成方法 | |
CN106730841B (zh) | 一种寻路方法和装置 | |
CN107358649B (zh) | 地形文件的处理方法和装置 | |
CN110347769A (zh) | 多层级地图瓦片的处理方法、装置、设备和存储介质 | |
US8374792B2 (en) | System and method for multi-resolution routing | |
CN113066183A (zh) | 虚拟场景生成方法、装置、计算机设备和存储介质 | |
AU2023201616A1 (en) | Device and method for improving route planning computing devices | |
US9324032B2 (en) | Method of creating a computer model of the physical world | |
CN116611713B (zh) | 一种生态修复进程展示方法、系统、终端设备及存储介质 | |
CN111445576B (zh) | 地图数据的获取方法和装置、存储介质及电子装置 | |
CN114404984A (zh) | 游戏场景的数据处理方法、装置、计算机设备及介质 | |
RU2296368C2 (ru) | Способ отсечения линии и способ отображения трехмерного изображения на основе этого способа | |
US11846517B2 (en) | Vector tile navigation | |
CN112525208B (zh) | 城市道路地图快速构建方法和装置及设备 | |
CN113856201A (zh) | 一种游戏地貌创建方法、系统、存储介质及计算设备 | |
CN116764225A (zh) | 一种高效寻路的处理方法、装置、设备及介质 | |
CN116070321A (zh) | 乡村景观设计方法、装置、设备及存储介质 | |
CN112642148A (zh) | 一种游戏场景生成方法、装置及计算机设备 | |
CN113656979A (zh) | 路网数据生成方法、装置、电子设备及存储介质 | |
Maung et al. | Applying formal picture languages to procedural content generation | |
CN110935175A (zh) | 数据处理方法及装置 | |
KR102553026B1 (ko) | 경로 탐색을 위한 fdb 기반 로드맵 생성 장치 및 그 방법 | |
CN114332396B (zh) | 不同层级相邻地形过渡效果的实现方法和装置 | |
CN114332397B (zh) | 同层级相邻地形过渡效果的实现方法和装置 | |
CN112044077B (zh) | 水体配置方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |