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

虚拟场景的生成方法、装置和终端设备

文献发布时间:2023-06-19 12:18:04


虚拟场景的生成方法、装置和终端设备

技术领域

本发明涉及游戏设计技术领域,尤其是涉及一种虚拟场景的生成方法、装置和终端设备。

背景技术

在游戏关卡构建时,通常使用虚幻引擎中的Geometry(几何笔刷),定制化的以点面为核心生成对应的关卡墙面、地面、天花板,以及按照特定需求生成附着在这些部件表面上的组件,形成游戏关卡对应的虚拟场景。相关技术中,在构建游戏关卡(或者虚拟场景)时,美术制作人员需要借助如玛雅或者3DMAX等外部的模型工具生成模型结构,并将该模型结构导入至虚幻引擎中,进而通过Geometry对模型结构进行填充和雕刻空间体积,而且该方式在后续对关卡进行优化迭代时,需要不断重复上述流程,导致关卡生成效率低下。

发明内容

本发明的目的在于提供一种虚拟场景的生成方法、装置和终端设备,以简化虚拟场景构建操作,降低后续对关卡优化迭代的复杂度,从而提升关卡生成的效率。

第一方面,本发明提供了一种虚拟场景的生成方法,通过终端设备运行虚拟引擎提供编辑界面;该方法包括:响应于在编辑界面对目标场景的拓扑结构编辑操作,生成该目标场景的拓扑结构数据;该拓扑结构数据用于指示:构建连接目标场景中的多个目标对象所形成的虚拟衔接对象;获取预先配置的目标场景的配置数据;其中,该配置数据包括:目标场景的几何参数和美术效果参数;基于配置数据和拓扑结构数据,生成目标场景。

在可选的实施方式中,上述响应于在编辑界面对目标场景的拓扑结构编辑操作,生成目标场景的拓扑结构数据的步骤,包括:响应在编辑界面中拖拽目标对象以及连接目标对象的操作,生成目标场景的拓扑结构数据;该拓扑结构数据中包括:连接目标对象形成的线条;其中,连接所述目标形成的线条组成虚拟墙面,相连的虚拟墙面成环状形成虚拟建筑物。

在可选的实施方式中,上述拓扑结构数据的数据结构为半边数据结构;其中,该拓扑结构数据中的每个虚拟墙面对应的线条作为一条边,一条边分为有方向的两个半边,两个半边的方向相反;该虚拟建筑物包括:由多个指定方向的半边围成的环状对应的区域。

在可选的实施方式中,上述虚拟建筑物通过下述方式确定:判断拓扑结构数据中是否存在形成环状的多个半边;如果存在,判断环状的围绕方向是否为指定方向;如果是指定方向,确定形成环状的多个半边所围绕的区域为虚拟建筑物。

在可选的实施方式中,上述目标场景的几何参数包括以下至少一种对象的几何参数:目标对象、虚拟墙面、虚拟天花板、虚拟门窗和虚拟地板,美术效果参数包括材质参数、生成类型参数、连接规则参数和自定义附加效果参数。

在可选的实施方式中,上述基于配置数据和拓扑结构数据,生成目标场景的步骤,包括:通过3D空间布尔运算,根据配置数据中的几何参数和美术效果对拓扑结构数据进行渲染,得到目标场景。

在可选的实施方式中,上述配置数据中包括目标场景的虚拟天花板和虚拟地板的几何参数和美术效果参数;上述根据配置数据中的几何参数和美术效果对拓扑结构数据进行渲染,得到目标场景的步骤,包括:根据配置数据中虚拟天花板和虚拟地板的几何参数,在拓扑结构数据所包含的虚拟建筑物的顶部生成虚拟天花板,在虚拟建筑物的底部生成虚拟地板;根据配置数据中虚拟天花板和虚拟地板的美术效果参数,渲染生成的虚拟天花板和虚拟地板。

在可选的实施方式中,上述配置数据中还包括目标场景的虚拟门窗的几何参数;上述根据配置数据中虚拟天花板和虚拟地板的美术效果参数,渲染生成的虚拟天花板和虚拟地板的步骤之后,上述方法还包括:根据配置数据中虚拟门窗的几何参数,在虚拟建筑物的虚拟墙面、虚拟天花板或者虚拟地板上生成虚拟门窗。

