CN115501585A - 虚拟场景中的植被生成方法、装置和电子设备 - Google Patents

虚拟场景中的植被生成方法、装置和电子设备 Download PDF

Info

Publication number
CN115501585A
CN115501585A CN202210997361.2A CN202210997361A CN115501585A CN 115501585 A CN115501585 A CN 115501585A CN 202210997361 A CN202210997361 A CN 202210997361A CN 115501585 A CN115501585 A CN 115501585A
Authority
CN
China
Prior art keywords
vegetation
growth
preset
point
determining
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
Application number
CN202210997361.2A
Other languages
English (en)
Inventor
王向坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202210997361.2A priority Critical patent/CN115501585A/zh
Publication of CN115501585A publication Critical patent/CN115501585A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提供了一种虚拟场景中的植被生成方法、装置和电子设备,由游戏引擎获取虚拟场景中待生成植被的目标区域;基于控制第一植被的生长参数的随机性的第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;基于控制第二植被的生长参数的随机性的第二控制参数,在第一植被的指定范围内生成第二植被;第一植被与第二植被的植被体积和/或植被高度不同。该方式可通过控制参数控制目标区域内植被的生成参数的随机性,且在虚拟场景中嵌套生成大小不同的植被,从而可在虚拟场景具有层次感的同时,避免虚拟场景中植被的重复性和局限性;同时,该方式由游戏引擎自动完成,可提高虚拟场景搭建的效率。

Description