在可选的实施方式中,上述目标场景中包含有至少一种材质的虚拟墙面;上述基于配置数据和拓扑结构数据,生成目标场景的步骤之后,上述方法还包括:对材质相同的、且相邻虚拟墙面之间的夹角小于预设阈值的虚拟墙面进行合并处理,得到合并后的虚拟墙面。

在可选的实施方式中,上述基于配置数据和拓扑结构数据,生成目标场景的步骤之前,上述方法还包括:判断拓扑结构数据是否满足预设规则;如果不满足,显示提醒消息,以使用户根据提醒消息调整拓扑结构数据。

在可选的实施方式中,上述基于配置数据和拓扑结构数据,生成目标场景的步骤之后,上述方法还包括:响应针对于目标场景中指定部件的材质设置操作,调整目标场景中指定部件的材质。

第二方面,本发明提供了一种虚拟场景的生成装置,通过终端设备运行虚拟引擎提供编辑界面;该装置包括:拓扑结构生成模块,用于响应于在编辑界面对目标场景的拓扑结构编辑操作,生成目标场景的拓扑结构数据;该拓扑结构数据用于指示:构建连接目标场景中的多个目标对象所形成的虚拟衔接对象;配置数据获取模块,用于获取预先配置的目标场景的配置数据;其中,该配置数据包括:目标场景的几何参数和美术效果参数;场景生成模块,用于基于配置数据和拓扑结构数据,生成目标场景。

第三方面,本发明提供了一种终端设备,该终端设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,该处理器执行机器可执行指令以实现前述实施方式任一项所述的虚拟场景的生成方法。

第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,该计算机可执行指令促使处理器实现前述实施方式任一项所述的虚拟场景的生成方法。

本发明实施例带来了以下有益效果:

本发明提供的一种虚拟场景的生成方法、装置和终端设备,该方法中的终端设备响应于在运行虚拟引擎提供的编辑界面中对目标场景的拓扑结构编辑操作,生成目标场景的拓扑结构数据;进而获取预先配置的目标场景的配置数据;然后基于配置数据和拓扑结构数据,生成目标场景。该方式中,用户可在终端设备运行虚拟引擎提供的编辑界面中对目标场景的拓扑结构进行编辑,从而生成拓扑结构数据,该方式无需借助外部工具生成拓扑结构,避免了拓扑结构的导入和导出,简化了拓扑结构生成流程;同时,该方式可根据预先配置好的配置数据自动对拓扑结构数据进行渲染,生成虚拟场景,从而提高了虚拟场景的生成效率。

本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。

附图说明

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

图1为本发明实施例提供的一种虚拟场景的生成方法的流程图;

图2为本发明实施例提供的另一种虚拟场景的生成方法的流程图;

图3为本发明实施例提供的一种拓扑结构数据的示意图;

图4为本发明实施例提供的另一种虚拟场景的生成方法的流程图;

图5为本发明实施例提供的一种目标场景的生成结果图;

图6为本发明实施例提供的一种虚拟场景的生成装置的结构示意图;

图7为本发明实施例提供的一种终端设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

虚幻引擎是一款游戏引擎,该游戏引擎是指一些已经编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件,这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计者能容易和快速地做出游戏程式而不用由零开始。

虚幻引擎中的Geometry(几何笔刷)通常是虚幻编辑器中最基本的关卡构建工具。理论上建议将几何笔刷视为在关卡中填充和雕刻空间体积的工具。几何体笔刷之前为关卡设计的主要构件块,目前这个角色已由静态网格体替代,其效率远高于几何笔刷。但在产品的早期阶段,几何笔刷依旧有价值,其可快速设置关卡和对象的原型,也可用于无法使用3D建模工具的关卡构建。而且,通常可把几何笔刷看作是关卡设计过程中所用基本形状的创建方法,可为永久固定工具,也可为美术师完成最终网格体创建时用于测试的临时工具。

相关技术中,在构建游戏关卡时,美术制作人员需要借助如玛雅或者3DMAX等外部的模型工具生成模型结构(该模型结构也可以理解为关卡结构),并将该模型结构导入至虚幻引擎中,该方式导致关卡结构需要额外手动通过其他外部软件生成;而且该方式在后续对关卡进行优化迭代时,需要不断重复上述流程,从而需要大量重复组件铺设,使得关卡生成效率低下;同时,目前虚幻引擎中的Geometry不允许独立对面结构进行材质赋予与属性变化操作。

基于上述问题,本发明实施例提供了一种虚拟场景的生成方法、装置和终端设备,该技术可以应用在游戏关卡构建和虚拟场景构建的场景中。为便于对本实施例进行理解,首先对本发明实施例所公开的一种虚拟场景的生成方法进行详细介绍,该方法应用于配置有上述虚幻引擎(相当于虚拟引擎)的终端设备,通过该终端设备运行虚拟引擎提供编辑界面;如图1所示,该方法包括如下具体步骤:

步骤S102,响应于在编辑界面对目标场景的拓扑结构编辑操作,生成该目标场景的拓扑结构数据。

上述目标场景可以是用户在关卡类游戏中生成关卡时对应的虚拟场景,也可以非关卡类游戏中用户设计的虚拟场景。该目标场景中通常包含有虚拟墙面、虚拟门窗、虚拟地板、虚拟天花板等中的多种。在具体实现时,用户可以通过集成在虚幻引擎中的编辑工具实现对目标场景的拓扑结构的编辑操作,该编辑工具能够提供3D(Three-Dimensional,三维)空间编辑界面(相当于上述通过终端设备运行虚拟引擎提供的编辑界面),以使用户在该3D空间编辑界面中进行编辑操作。该方式中将编辑工具以插件的形式集成于虚幻引擎内部,避免了现有技术中使用第三方工具对拓扑结构数据进行导入导出的过程,提高了数据生成效率。

在具体实现时,用户可以通过操作3D空间编辑界面中提供的目标对象来编辑目标场景的拓扑结构,该目标对象可以理解为虚拟柱子或者虚拟柱状物等,该目标对象为3D空间编辑界面中的基本输入单位,该目标对象的高度和直径等可以由用户进行自定义。具体地,目标场景的拓扑结构可以通过对目标对象的编辑来生成,例如,将两个目标对象连接可生成虚拟衔接对象,基于虚拟衔接对象可以设置虚拟门窗、虚拟地板和虚拟天花板等。目标场景的拓扑结构编辑完成后,即可自动生成目标场景的拓扑结构数据,该拓扑结构数据用于指示:构建连接目标场景的多个目标对象所形成的虚拟衔接对象;该目标对象可以是目标场景中可用于产生连接关系的虚拟对象,例如虚拟柱子或者虚拟窗台、虚拟门框等;该虚拟衔接对象可以是虚拟墙面、虚拟建筑物、虚拟门或者虚拟窗户等。

步骤S104,获取预先配置的目标场景的配置数据;其中,该配置数据包括:目标场景的几何参数和美术效果参数。

上述目标场景的配置数据是用户根据需求提前设置好的,一般需要在用户编辑拓扑结构之前设置好。在具体实现时,上述目标场景的几何参数可以包括以下至少一种对象的几何参数:目标对象、虚拟墙面、虚拟天花板、虚拟门窗和虚拟地板,美术效果参数可以包括材质参数、生成类型参数、连接规则参数和自定义附加效果参数。该几何参数可以包括高度、宽度或者厚度等。在具体实现时,用户可以在虚拟引擎中的编辑工具中根据需求设置目标场景的配置数据,该配置数据配置完成后,可以保存在预设的配置文件中。

步骤S106,基于上述配置数据和拓扑结构数据,生成目标场景。

在具体实现时,当用户编辑完成目标场景的拓扑结构,且生成拓扑结构数据后,可触发场景生成按钮,以使虚幻引擎根据获取到的配置数据自动对拓扑结构数据进行渲染,得到目标场景。在实际应用中,如果自动生成的目标场景,用户有不满意的地方,还可以在3D空间编辑界面中根据需求进行调整。