虚拟场景中的植被生成方法、装置和电子设备
技术领域
本发明涉及游戏场景设计技术领域,尤其是涉及一种虚拟场景中的植被生成方法、装置和电子设备。
背景技术
大世界游戏里,植被是游戏场景的自然环境中非常重要的组成部分。在游戏引擎中,植被的生成多借助引擎自带工具或相关插件生成,但是在借助工具所生成的游戏场景中,植被的生成规则多为单一性生成,即场景的生成为多次单一植被的物体叠加生成,使得游戏场景存在重复性高以及局限性等不足,影响玩家游戏体验。为了避免植被的重复性,还可借助引擎外置工具生成叠加类型或者具有层次感类型的植被,然后移植到游戏引擎中,但借助外置工具的方式,便利性与直观性较差,且学习难度较大,场景搭建效率较低。
发明内容
本发明的目的在于提供一种虚拟场景中的植被生成方法、装置和电子设备,以减少游戏场景的重复性,提升玩家游戏体验,并提升游戏场景搭建效率。
第一方面,本发明提供了一种虚拟场景中的植被生成方法,该方法应用于游戏引擎,该方法包括:获取虚拟场景中待生成植被的目标区域;基于预设的第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;其中,第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性;基于预设的第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性;其中,第一植被与第二植被的植被体积和/或植被高度不同。
第二方面,本发明提供了一种虚拟场景中的植被生成装置,该装置设置于游戏引擎,该装置包括:区域获取模块,用于获取虚拟场景中待生成植被的目标区域;第一植被生成模块,用于基于预设的第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;其中,第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性;第二植被生成模块,用于基于预设的第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性;其中,第一植被与第二植被的植被体积和/或植被高度不同。
第三方面,本发明提供了一种电子设备,该电子设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,该处理器执行机器可执行指令以实现上述虚拟场景中的植被生成方法。
第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,该计算机可执行指令促使处理器实现上述虚拟场景中的植被生成方法。
本发明实施例带来了以下有益效果:
本发明提供的一种虚拟场景中的植被生成方法、装置和电子设备,该方法应用于游戏引擎,首先获取虚拟场景中待生成植被的目标区域;进而基于第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;该第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性;然后基于第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性;其中,第一植被与第二植被的植被体积和/或植被高度不同。该方式可通过控制参数控制目标区域内植被的生成参数的随机性,且在虚拟场景中嵌套生成大小不同的植被,从而可在虚拟场景具有层次感的同时,避免虚拟场景中植被的重复性和局限性;同时,该方式由游戏引擎自动完成,可提高虚拟场景搭建的效率。
本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种虚拟场景中的植被生成方法的流程图;
图2为本发明实施例提供的另一种虚拟场景中的植被生成方法的流程图;
图3为本发明实施例提供的一种目标区域的显示示意图;
图4为本发明实施例提供的另一种虚拟场景中的植被生成方法的流程图;
图5为本发明实施例提供的虚拟场景中的植被示意图;
图6为本发明实施例提供的一种虚拟场景中的植被生成装置的结构示意图;
图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
大世界游戏里,植被是游戏场景的自然环境中非常重要的组成部分。在游戏引擎中,植被的生成多借助引擎自带工具或相关插件生成,但是在借助工具所生成的游戏场景,虽然在生成点算法方面,引入了随机性因子,让植被分布更加自然,不过这些工具生成的游戏场景仍然存在重复性高、死板以及局限性等不足之处,不能满足特定的撒点需求,影响玩家游戏体验。在现有的方法中,Houdini工具可以借助一系列节点,形成植被的层次感(也即是借助Houdini工具建立植被的叠加场景或者建立具有层次感的植被规则),但此方法必须借助Houdini工具生成,然后移植到游戏引擎中,其便利性与直观性较差,后期调节也较难。
基于上述问题,本发明实施例提供了虚拟场景中的植被生成方法、装置和电子设备,该技术可以应用于各种虚拟场景的植被创建场景中,尤其是游戏场景中的植被创建。
为了便于对本发明实施例进行理解,首先对本发明实施例提供的一种虚拟场景中的植被生成方法进行详细介绍,该方法应用于游戏引擎,该游戏引擎可以是Unity引擎、UE4引擎等,如图1所示,该方法包括如下具体步骤:
步骤S102,获取虚拟场景中待生成植被的目标区域。
在具体实现时,上述目标区域可以是用户根据需求在虚拟场景中任意设置的,也可以是根据虚拟场景中的布局设定的,还可以是根据虚拟场景中的地形特征随机选取的,在此不做具体限定。
步骤S104,基于预设的第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;其中,第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性。
上述第一控制参数可以控制目标区域内第一植被的生长参数,以使目标区域内生成的第一植被具有一定的随机性。该第一植被的生长参数包括生长密度、植被大小、植被高度中的一种或者多种。具体地,第一植被的生长密度用于指示目标区域内第一植被的数量;第一植被的植被大小和植被高度可以预先设置有多种,可基于第一随机因子随机从预先设置的多种第一植被中选取一种或者多种,作为目标区域内第一植被的植被大小和植被高度。
在具体实现时,可以根据第一植被的生长密度,在目标区域内确定多个第一位置点,然后在第一位置点上生成通过第一随机因子确定了植被大小和植被高度的第一植被。
步骤S106,基于预设的第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性。
上述第二控制参数可以控制在第一植被的指定范围内生成的第二植被的生长参数,以使指定范围内生成的第二植被具有一定的随机性。该第二植被的生长参数包括生长密度、植被大小、植被高度中的多种。具体地,第二植被的生长密度用于指示指定范围内第二植被的数量;第二植被的植被大小和植被高度可以预先设置有多种,可基于第二随机因子随机从中选取一种或者多种,作为指定范围内第二植被的植被大小和植被高度。
在具体实现时,相对于第一植被的指定范围可以是第一植被周围的某一区域,该区域可以是第一植被周围的圆环区域,也可以是第一植被的某一方向上的一定区域,还可以是第一植被的某几个方向上的一定区域。
需要说明的是,上述第一植被与第二植被的植被体积和/或植被高度不同,具体地,第一植被可仅与第二植被的植被体积不同,例如,第一植被的植被体积大于第二植被的植被体积;第一植被也可仅与第二植被的植被高度不同,例如,第一植被的植被高度高于第二植被的植被高度;第一植被还可以与第二植被的植被高度和植被体积均不同。在实际应用中,植被可以是树木、花、草等。
本发明实施例提供的一种虚拟场景中的植被生成方法,该方法应用于游戏引擎,首先获取虚拟场景中待生成植被的目标区域;进而基于第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;该第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性;然后基于第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性;其中,第一植被与第二植被的植被体积和/或植被高度不同。该方式可通过控制参数控制目标区域内植被的生成参数的随机性,且在虚拟场景中嵌套生成大小不同的植被,从而可在虚拟场景具有层次感的同时,避免虚拟场景中植被的重复性和局限性;同时,该方式由游戏引擎自动完成,可提高虚拟场景搭建的效率。
本发明实施例还提供了另一种虚拟场景中的植被生成方法,该方法在上述实施例的基础上实现,该方法重点描述获取虚拟场景中待生成植被的目标区域的具体过程(具体通过下述步骤S202-S206实现);如图2所示,该方法包括如下具体步骤:
步骤S202,基于预设矩形框,生成点集存储链表;其中,点集存储链表中包括:多个顶点,以及每个顶点的位置坐标。
在具体实现时,当用户在虚拟场景中选取待生成植被的目标区域时,会在显示有虚拟场景的场景画面的图形用户界面中,显示预设矩形框,用户可拖动该预设矩形框在虚拟场景中滑动,并将滑动停止时预设矩形框在虚拟场景中包围的区域,确定为初始区域。该初始区域与预设矩形框的大小相同,且该初始区域包含有四个顶点,这四个顶点也即是组成预设矩形框的顶点;当初始区域的位置确定后,这四个顶点的坐标也确定了,然后可以在这四个顶点的基础上增加更多的顶点,从而得到由增加的顶点和这四个顶点所围成的目标区域。具体地,需要将增加的顶点和这四个顶点均存入点集存储链表中,该点集存储链表用于存储顶点的属性信息,该属性信息包括顶点的位置坐标、顶点的布尔属性等。
在实际应用中,首先需要在初始区域所包含的四个顶点的基础上,建立多边形点集,该多边形点集中包含有多个顶点,每个顶点预先设置有Node类,该Node类包括顶点的位置坐标和布尔属性等。然后基于每个顶点的Node类,建立可变化的点集存储链表,其中,点集存储链表所包含的顶点的数量可以变化,且在顶点数量增加的同时,顶点的属性信息也可跟随变化,例如,顶点的位置坐标的变化。
在一些实施例中,也可以将初始区域确定为目标区域,此时,点集存储链表中仅存储有四个顶点,以及每个顶点的属性信息。
步骤S204,将点集存储链表包含的顶点显示在虚拟场景中,在该虚拟场景中连接点集存储链表包含的顶点。
在具体实现时,可以基于游戏引擎的OnSceneGUI()函数,将点集存储链表中的顶点依次取出,并按照逆时针方向依次将顶点显示在虚拟场景中,然后按照顶点的取出顺序连接两点形成可视化线条,如图3所示为一种目标区域的显示示意图,图3中的目标区域包含有8个顶点,其中可视化线条的两端、设置有三维坐标系的位置,即为顶点的位置,这8个顶点所围成的多边形区域为目标区域。
步骤S206,将连接点集存储链表包含的顶点所围成的区域,确定为目标区域。
步骤S208,基于预设的第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;其中,第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性。
步骤S210,基于预设的第二控制参数,在相对于所述第一植被的指定范围内生成第二植被;其中,第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性。
步骤S212,基于预设的第三控制参数,在相对于第二植被的指定范围内生成第三植被;第三控制参数包括第三随机因子以及第三植被的生长参数;第三随机因子用于控制第三植被的生长参数的随机性;其中,第一植被、第二植被和第三植被的植被体积和/或植被高度不同。
上述第三控制参数可以控制在第二植被的指定范围内生成的第三植被的生长参数,以使指定范围内生成的第三植被具有一定的随机性。该第三植被的生长参数包括生长密度、植被大小、植被高度中的一种或者多种。具体地,第三植被的生长密度用于指示第二植被的指定范围内第三植被的数量;第三植被的植被大小和植被高度可以预先设置有多种,可基于第三随机因子随机从中选取一种或者多种,作为第二植被的指定范围内第三植被的植被大小和植被高度。
在具体实现时,相对于第二植被的指定范围可以是第二植被周围的某一区域,该区域可以是第二植被周围的圆环区域,也可以是第二植被的某一方向上的一定区域,还可以是第二植被的某几个方向上的一定区域。
在一些实施例中,上述第一植被可称为大型物体,第二植被可称为中型物体,第三植被可称为小型物体,从而本发明可在虚拟场景中生成大中小多级嵌套植被。现实世界场景中,植被场景存在一定的嵌套规律,也即是在大型物体(父物体)周围会存在一些中型物体(子物体),在中型物体(子物体)周围会存在一些小型物体(孙物体),这些场景物体基于大中小等多级嵌套的方式原理生成更自然的现实世界,本发明可基于此规律现象,在虚拟场景中生成大中小三种物体,模拟自然植被分布。
上述虚拟场景中的植被生成方法,该方案基于设定的目标区域,可以生成具有多组的大中小植被嵌套类型的虚拟场景,同时该方法引入了随机因子,使虚拟场景中的植被在具有层次感的同时不丧失随机性。另外,该方式是程序化操作实现的,可以提高场景搭建的效率,同时也可节省人工。
本发明实施例还提供了另一种虚拟场景中的植被生成方法,该方法在上述实施例的基础上实现,该方法重点描述基于预设的第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被的具体过程(具体通过下述步骤S404-S410实现);如图4所示,该方法包括如下具体步骤:
步骤S402,获取虚拟场景中待生成植被的目标区域。
步骤S404,基于预设点集,向目标区域内撒点,得到多个初始位置点。
上述预设点集中包含有多个点,该预设点集中所包含的点的数量可以根据需求设定,例如,该预设点集中可以包含有10000个点或者2000个点等。预设点集中的点可以均匀的撒向目标区域,也可以按照预设规则撒向目标区域,还可以随机撒向目标区域,具体的撒点规则可以根据研发需求生,将最终撒向目标区域内的点的位置,确定为初始位置点。
在具体实现时,上述步骤S404可以通过下述步骤10-12实现:
步骤10,构建目标区域的最小外接正四边形。
在具体实现时,上述目标区域是由多个顶点所围城的区域,对目标区域对应的顶点进行遍历操作,依次获取所有顶点在X轴和Z轴所在平面上的位置坐标,得到该平面内最大坐标对应的顶点与最小坐标对应的顶点,然后将顶点分别向X轴方向和Z轴方向延伸,建立目标区域的正四边形区域,该正四边形区域也即是目标区域的最小外接正四边形,该正四边形可以是长方形或者正方形。
在一些实施例中,还可以通过预设函数,直接构建目标区域的最小外接正四边形。
步骤11,将预设点集中的预设点,均匀散布在最小外接正四边形内。
在具体实现时,可以根据最小外接正四边的坐标,得到最小外接正四边形的长和宽,然后将预设点集中所包含的预设点均匀的分布在最小外接正四边形内,以完成对预设点集中的预设点的撒点操作。
步骤12,将最小外接正四边形内的预设点中,位于目标区域内的预设点确定为初始位置点。
在具体实现时,需要对预设点是否在目标区域内进行判断,基于判断结果,将在目标区域内的预设点确定为初始位置点。具体地,需要针对最小外接正四边形内的每个预设点,执行下述步骤20-21,以确定预设点是否在目标区域内:
步骤20,以当前预设点为起点,向一个预设方向发射射线。
将最小外接正四边形内的每个预设点均作为一次当前预设点,上述预设方向可以是X轴的方向或者Z轴的方向等。
步骤21,统计当前预设点的发射射线与目标区域的边框的交点数量;如果交点数量为奇数,确定当前预设点在目标区域内,将当前预设点确定为初始位置点。
在具体实现时,如果预设点的发射射线与目标区域的边框的交点数量为奇数,确定预设点在目标区域内,并将该预设点的位置确定为初始位置点;如果预设点的发射射线与目标区域的边框的交点数量为偶数,确定预设点不在目标区域内,舍弃该预设点。
步骤S406,根据第一随机因子,确定第一植被的生长密度;其中,生长密度用于指示目标区域内第一植被的生长数量。
上述第一随机因子对应的密度控制权重,将初始位置点的数量与密度控制权重相乘,可以得到第一植被的生长数量,该生长数量的多少用于表征第一植被的生长密度。上述生长密度也即是生长参数中的一种。
步骤S408,基于多个初始位置点和第一植被的生长密度,确定第一植被的多个第一位置点。
在具体实现时,可以从多个初始位置中,选取与生长密度相匹配的第一位置点。例如,生长密度指示第一植被的生长数量为1000,初始位置点的数量为2000,则可以随机或者按照程序设定规则,从2000个初始位置点中,选取1000个初始位置点作为第一位置点。
在一些实施例中,还可首先从多个初始位置点中,选取与生长密度相匹配的多个中间位置点,进而基于第一植被的体积,对多个中间位置点进行偏移,将偏移后的中间位置点确定为第一位置点。具体地,可根据第一植被的体积,确定第一植被的包围盒尺寸,然后在该包围盒尺寸的基础上,对中间位置点进行随机偏移或者适量偏移,使第一位置点的分布更加自然。可以随机或者按照程序设定规则,从多个初始位置点中,选取与生长密度相匹配的多个中间位置点。
步骤S410,在每个第一位置点上生成第一植被。
在具体实现时,植被的生长参数可以包括生长密度,还可以包括植被大小和/或植被高度。因而,针对每个第一位置点,可基于第一随机因子,确定当前第一位置点生成的第一植被的植被大小和/或植被高度,以在当前第一位置点生成第一植被。
在第一位置点生成第一植被时,首先确定第一位置点对应的初始X轴坐标和Z轴坐标,然后通过游戏引擎的射线检测Ray()函数实现第一位置点的竖直方向坐标(Y值)的获取,该射线检测Ray()函数可以获取当前点在地形上的坐标信息,从而获取第一植被坐标的Y值。在得到第一位置点的坐标后,需要基于第一随机因子确定的第一植被的植被大小和植被高度,在第一位置点处生成第一植被。
为了增加场景的随机性,本方案同时引入了第一随机因子,在植被位置、植被大小、植被高度等属性进行随机。具体地,第一随机因子包括第一种类控制因子;上述步骤S410可以通过下述步骤30-32实现:
步骤30,基于第一种类控制因子,从预设的多种类型的第一植被中,选取目标类型的第一植被;其中,每种类型的第一植被的植被大小、植被高度和植被种类中至少一种不同。
在具体实现时,预先设置有多种类型的第一植被,每种类型的第一植被的植被大小、植被高度和植被种类可以均不同,也可以仅有一项或者两项不同。预设的第一植被的类型数可以根据研发需求设定,例如,可以预先设定三种不同类型的第一植被,从而可以使得虚拟场景中生成的第一植被的种类多样,使得虚拟场景在层次分布的基础上更加自然。
步骤31,确定目标类型的第一植被的植被生长方向。
在具体实现时,确定目标类型的第一植被的植被生长方向的方式,包括以下两种:
方式一,根据第一植被对应的当前第一位置点对应的地形信息,确定当前第一位置点的法线方向,将法线方向确定为第一植被的植被生长方向。
具体地,根据当前第一位置点所处的位置的地形信息,可以确定除当前第一位置点在地形上的法线方向(也即是垂直为当前第一位置点所处的位置的方向),从而将确定的法线方向作为第一植被的植被生长方向。例如,一些植被需要垂直平面(该平面也即是第一位置点所在位置所处的平面)生长放置时,可以调整息率控制因子来实现。
方式二,将虚拟场景中竖直向上的方向,确定为第一植被的植被生长方向。
上述两种方式可以增加虚拟场景分布的自然性与特殊的生长需求。
步骤32,基于目标类型的第一植被的生长方向,在当前第一位置点生成目标类型的第一植被。
在实际应用中,在第一位置点上生成第一植被之前,还可以通过斜率控制因子,确定多个第一位置点中,坡度大于预设斜率阈值的第二位置点;然后将多个第一位置点中的第二位置点删除,得到生成第一植被的最终第一位置点。该方式可不在坡度太大的位置处生成植被,从而使得植被分布更加符合真实场景。
步骤S412,基于第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性。
在具体实现时,为在相对于第一植被的指定范围内生成第二植被,需要针对生成第一植被的每个第一位置点,执行下述步骤40-42:
步骤40,以当前第一位置点为中心,建立第一调节圆环区域。
通常需要将生成第一植被的每个第一位置点均确定为一次当前第一位置点,并在当前第一位置点周围建立第一调节圆环区域,使第二植被的生成可以避开第一植被的自身范围,且在第一调节圆环区域内随机生成第二植被。
步骤41,基于第二随机因子,确定第一调节圆环区域内第二植被的生长参数。
具体地,上述生长参数可以包括生长密度,第二随机因子包括密度控制因子;因而,可基于密度控制因子,确定第一调节圆环区域内第二植被的生长密度;其中,生长密度用于指示第一调节圆环区域内第二植被的生长数量;进而根据生长密度,在第一调节区域内生成第二植被。上述密度控制因子包含有最小数量值和最大数量值,该密度控制因子可以从最小数量值和最大数量值之间的范围,随机选取一个数值,将该数值作为第一调节圆环区域内第二植被的生长数量,从而使得第二植被的生成更加自然。
进一步地,上述生长参数还可以包括植被大小和/或植被高度;第二随机因子还可以包括第二种类控制因子;因而,可基于第二种类控制因子,从预设的多种类型的第二植被中,选取至少一种类型的第二植被,以在第一调节圆环区域内生成至少一种类型的第二植被。
在具体实现时,预先设置有多种类型的第二植被,每种类型的第二植被的植被大小、植被高度和植被种类可以均不同,也可以仅有一项或者两项相同。预设的第二植被的类型数可以根据研发需求设定,例如,可以预先设定三种不同类型的第二植被,从而可以使得虚拟场景中生成的第二植被的种类多样,从而使得虚拟场景在层次分布的基础上更加自然。
步骤42,基于确定的第二植被的生长参数,在第一调节圆环区域内生成第二植被。
在第一调节圆环区域内生成第二植被时,首先确定第一调节圆环区域内撒点(一个点生成一个第二植被)对应的初始X轴坐标和Z轴坐标,然后通过游戏引擎的射线检测Ray()函数实现第点的竖直方向坐标(Y值)的获取,该射线检测Ray()函数可以获取当前点在地形上的坐标信息,从而获取第二植被坐标的Y值。
在一些实施例中,在基于预设的第二控制参数,在相对于第一植被的指定范围内生成第二植被之前,还可以接收对第一植被设置物体属性的指令,将第一植被设置为全部物体,或者,将第一植被设置为部分物体;其中,如果将第一植被设置为全部物体,将在每个第一植被的指定范围内均生成第二植被;如果将第一植被设置为部分物体,将在部分第一植被的指定范围内生成第二植被(也即是一些第一植被的周围不生成第二植被,一些第一植被的周围生成第二植被)。
在第二植被的生成数量方面,本方案采用了最大/最小数量的随机控制(相当于上述密度控制因子)设置与全部物体或者部分物体的随机生成控制,其中在数量方面通过Ramdom()函数通过读取最小/最大值可以进行在此区间的随机取值,生成更加自然。在部分物体与全部物体生成方面,部分物体是基于概率控制,使一些第一植被周围不生成第二植被,全部物体生成为对于全部第一植被周围皆会生成第二植被。
步骤S414,基于第三控制参数,在相对于第二植被的指定范围内生成第三植被;第三控制参数包括第三随机因子以及第三植被的生长参数;第三随机因子用于控制第三植被的生长参数的随机性。
上述第一植被、第二植被和第三植被的植被体积和/或植被高度不同。在一些实施例中,上述第一植被可称为大型物体,第二植被可称为中型物体,第三植被可称为小型物体,从而本发明可在虚拟场景中生成大中小多级嵌套植被。如图5所示为虚拟场景中的植被示意图。
具体地,第三植被在第二植被周围的生成规则与第二植被在第一植被周围的生成规则原理相同,不同之处为第三植被的坐标获取位置以第二植被的生成位置点为参考。在具体实现时,为在相对于第二植被的指定范围内生成第三植被,需要针对生成第二植被的每个位置点,执行下述步骤60-62:
步骤60,以当前位置点为中心,建立第二调节圆环区域。
通常需要将生成第二植被的每个位置点均确定为一次当前位置点,并在当前位置点周围建立第二调节圆环区域,使第三植被的生成可以避开第二植被的自身范围,且在第二调节圆环区域内随机生成第三植被。
步骤61,基于第三随机因子,确定第二调节圆环区域内第三植被的生长参数;其中,所述生长参数包括生长密度、植被大小和植被高度中的至少一种。
具体地,上述第三随机因子包括密度控制因子和第三种类控制因子;因而,可基于密度控制因子,确定第二调节圆环区域内第三植被的生长密度;其中,生长密度用于指示第二调节圆环区域内第三植被的生长数量;进而基于第三种类控制因子,从预设的多种类型的第三植被中,选取至少一种类型的第三植被,以在第二调节圆环区域内生成至少一种类型的第三植被。
步骤62,基于确定的第三植被的生长参数,在第二调节圆环区域内生成第三植被。
在具体实现时,上述第二植被的植被生长方向,可以根据第二植被的生长位置对应的地形信息,确定该生长位置的法线方向,将该法线方向确定为第二植被的植被生长方向;也可以将虚拟场景中竖直向上的方向,确定为第二植被的植被生长方向。
同样地,上述第三植被的植被生长方向,可以根据第三植被的生长位置对应的地形信息,确定该生长位置的法线方向,将该法线方向确定为第三植被的植被生长方向;也可以将虚拟场景中竖直向上的方向,确定为第三植被的植被生长方向。
在具体实现时,将在第一位置点上生成的第一植被的属性信息,保存至预设的配置文件;其中,属性信息包括位置信息和生长参数;将在相对于第一植被的指定范围内生成的第二植被的属性信息,保存至配置文件;将在相对于第二植被的指定范围内生成的第三植被的属性信息,保存至配置文件。该方式对已撒点的植被加入了可保存设置,基于游戏引擎文件配置脚本,对撒点对象以及相关设置参数进行保存处理,方便场景对象(生成的植被)进行复用或者分享,从而提高场景搭建效率。
上述虚拟场景中的植被生成方法,本方案可以搭建出多层次多重植被分布的虚拟场景,可以使场景植被物体在层次感的基础上更加自然,同时本方案设计简洁,操作简单,可以在很大基础上提高场景搭建效率。
对应于上述方法实施例,本发明实施例还提供了一种虚拟场景中的植被生成装置,该装置设置于游戏引擎,如图6所示,该装置包括:
区域获取模块60,用于获取虚拟场景中待生成植被的目标区域。
第一植被生成模块61,用于基于预设的第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;其中,第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性。
第二植被生成模块62,用于基于预设的第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性。
其中,第一植被与第二植被的植被体积和/或植被高度不同。
上述虚拟场景中的植被生成装置,游戏引擎首先获取虚拟场景中待生成植被的目标区域;进而基于第一控制参数,在目标区域内确定第一植被的多个第一位置点,在第一位置点上生成第一植被;该第一控制参数包括第一随机因子以及第一植被的生长参数;第一随机因子用于控制第一植被的生长参数的随机性;然后基于第二控制参数,在相对于第一植被的指定范围内生成第二植被;第二控制参数包括第二随机因子以及第二植被的生长参数;第二随机因子用于控制第二植被的生长参数的随机性;其中,第一植被与第二植被的植被体积和/或植被高度不同。该方式可通过控制参数控制目标区域内植被的生成参数的随机性,且在虚拟场景中嵌套生成大小不同的植被,从而可在虚拟场景具有层次感的同时,避免虚拟场景中植被的重复性和局限性;同时,该方式由游戏引擎自动完成,可提高虚拟场景搭建的效率。
具体地,上述区域获取模块60,还用于:基于预设矩形框,生成点集存储链表;其中,点集存储链表中包括:多个顶点,以及每个顶点的位置坐标;将点集存储链表包含的顶点显示在虚拟场景中,在虚拟场景中连接点集存储链表包含的顶点;将连接点集存储链表包含的顶点所围成的区域,确定为目标区域。
进一步地,上述生长参数包括生长密度;上述第一植被生成模块61,包括:初始位置点确定单元,用于基于预设点集,向所述目标区域内撒点,得到多个初始位置点;生长密度确定单元,用于根据第一随机因子,确定第一植被的生长密度;其中,生长密度用于指示目标区域内第一植被的生长数量;第一位置点确定单元,用于基于多个初始位置点和第一植被的生长密度,确定第一植被的多个第一位置点;第一植被生成单元,用于在每个第一位置点上生成第一植被。
具体地,上述初始位置点确定单元,用于:构建目标区域的最小外接正四边形;将预设点集中的预设点,均匀散布在最小外接正四边形内;将最小外接正四边形内的预设点中,位于目标区域内的预设点确定为初始位置点。
在具体实现时,上述初始位置点确定单元,还用于:针对最小外接正四边形内的每个预设点,执行下述操作:以当前预设点为起点,向一个预设方向发射射线;统计当前预设点的发射射线与目标区域的边框的交点数量;如果交点数量为奇数,确定当前预设点在目标区域内,将当前预设点确定为初始位置点。
进一步地,上述第一位置点确定单元,用于:从多个初始位置中,选取与生长密度相匹配的第一位置点。
进一步地,上述第一位置点确定单元,还用于:从多个初始位置点中,选取与生长密度相匹配的多个中间位置点;基于第一植被的体积,对多个中间位置点进行偏移,将偏移后的中间位置点,确定为第一位置点。
具体地,上述生长参数还包括植被大小和/或植被高度;上述第一植被生成单元,还用于:针对每个第一位置点,基于第一随机因子,确定当前第一位置点生成的第一植被的植被大小和/或植被高度,以在当前第一位置点生成第一植被。
在具体实现时,上述第一随机因子包括第一种类控制因子;上述第一植被生成单元,还用于:基于第一种类控制因子,从预设的多种类型的第一植被中,选取目标类型的第一植被;其中,每种类型的第一植被的植被大小、植被高度和植被种类中至少一种不同;确定目标类型的第一植被的植被生长方向;基于目标类型的第一植被的生长方向,在当前第一位置点生成目标类型的第一植被。
进一步地,上述第一植被生成单元,还用于:根据第一植被对应的当前第一位置点对应的地形信息,确定当前第一位置点的法线方向,将法线方向确定为第一植被的植被生长方向;或者,将虚拟场景中竖直向上的方向,确定为第一植被的植被生长方向。
在具体实现时,上述装置还包括生长控制模块,用于:在第一位置点上生成第一植被之前,通过斜率控制因子,确定多个第一位置点中,坡度大于预设斜率阈值的第二位置点;将多个第一位置点中的第二位置点删除,得到生成第一植被的最终第一位置点。
进一步地,上述第二植被生成模块62,用于:针对生成第一植被的每个第一位置点,执行下述操作:以当前第一位置点为中心,建立第一调节圆环区域;基于第二随机因子,确定第一调节圆环区域内第二植被的生长参数;基于确定的第二植被的生长参数,在第一调节圆环区域内生成第二植被。
具体地,上述生长参数包括生长密度;第二随机因子包括密度控制因子;上述第二植被生成模块62,还用于:基于密度控制因子,确定第一调节圆环区域内第二植被的生长密度;其中,生长密度用于指示第一调节圆环区域内第二植被的生长数量;根据生长密度,在第一调节区域内生成第二植被。
进一步地,上述生长参数还包括植被大小和/或植被高度;第二随机因子包括第二种类控制因子;上述第二植被生成模块62,还用于:基于第二种类控制因子,从预设的多种类型的第二植被中,选取至少一种类型的第二植被,以在第一调节圆环区域内生成至少一种类型的第二植被;其中,每种类型的第二植被的植被大小、植被高度和植被种类中至少一种不同。
进一步地,上述装置还包括植被类型设置模块,用于:在基于预设的第二控制参数,在相对于第一植被的指定范围内生成第二植被之前,接收对第一植被设置物体属性的指令,将第一植被设置为全部物体,或者,将第一植被设置为部分物体;其中,如果将第一植被设置为全部物体,将在每个第一植被的指定范围内均生成第二植被;如果将第一植被设置为部分物体,将在部分第一植被的指定范围内生成第二植被。
进一步地,上述装置还包括第三植被生成模块,用于:在基于预设的第二控制参数,在相对于第一植被的指定范围内生成第二植被之后,基于预设的第三控制参数,在相对于第二植被的指定范围内生成第三植被;第三控制参数包括第三随机因子以及第三植被的生长参数;第三随机因子用于控制第三植被的生长参数的随机性;其中,第一植被、第二植被和第三植被的植被体积和/或植被高度不同。
在具体实现时,上述第三植被生成模块,还用于:针对生成第二植被的位置点,执行下述操作:以当前位置点为中心,建立第二调节圆环区域;基于第三随机因子,确定第二调节圆环区域内第三植被的生长参数;其中,生长参数包括生长密度、植被大小和植被高度中的至少一种;基于确定的第三植被的生长参数,在第二调节圆环区域内生成第三植被。
进一步地,上述装置还包括信息存储模块,用于:将在第一位置点上生成的第一植被的属性信息,保存至预设的配置文件;其中,属性信息包括位置信息和生长参数;将在相对于第一植被的指定范围内生成的第二植被的属性信息,保存至配置文件。
本发明实施例所提供的虚拟场景中的植被生成装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例还提供了一种电子设备,如图7所示,该电子设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,该处理器执行机器可执行指令以实现上述虚拟场景中的植被生成方法。
进一步地,图7所示的电子设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。
其中,存储器100可能包含高速随机存取存储器(RAM,RandomAccessMemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,该计算机可执行指令促使处理器实现上述虚拟场景中的植被生成方法,具体实现可参见方法实施例,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (21)

1.一种虚拟场景中的植被生成方法,其特征在于,所述方法包括:
获取虚拟场景中待生成植被的目标区域;
基于预设的第一控制参数,在所述目标区域内确定第一植被的多个第一位置点,在所述第一位置点上生成第一植被;其中,所述第一控制参数包括第一随机因子以及所述第一植被的生长参数;所述第一随机因子用于控制所述第一植被的生长参数的随机性;
基于预设的第二控制参数,在相对于所述第一植被的指定范围内生成第二植被;所述第二控制参数包括第二随机因子以及所述第二植被的生长参数;所述第二随机因子用于控制所述第二植被的生长参数的随机性;
其中,所述第一植被与所述第二植被的植被体积和/或植被高度不同。
2.根据权利要求1所述的方法,其特征在于,所述获取虚拟场景中待生成植被的目标区域的步骤,包括:
基于预设矩形框,生成点集存储链表;其中,所述点集存储链表中包括:多个顶点,以及每个所述顶点的位置坐标;
将所述点集存储链表包含的顶点显示在所述虚拟场景中,在所述虚拟场景中连接所述点集存储链表包含的顶点;
将连接所述点集存储链表包含的顶点所围成的区域,确定为所述目标区域。
3.根据权利要求1所述的方法,其特征在于,所述生长参数包括生长密度;所述基于预设的第一控制参数,在所述目标区域内确定第一植被的多个第一位置点,在所述第一位置点上生成第一植被的步骤,包括:
基于预设点集,向所述目标区域内撒点,得到多个初始位置点;
根据所述第一随机因子,确定所述第一植被的生长密度;其中,所述生长密度用于指示所述目标区域内所述第一植被的生长数量;
基于所述多个初始位置点和所述第一植被的生长密度,确定所述第一植被的多个第一位置点;
在每个所述第一位置点上生成所述第一植被。
4.根据权利要求3所述的方法,其特征在于,所述基于预设点集,向所述目标区域内撒点,得到多个初始位置点的步骤,包括:
构建所述目标区域的最小外接正四边形;
将所述预设点集中的预设点,均匀散布在所述最小外接正四边形内;
将所述最小外接正四边形内的预设点中,位于所述目标区域内的预设点确定为所述初始位置点。
5.根据权利要求4所述的方法,其特征在于,所述将所述最小外接正四边形内的预设点中,位于所述目标区域内的预设点确定为所述初始位置点的步骤,包括:
针对所述最小外接正四边形内的每个所述预设点,执行下述操作:
以当前预设点为起点,向一个预设方向发射射线;
统计所述当前预设点的发射射线与所述目标区域的边框的交点数量;如果所述交点数量为奇数,确定所述当前预设点在所述目标区域内,将所述当前预设点确定为所述初始位置点。
6.根据权利要求3所述的方法,其特征在于,所述基于所述多个初始位置点和所述生长密度,确定所述第一植被的多个第一位置点的步骤,包括:
从所述多个初始位置中,选取与所述生长密度相匹配的第一位置点。
7.根据权利要求3所述的方法,其特征在于,所述基于所述多个初始位置点和所述生长密度,确定所述第一植被的多个第一位置点的步骤,包括:
从所述多个初始位置点中,选取与所述生长密度相匹配的多个中间位置点;
基于所述第一植被的体积,对所述多个中间位置点进行偏移,将偏移后的中间位置点,确定为所述第一位置点。
8.根据权利要求3所述的方法,其特征在于,所述生长参数还包括植被大小和/或植被高度;
所述在每个所述第一位置点上生成所述第一植被的步骤,包括:
针对每个所述第一位置点,基于所述第一随机因子,确定当前第一位置点生成的所述第一植被的植被大小和/或植被高度,以在所述当前第一位置点生成所述第一植被。
9.根据权利要求8所述的方法,其特征在于,所述第一随机因子包括第一种类控制因子;所述基于所述第一随机因子,确定当前第一位置点生成的所述第一植被的植被大小和植被高度,以在所述当前第一位置点生成所述第一植被的步骤,包括:
基于所述第一种类控制因子,从预设的多种类型的第一植被中,选取目标类型的第一植被;其中,每种类型的第一植被的植被大小、植被高度和植被种类中至少一种不同;
确定所述目标类型的第一植被的植被生长方向;
基于所述目标类型的第一植被的生长方向,在所述当前第一位置点生成所述目标类型的第一植被。
10.根据权利要求9所述的方法,其特征在于,所述确定所述目标类型的第一植被的植被生长方向的步骤,包括:
根据所述第一植被对应的当前第一位置点对应的地形信息,确定所述当前第一位置点的法线方向,将所述法线方向确定为所述第一植被的植被生长方向;
或者,将所述虚拟场景中竖直向上的方向,确定为所述第一植被的植被生长方向。
11.根据权利要求1所述的方法,其特征在于,在所述第一位置点上生成第一植被的步骤之前,所述方法还包括:
通过斜率控制因子,确定所述多个第一位置点中,坡度大于预设斜率阈值的第二位置点;
将所述多个第一位置点中的所述第二位置点删除,得到生成所述第一植被的最终第一位置点。
12.根据权利要求1所述的方法,其特征在于,所述基于预设的第二控制参数,在相对于所述第一植被的指定范围内生成第二植被的步骤,包括:
针对生成所述第一植被的每个所述第一位置点,执行下述操作:
以当前第一位置点为中心,建立第一调节圆环区域;
基于所述第二随机因子,确定所述第一调节圆环区域内所述生长参数;
基于确定的所述第二植被的生长参数,在所述第一调节圆环区域内生成所述第二植被。
13.根据权利要求12所述的方法,其特征在于,所述生长参数包括生长密度;所述第二随机因子包括密度控制因子;
所述基于所述第二随机因子,确定所述第一调节圆环区域内所述生长参数的步骤,包括:
基于所述密度控制因子,确定所述第一调节圆环区域内所述第二植被的生长密度;其中,所述生长密度用于指示所述第一调节圆环区域内所述第二植被的生长数量;
根据所述生长密度,在所述第一调节区域内生成所述第二植被。
14.根据权利要求12所述的方法,其特征在于,所述生长参数包括植被大小和/或植被高度;所述第二随机因子包括第二种类控制因子;
所述基于所述第二随机因子,确定所述第一调节圆环区域内所述生长参数的步骤,包括:
基于所述第二种类控制因子,从预设的多种类型的第二植被中,选取至少一种类型的第二植被,以在所述第一调节圆环区域内生成所述至少一种类型的第二植被;其中,每种类型的第二植被的植被大小、植被高度和植被种类中至少一种不同。
15.根据权利要求1所述的方法,其特征在于,所述基于预设的第二控制参数,在相对于所述第一植被的指定范围内生成第二植被的步骤之前,所述方法还包括:
接收对所述第一植被设置物体属性的指令,将所述第一植被设置为全部物体,或者,将所述第一植被设置为部分物体;
其中,如果将所述第一植被设置为全部物体,将在每个所述第一植被的指定范围内均生成第二植被;如果将所述第一植被设置为部分物体,将在部分所述第一植被的指定范围内生成第二植被。
16.根据权利要求1所述的方法,其特征在于,所述基于预设的第二控制参数,在相对于所述第一植被的指定范围内生成第二植被的步骤之后,所述方法还包括:
基于预设的第三控制参数,在相对于所述第二植被的指定范围内生成第三植被;所述第三控制参数包括第三随机因子以及所述第三植被的生长参数;所述第三随机因子用于控制所述第三植被的生长参数的随机性;
其中,所述第一植被、所述第二植被和所述第三植被的植被体积和/或植被高度不同。
17.根据权利要求16所述的方法,其特征在于,所述基于预设的第三控制参数,在相对于所述第二植被的指定范围内生成第三植被的步骤,包括:
针对生成所述第二植被的位置点,执行下述操作:
以当前位置点为中心,建立第二调节圆环区域;
基于所述第三随机因子,确定所述第二调节圆环区域内所述生长参数;其中,所述生长参数包括生长密度、植被大小、植被高度中的至少一种;
基于确定的所述第三植被的生长参数,在所述第二调节圆环区域内生成所述第三植被。
18.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将在所述第一位置点上生成的第一植被的属性信息,保存至预设的配置文件;其中,所述属性信息包括位置信息和生长参数;
将在相对于所述第一植被的指定范围内生成的第二植被的属性信息,保存至所述配置文件。
19.一种虚拟场景中的植被生成装置,其特征在于,所述装置包括:
区域获取模块,用于获取虚拟场景中待生成植被的目标区域;
第一植被生成模块,用于基于预设的第一控制参数,在所述目标区域内确定第一植被的多个第一位置点,在所述第一位置点上生成第一植被;其中,所述第一控制参数包括第一随机因子以及所述第一植被的生长参数;所述第一随机因子用于控制所述第一植被的生长参数的随机性;
第二植被生成模块,用于基于预设的第二控制参数,在相对于所述第一植被的指定范围内生成第二植被;所述第二控制参数包括第二随机因子以及所述第二植被的生长参数;所述第二随机因子用于控制所述第二植被的生长参数的随机性;
其中,所述第一植被与所述第二植被的植被体积和/或植被高度不同。
20.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至18任一项所述的虚拟场景中的植被生成方法。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使所述处理器实现权利要求1至18任一项所述的虚拟场景中的植被生成方法。
CN202210997361.2A 2022-08-19 2022-08-19 虚拟场景中的植被生成方法、装置和电子设备 Pending CN115501585A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210997361.2A CN115501585A (zh) 2022-08-19 2022-08-19 虚拟场景中的植被生成方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210997361.2A CN115501585A (zh) 2022-08-19 2022-08-19 虚拟场景中的植被生成方法、装置和电子设备

Publications (1)

Publication Number Publication Date
CN115501585A true CN115501585A (zh) 2022-12-23

Family

ID=84501910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210997361.2A Pending CN115501585A (zh) 2022-08-19 2022-08-19 虚拟场景中的植被生成方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN115501585A (zh)

Similar Documents

Publication Publication Date Title
CN107481311B (zh) 三维城市模型渲染方法及装置
CN102663801B (zh) 一种提高三维模型渲染性能的方法
CN112347546A (zh) 基于轻量级设备的bim渲染方法、设备和计算机可读存储介质
CN107730583B (zh) 一种基于三维场景的地形瓦片数据动态调度方法及装置
CN114627219A (zh) 三维场景数据的渲染方法及装置、存储介质、电子装置
CN107126702B (zh) 一种3d游戏随机地图的生成方法
KR20180069461A (ko) 가속 구조를 생성하는 방법 및 장치
CN108171793B (zh) 一种探查层叠区域三角网格的方法
US20240208679A1 (en) Optimized packing of polygons into a container
CN106251331A (zh) 一种倾斜测量场景中地物的提取方法
JP3034483B2 (ja) オブジェクト探索方法およびその方法を用いた装置
CN114255160B (zh) 数据处理方法、装置、设备及存储介质
US20160378892A1 (en) Simulation device
CN115578536A (zh) 一种分层分块三维模型节点合并方法、装置和电子装置
CN115317916A (zh) 虚拟场景中重叠对象的检测方法、装置和电子设备
CN107025684A (zh) 基于模型构件特征的大规模场景固定帧率绘制及装置
JP2000340476A (ja) 形状シミュレーション方法、装置および記録媒体
CN115501585A (zh) 虚拟场景中的植被生成方法、装置和电子设备
CN112687007A (zh) 一种基于lod技术的立体网格图生成方法
CN114781014B (zh) 对象处理方法、装置、设备及计算机可读存储介质
CN117152237A (zh) 一种距离场生成方法、装置、电子设备及存储介质
JPH10134198A (ja) 空間探索方法およびその方法を用いたシステム
KR20170025993A (ko) 가속 구조를 생성 및 탐색하는 방법
CN113313805B (zh) 一种三维场景数据存储方法、装置、设备及存储介质
JP6947889B2 (ja) プログラム、コンピュータ装置、及び、プログラム実行方法

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