本发明实施例提供的中虚拟场景的生成方法,首先响应于在编辑界面对目标场景的拓扑结构编辑操作,生成目标场景的拓扑结构数据;进而获取预先配置的目标场景的配置数据;然后基于配置数据和拓扑结构数据,生成目标场景。该方式中,用户可在终端设备运行虚拟引擎提供的编辑界面中对目标场景的拓扑结构进行编辑,从而生成拓扑结构数据,该方式无需借助外部工具生成拓扑结构,避免了拓扑结构的导入和导出,简化了拓扑结构生成流程;同时,该方式可根据预先配置好的配置数据自动对拓扑结构数据进行渲染,生成虚拟场景,从而提高了虚拟场景的生成效率。

本发明实施例还提供了另一种虚拟场景的生成方法,该方法在上述实施例方法的基础上实现;该方法重点描述响应于目标场景的拓扑结构编辑操作,生成该目标场景的拓扑结构数据的具体过程(通过下述步骤S202实现),如图2所示,该方法包括如下具体步骤:

步骤S202,响应在编辑界面中拖拽目标对象以及连接目标对象的操作,生成目标场景的拓扑结构数据;该拓扑结构数据中包括:连接目标对象形成的线条;其中,连接目标对象形成的线条组成虚拟墙面,相连的虚拟墙面成环状形成虚拟建筑物。

用户在3D空间编辑界面中可以拖拽目标对象,然后选择两个目标对象点击连接,可以在这个两个目标对象之间生成虚拟墙面,该方式操作简单,可以快速生成目标场景中的虚拟墙面。该目标对象可以是虚拟柱子或者虚拟柱状物等,该目标对象通常有一定的体积,可根据用户需求对该目标对象进行设置,例如,可以设置该目标对象的高度、半径;在编辑界面下看到的目标对象的模型(该模型也可以理解为形状)和目标对象的材质、最终生成的目标场景中目标对象的模型和材质;设置目标对象上是否有附加物等。上述对目标对象设置的数据也可以预先配置在配置数据中,在编辑界面中对拓扑结构进行编辑时,可以使用配置数据中配置的目标对象。

上述虚拟建筑物可以理解为虚拟房间或者半封闭空间等,该虚拟建筑物通常是相连的虚拟墙面成环状后环内对应的区域。例如,相连的四个虚拟墙面围成一个环状(也可以理解为一个封闭的区域),即可生成一个虚拟建筑物。在具体实现时,在编辑界面选定一个目标对象可以快速查询到与其相邻的目标对象、与其相连的虚拟墙面和其参与构建的所有虚拟建筑物;选定一个虚拟墙体可以查询到其两端的目标对象和两边是否拥有虚拟建筑物;选定一个虚拟建筑物可以查询到构成该虚拟建筑物的所有目标对象和虚拟墙面以及是否有虚拟天花板和虚拟地板等,这些数据都是在编辑过程中自动维护的,并且在每个部件(这里的部件是指目标对象、虚拟墙面、虚拟建筑物等)对应属性中可见。

在一些实施例中,上述拓扑结构数据的数据结构为半边数据结构,也可以理解为通过半边数据结构维护拓扑结构数据;其中,该拓扑结构数据中的每个虚拟墙面对应的线条作为一条边,一条边分为有方向的两个半边,两个半边的方向相反;虚拟建筑物包括:由多个指定方向的半边围成的环状对应的区域。该指定方向可以根据代码实现方法设定,可以设定为从俯视角看的顺时针方向或者逆时针方向等。例如,从俯视角度看,多个半边围成的环状为逆时针方向时,围成的区域为虚拟建筑物。在具体实现时,上述拓扑结构数据在编辑界面中是可视化的,用于辅助用户验证拓扑结构数据的正确性,如图3提供了一种拓扑结构数据的示意图,图3中的包含有三个虚拟建筑物,每个虚拟建筑物均是有4个虚拟墙面组成的(也即是由4个半边逆时针方向围成的环状组成的),且每个虚拟墙面均为半边数据结构,也即是由两个半边组成。

通过上述拓扑结构数据的半边数据结构,可以准确判断出拓扑结构数据是否包含有虚拟建筑物,以及该虚拟建筑物对应的区域;而且用户也可以通过拓扑结构数据的半边数据结构清晰的看出虚拟墙面和虚拟建筑物的对应位置。

在具体实现时,上述虚拟建筑物可以通过下述步骤10-13确定:

步骤10,判断拓扑结构数据中是否存在形成环状的多个半边;如果存在,执行步骤11;否则,执行步骤13。

步骤11,判断环状的围绕方向是否为指定方向;如果是,执行步骤12;否则,执行步骤13。

步骤12,确定形成环状的多个半边所围绕的区域为虚拟建筑物。

步骤13,拓扑结构数据中不存在虚拟建筑物。

上述拓扑结构数据中可能存在多个环状结构,针对每个环状结构均可执行步骤11-13,以自动检测该环状结构所成的区域是否为虚拟建筑物。具体地,本发明可以通过检测半边数据结构中环状的围绕方向自动判断拓扑结构数据中是否存在虚拟建筑物,该判断方式无需根据墙面之间的连接关系逐个判断围成区域是否为虚拟建筑物,只需根据半边数据结构中环状的围绕方向进行判断即可,使得该方式更加简便易行,从而也提高了场景编辑的效率。

关于用户构建过程中半边数据结构生成过程中非流形数据的处理。为了更符合用户从点到线到面的构成习惯,在用户构建操作过程中允许非流形的数据出现,在用户编辑操作结束后对涉及到改动的拓扑结构数据进行流形检查,也即是通过修改-验证的迭代过程得到最终合理的拓扑结构数据。

步骤S204,判断上述拓扑结构数据是否满足预设规则;如果是,执行步骤S210;否则,执行步骤S206。

上述预设规则可以根据用户需求设定,该预设规则通常是用于检验拓扑结构数据是否符合绘制逻辑的,例如,该预设规则可以是拓扑结构数据中的虚拟墙面至多对应两个虚拟建筑物、一个虚拟墙面不能被分割等。

步骤S206,显示提醒消息,以使用户根据提醒消息调整拓扑结构数据。

上述提醒信息可以以弹窗或者小窗口的形式显示在编辑界面中,以提醒用户拓扑结构数据存在问题需要进行调整。该提醒消息中可以包含有现有的拓扑结构数据中存在的问题和调整方式等。

步骤S208,获取调整后的拓扑结构数据;执行步骤S210。

当用户根据提醒消息调整好拓扑结构数据后,程序会再次判断调整后的拓扑结构数据是否满足预设规则,如果不满足,需要用户再次对拓扑结构数据进行调整,直到满足预设规则为止。

步骤S210,获取预先配置的目标场景的配置数据;其中,该配置数据包括:目标场景的几何参数和美术效果参数。

在具体实现时,上述目标场景的几何参数可以包括目标对象、虚拟墙面、虚拟天花板、虚拟门窗和虚拟地板的几何参数,美术效果参数可以包括材质、生成类型、连接规则和自定义附加效果。具体地,目标场景中每个部件的几何参数和美术效果参数可以根据用户需求进行设定。

在实际应用中,可以在预设的配置界面中的“LAEWallCofig”中设定虚拟墙面相关的几何参数和美术效果参数。例如,可以设置生成虚拟墙面所属的类型,如果选择了可破坏墙的类型,需要指定使用该设置生成的破坏墙文件;设置虚拟墙面的基础属性,同时该属性可以设置虚拟墙面横向切割后,不同虚拟墙面区域的属性;设置虚拟墙面分割的起始高度;设置虚拟墙面分割的结束高度;设置虚拟墙面的一半厚度(也就是说如果实际墙面是20CM厚,这里需要写10,因为虚拟墙面是分正反面生成的);设置在指定模式中显示的墙面材质,设置生成后显示的墙面材质;设置与虚拟墙面的渲染相关的属性。

在实际应用中,可以在预设的配置界面中的“LAE2HoleCofig”中设定、虚拟门窗相关的几何参数和美术效果参数。例如,设置虚拟门窗开洞的属性、开洞大小、开洞的起始高度(该起始高度通常从开洞的底边到虚拟墙面底边算起,在一些实施例中,默认虚拟门窗的起始高度都以设定的这个高度为基础)。在具体实现时,配置数据中包含配置目标场景中的阻挡附加物,以及配置该附加物默认碰撞属性和附加物声音阻隔默认参数等。

在实际应用中,可以在预设的配置界面中的“LAEFloorCofig”和“LAECeillingCofig”中分别设定虚拟天花板和虚拟地板相关的几何参数和美术效果参数。例如,设置虚拟天花板和虚拟地板的厚度、在指定模式下显示虚拟条天花板和虚拟地板设定的材质、设置生成虚拟天花板和虚拟地板后显示的材质、设置与虚拟天花板和虚拟地板的渲染相关属性、设置Light Map分辨率、设置水平方向和竖直方向的缩放比例、是否默认开启投影等。

在具体实现时,上述配置数据配置完成后,可以保存在预设的配置文件中;上述拓扑结构数据存储在预场景数据中,也即是配置数据和拓扑结构数据两者是分开存储的,可以通过修改配置文件批量快速修改配置数据,也即是修改场景生成结果,也可以理解为拓扑数据和配置数据的独立存储,有利于数据复用和场景后续迭代升级。

步骤S212,基于上述配置数据和拓扑结构数据,生成目标场景。

该方式目的是让关卡设计和制作人员,在简化的视图下快速的创建和迭代虚拟场景对应的拓扑结构,然后程序化流程生成所需的结构和其他物体。使用者在专用的3D可视化编辑界面(相当于上述3D空间编辑界面)下,将需要进行构造的虚拟建筑物通过柱体(相当于上述目标对象)与面的结构搭建在该编辑界面中,并形成一个闭合区域,然后以该结构生成出对应的模型。该方式降低了3D模型设计的门槛,同时提高了美术制作阶段的迭代过程。

上述虚拟场景的生成方法,该方法将编辑界面整合到了虚拟引擎中,用户可打开该编辑界面并直接在编辑界面中的3D空间中进行虚拟场景的拓扑数据构建,构建完成点击生成后,即可根据拓扑结构数据和预设的配置数据生成一模一样的可供最终交付的虚拟场景,使得拓扑结构无需额外手动通过其他外部软件独立生成,提高了虚拟场景生成效率。

本发明实施例还提供了另一种虚拟场景的生成方法,该方法在上述实施例方法的基础上实现;该方法重点描述基于配置数据和拓扑结构数据,生成目标场景的具体过程(通过下述步骤S406实现),如图4所示,该方法包括如下具体步骤:

步骤S402,响应在编辑界面中拖拽目标对象以及连接目标对象的操作,生成目标场景的拓扑结构数据;该拓扑结构数据中包括:连接目标对象形成的线条;其中,连接目标对象形成的线条组成虚拟墙面,相连的虚拟墙面成环状形成虚拟建筑物。

在具体实现时,拓扑结构中的其他结构均可通过目标对象生成,虚拟墙面通过选择两个目标对象进行连接生成,且虚拟墙面支持多段不同材质,每一段都支持独立调整厚度,从而使得用户可以更加便捷的设置所需的拓扑结构。

步骤S404,获取预先配置的目标场景的配置数据。

步骤S406,通过3D空间布尔运算,根据配置数据中的几何参数和美术效果对拓扑结构数据进行渲染,得到目标场景。

上述3D空间布尔运算可以通过对两个以上的物体进行并集、差集、交集的运算,得到新的物体形态。物体在进行布尔运算后随时可以对两个运算对象进行修改操作,布尔运算的方式、效果也可以编辑修改,布尔运算修改的过程可以记录为动画,表现切割效果。

在具体实现时,上述配置数据中包括目标场景的虚拟天花板和虚拟地板的几何参数和美术效果参数;上述步骤S406包括:根据配置数据中虚拟天花板和虚拟地板的几何参数,在拓扑结构数据所包含的虚拟建筑物的顶部生成虚拟天花板,在虚拟建筑物的底部生成虚拟地板;根据配置数据中虚拟天花板和虚拟地板的美术效果参数,渲染生成的虚拟天花板和虚拟地板。在实际应用中,用户可在编辑界面下选择是否需要生成虚拟地板和虚拟天花板,如果均需要生成,程序会根据用户选择的虚拟建筑物和配置数据,在该虚拟建筑物的顶部自动生成虚拟天花板,在底部自动生成虚拟地板;该方式无需用户手动绘制虚拟天花板和虚拟地板,只需根据配置数据自动生成即可,从而简化了生成虚拟天花板和虚拟地板的流程。

上述配置数据中还包括目标场景的虚拟门窗的几何参数;上述根据配置数据中虚拟天花板和虚拟地板的美术效果参数,渲染生成的虚拟天花板和虚拟地板之后,还可以根据配置数据中虚拟门窗的几何参数,在虚拟建筑物的虚拟墙面、虚拟天花板或者虚拟地板上生成虚拟门窗。在具体实现时,所有的虚拟门窗根据用户在配置数据中设置的属性,可在对应的虚拟墙体、虚拟地板或虚拟天花板上利用3D空间的布尔运算自动化生成。用户可以为每一个虚拟门窗配置独立的LAE Attachment文件(可以理解为配置文件),然后将该文件配置到LAE Wall Config上,用户在编辑界面下可在虚拟墙面上选择需要使用的LAEAttachment文件,并调整其位置,在最后生成目标场景时便可以将配置好的Attachment生成到对应的位置上。

在一些实施例中,上述目标场景中包含有至少一种材质的虚拟墙面;本发明在基于配置数据和拓扑结构数据,生成目标场景之后,还可以对材质相同的、且相邻虚拟墙面之间的夹角小于预设阈值的虚拟墙面进行合并处理,得到合并后的虚拟墙面,从而可以减少生成虚拟墙面的总数量,便于后续优化和重新编辑,同时也减少了生成目标场景渲染时的消耗。该预设阈值可以根据用户需求进行设定。

在一些实施例中,生成目标场景的过程中还会自动判断虚拟墙面的顶面和侧面是否可见,从而来减少生成的面片。

在一些实施例中,在基于配置数据和拓扑结构数据,生成目标场景之后,还可以响应针对于目标场景中指定部件的材质设置操作,调整目标场景中指定部件的材质,也可以理解为本发明支持对指定部件的材质的二次编辑,允许在生成的场景中的指定部件上重新编辑材质并保存编辑结果,在不涉及删除行为的拓扑调整时能够保存材质二次编辑的结果,使得虚拟场景开发流程和美术流程衔接更加顺畅。具体地,上述指定部件可以理解为虚拟墙面、虚拟天花板、虚拟门窗、虚拟地板或者挂载在这个虚拟物体上的附加件等。

在一些实施例中,本发明除了材质信息和部件接连部分的细节处理外,支持编辑过程中实时预览生成结果;如图5给出了一种目标场景的生成结果图,该图5中显示有生成后的虚拟墙面、虚拟天花板、虚拟地板、虚拟门窗等。

上述虚拟场景的生成方法,首先响应在编辑界面中拖拽目标对象以及连接目标对象的操作,生成目标场景的拓扑结构数据;进而获取预先配置的目标场景的配置数据;然后通过3D空间布尔运算,根据配置数据中的几何参数和美术效果对拓扑结构数据进行渲染,得到目标场景。该方式可根据配置数据自动对拓扑结构数据进行渲染,来生成虚拟场景,减少了生成虚拟场景渲染时的消耗,也提高了虚拟场景的生成效率。

对应于上述方法实施例,本发明实施例还提供了一种虚拟场景的生成装置,通过终端设备运行虚拟引擎提供编辑界面;如图6所示,该装置包括:

拓扑结构生成模块60,用于响应于在编辑界面对目标场景的拓扑结构编辑操作,生成目标场景的拓扑结构数据;该拓扑结构数据用于指示:构建连接目标场景中的多个目标对象所形成的虚拟衔接对象。

配置数据获取模块61,用于获取预先配置的目标场景的配置数据;其中,该配置数据包括:目标场景的几何参数和美术效果参数。

场景生成模块62,用于基于配置数据和拓扑结构数据,生成目标场景。

上述虚拟场景的生成装置,首先该终端设备响应于在运行虚拟引擎提供的编辑界面中对目标场景的拓扑结构编辑操作,生成目标场景的拓扑结构数据;进而获取预先配置的目标场景的配置数据;然后基于配置数据和拓扑结构数据,生成目标场景。该方式可在终端设备运行虚拟引擎提供的编辑界面中对目标场景的拓扑结构进行编辑,从而生成拓扑结构数据,该方式无需借助外部工具生成拓扑结构,避免了拓扑结构的导入导出,简化了结构生成流程;同时,该方式可根据预先配置好的配置数据自动对拓扑结构数据进行渲染,生成虚拟场景,从而提高了虚拟场景的生成效率。

进一步地,上述拓扑结构生成模块60,还用于:响应在编辑界面中拖拽目标对象以及连接目标对象的操作,生成目标场景的拓扑结构数据;其中,该拓扑结构数据中包括:连接目标对象形成的线条;其中,连接目标对象形成的线条为虚拟墙面,相连的虚拟墙面成环状形成虚拟建筑物。

具体地,上述拓扑结构数据的数据结构为半边数据结构;其中,该拓扑结构数据中的每个虚拟墙面对应的线条作为一条边,一条边分为有方向的两个半边,两个半边的方向相反;上述虚拟建筑物包括:由多个指定方向的半边围成的环状对应的区域。

在具体实现时,上述装置包括检测模块,用于:判断拓扑结构数据中是否存在形成环状的多个半边;如果存在,判断环状的围绕方向是否为指定方向;如果是指定方向,确定形成环状的多个半边所围绕的区域为虚拟建筑物。

在具体实现时,上述目标场景的几何参数包括一下至少一种对象的几何参数:目标对象、虚拟墙面、虚拟天花板、虚拟门窗和虚拟地板,美术效果参数包括材质参数、生成类型参数、连接规则参数和自定义附加效果参数。

进一步地,上述场景生成模块62,还用于:通过3D空间布尔运算,根据配置数据中的几何参数和美术效果对拓扑结构数据进行渲染,得到目标场景。

在具体实现时,上述配置数据中包括目标场景的虚拟天花板和虚拟地板的几何参数和美术效果参数;上述场景生成模块62,还用于:根据配置数据中虚拟天花板和虚拟地板的几何参数,在拓扑结构数据所包含的虚拟建筑物的顶部生成虚拟天花板,在虚拟建筑物的底部生成虚拟地板;根据配置数据中虚拟天花板和虚拟地板的美术效果参数,渲染生成的虚拟天花板和虚拟地板。

具体地,上述配置数据中还包括目标场景的虚拟门窗的几何参数;上述场景生成模块62,还用于:在根据配置数据中虚拟天花板和虚拟地板的美术效果参数,渲染生成的虚拟天花板和虚拟地板之后,根据配置数据中虚拟门窗的几何参数,在虚拟建筑物的虚拟墙面、虚拟天花板或者虚拟地板上生成虚拟门窗。

在具体实现时,上述目标场景中包含有至少一种材质的虚拟墙面;上述装置还包括场景优化模块,用于:在基于配置数据和拓扑结构数据,生成目标场景之后,对材质相同的、且相邻虚拟墙面之间的夹角小于预设阈值的虚拟墙面进行合并处理,得到合并后的虚拟墙面。

具体地,上述装置还包括数据验证模块,用于:在基于配置数据和拓扑结构数据,生成目标场景之前,判断拓扑结构数据是否满足预设规则;如果不满足,显示提醒消息,以使用户根据提醒消息调整拓扑结构数据。

进一步地,上述装置还包括材质设置模块,用于:在基于配置数据和拓扑结构数据,生成目标场景之后,响应针对于目标场景中指定部件的材质设置操作,调整目标场景中指定部件的材质。

本发明实施例所提供的虚拟场景的生成装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

本发明实施例还提供了一种终端设备,如图7所示,该终端设备包括处理器101和存储器100,该存储器100存储有能够被处理器101执行的机器可执行指令,该处理器101执行机器可执行指令以实现上述虚拟场景的生成方法。

进一步地,图7所示的终端设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。

其中,存储器100可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。

本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,该计算机可执行指令促使处理器实现上述虚拟场景的生成方法,具体实现可参见方法实施例,在此不再赘述。

本发明实施例所提供的虚拟场景的生成方法、装置和终端设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 虚拟场景的生成方法、装置和终端设备
  • 虚拟场景中的对象控制方法、装置及终端设备
技术分类

06120113248547