CN115382215A - 虚拟场景中天气效果的生成方法、装置和电子设备 - Google Patents
虚拟场景中天气效果的生成方法、装置和电子设备 Download PDFInfo
- Publication number
- CN115382215A CN115382215A CN202210869799.2A CN202210869799A CN115382215A CN 115382215 A CN115382215 A CN 115382215A CN 202210869799 A CN202210869799 A CN 202210869799A CN 115382215 A CN115382215 A CN 115382215A
- Authority
- CN
- China
- Prior art keywords
- weather
- target
- target weather
- effect
- blueprint
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
- A63F2300/663—Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating liquid objects, e.g. water, gas, fog, snow, clouds
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供了一种虚拟场景中天气效果的生成方法、装置和电子设备,获取从预设的多个天气对象中选择的目标天气对象,天气对象用于实现天气效果;基于目标天气对象更新天气蓝图框架的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;基于目标天气蓝图,在虚拟场景中生成目标天气效果。该方式从预先设置好的多个天气对象中选择目标天气对象,节省了制作天气对象的时间;然后根据目标天气对象对应的天气蓝图,在虚拟场景中显示目标天气对象对应的目标天气效果,该方式自动化完成,节省了人力,提高了虚拟场景中天气效果实现的效率。
Description
技术领域
本发明涉及软件开发技术领域,尤其是涉及一种虚拟场景中天气效果的生成方法、装置和电子设备。
背景技术
在游戏引擎中为游戏场景制作天气现象是较为常见的功能,该天气现象包括雨、雪、闪电、彩虹等。相关技术中,可通过美术人员手动实现天气现象的制作,但是该方式需要美术人员手动创建天气蓝图、手动修改天气对应的场景材质,使得手动制作过程繁琐且运用在游戏中逻辑复杂,需要消耗大量的人力。为了简化制作流程,还可以采用插件的方式制作游戏场景中的天气现象,但是现有插件只能以蓝图形式实现单个的天气现象,若想使用其他天气现象,需要手动修改材质和蓝图,导致实现效果有限且制作效率低。
发明内容
本发明的目的在于提供一种虚拟场景中天气效果的生成方法、装置和电子设备,以提高游戏场景中设置天气效果的效率。
第一方面,本发明提供了一种虚拟场景中天气效果的生成方法,该方法包括:获取被选中的目标天气对象;目标天气对象包含在预设的多个天气对象中;天气对象用于实现对应的天气效果;天气对象中包括用于实现对应的天气效果的材质信息和/或网格信息;基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;基于目标天气蓝图,在虚拟场景中生成目标天气效果。
在可选的实施方式中,上述基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图的步骤,包括:将天气蓝图框架中的属性信息,更新为与目标天气对象对应的目标天气效果相匹配的属性信息;其中,属性信息包括风力、温度、湿度和雾效中的至少一种;将属性信息更新后的天气蓝图框架,确定为目标天气蓝图。
在可选的实施方式中,上述获取被选中的目标天气对象的步骤之前,上述方法还包括:生成包含有属性信息的天气蓝图框架;其中,属性信息中的属性均设置为默认值。
在可选的实施方式中,预设的多个天气对象中的每个所述天气对象,通过下述方式构建:通过对网格面片的堆叠,形成初始对象;获取初始对象的顶点数据;其中,顶点数据中包含有初始对象的多个顶点的坐标位置;基于顶点数据,对初始对象进行坐标变换,得到朝向镜头朝向的中间对象;设置中间对象的属性信息,得到天气对象。
在可选的实施方式中,上述基于目标天气蓝图,在虚拟场景中生成目标天气效果的步骤,包括:基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型。
在可选的实施方式中,上述基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型的步骤,包括:识别虚拟场景中需要调整材质属性的指定模型;基于目标天气蓝图中目标天气对应的材质信息,调整指定模型的材质属性,得到指定模型在目标天气效果下的显示状态;基于显示状态在虚拟场景中显示指定模型。
在可选的实施方式中,上述基于目标天气蓝图中目标天气对应的材质信息,调整指定模型的材质属性,得到指定模型在目标天气效果下的显示状态的步骤,包括:扫描指定模型的材质属性,得到指定模型的材质设置节点;将目标天气对象的材质设置节点与指定模型的材质设置节点进行自动化连接;通过材质设置节点的连接关系,将指定模型的材质属性叠加目标天气对象对应的材质信息指示的材质属性,得到指定模型在目标天气效果下的显示状态。
在可选的实施方式中,上述基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型的步骤之后,上述方法还包括:根据原有材质转换指令,将材质属性调整后的指定模型的材质属性,替换为材质属性调整前指定模型的材质属性。
在可选的实施方式中,上述基于目标天气蓝图,在虚拟场景中生成目标天气效果的步骤之后,上述方法还包括:根据目标天气对象对应的材质信息,生成拍摄虚拟场景的虚拟镜头的屏幕后处理效果;其中,屏幕处理效果与目标天气效果相匹配,屏幕后处理效果包括:屏幕结冰、屏幕打湿或者屏幕热气扭曲中的一种。
在可选的实施方式中,上述方法还包括:识别在目标天气效果下虚拟场景中需要遮挡的场景模型,为场景模型添加遮挡物。
在可选的实施方式中,通过终端设备提供一图形用户界面,该图形用户界面中显示有用于在虚拟场景中生成天气效果的控件;上述方法还包括:响应于针对框架生成控件的触发操作,得到天气蓝图框架;响应于预设的多个天气对象中目标天气对象的选中操作,获取被选中的目标天气对象,并基于目标天气对象,更新天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图;其中,一个天气对象对应一个可选择控件;响应于针对效果转换控件的触发操作,基于目标天气蓝图,在虚拟场景中生成目标天气效果。
在可选的实施方式中,上述方法还包括:响应于堆积设置控件的触发操作,预览虚拟场景中模型表面的湿度和雪覆盖度;响应于风力设置控件的触发操作,设置风的矢量方向。
在可选的实施方式中,上述方法还包括:响应于将虚拟角色拖拽至生成目标天气效果的虚拟场景中的指定位置的操作,将虚拟角色设置在指定位置。
在可选的实施方式中,上述方法还包括:响应于针对目标天气蓝图指示的生成时间和/或生成位置的修改操作,根据修改结果在虚拟场景中生成目标天气效果。
在可选的实施方式中,上述方法还包括:响应于将目标天气蓝图中的生成位置修改为虚拟角色所在区域的操作,在虚拟角色所在区域生成目标天气效果。
第二方面,本发明提供了一种虚拟场景中天气效果的生成装置,该装置包括:天气对象确定模块,用于获取被选中的目标天气对象;目标天气对象包含在预设的多个天气对象中;天气对象用于实现对应的天气效果;天气对象中包括用于实现对应的天气效果的材质信息和/或网格信息;属性更新模块,用于基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;天气效果生成模块,用于基于目标天气蓝图,在虚拟场景中生成目标天气效果。
第三方面,本发明提供了一种电子设备,该电子设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,该处理器执行机器可执行指令以实现上述虚拟场景中天气效果的生成方法。
第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述虚拟场景中天气效果的生成方法。
本发明实施例带来了以下有益效果:
本发明提供的一种虚拟场景中天气效果的生成方法、装置和电子设备,首先获取被选中的目标天气对象,该目标天气对象包含在预设的多个天气对象中,天气对象用于实现对应的天气效果;基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;然后基于目标天气蓝图,在虚拟场景中生成目标天气效果。该方式从预先设置好的多个天气对象中选择目标天气对象,节省了制作天气对象的时间;然后根据目标天气对象对应的天气蓝图,在虚拟场景中显示目标天气对象对应的目标天气效果,该方式自动化完成,节省了人力,提高了虚拟场景中天气效果实现的效率。
本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种虚拟场景中天气效果的生成方法的流程图;
图2为本发明实施例提供的另一种虚拟场景中天气效果的生成方法的流程图;
图3为本发明实施例提供的一种雨对象的制作示意图;
图4为本发明实施例提供的一种初始对象的坐标变换示意图;
图5为本发明实施例提供的一种屏幕后处理效果的示意图;
图6为本发明实施例提供的另一种虚拟场景中天气效果的生成方法的流程图;
图7为本发明实施例提供的天气对象创建控件的示意图;
图8为本发明实施例提供的一种虚拟场景中天气效果的生成装置的结构示意图;
图9为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在游戏引擎中为游戏场景制作天气现象是较为常见的功能,该天气现象包括雨、雪、闪电、彩虹等。相关技术中,可通过美术人员手动实现天气现象的制作,手动制作天气现象时需要准备以下内容:
1.需要制作模型、材质、贴图、特效和蓝图逻辑等所需资源,该制作过程繁琐而且无法快速搭建到游戏场景中,一些天气效果组合也不能达到好的需求效果,天气之间的联动性不强,制作困难容易出错,对客户端程序的逻辑实现有较大的依赖,调试时间久,效果不理想。
2.利用粒子特效来制作天气现象,然后手动修改材质的PBR(也即是高光反射/光泽)属性,来营造受天气影响的虚拟物体的表面效果。例如,降水打湿的物体表面、降雪落在物体上的堆积,都需要人手动去Material Editor(该Material Editor是用来描述3D模型的顶点数据和三角面指标的)设计PBR材质节点的Shader(相当于着色器)连接,这个过程完全手动而且费时长,如果物体多,材质也多,这时就需要很多人天去设置不同的物体的材质,这样效率较低,而且如果涉及到多人编辑时,时间和效果都无法保障,较难达到满意的效果,也浪费了人天。其中,PBR材质是一种基于物理的渲染材质,可提供灯光与曲面交互方式的精确表示;人天是指一个人一天完成的工作量。
3.创建天气物体。例如,创建雨、雪、闪电等天气物体时,手动制作过程繁琐且运用在游戏里逻辑复杂。
因此,美术人员手动实现天气现象制作的方式,制作过程繁琐且运用在游戏中逻辑复杂,需要消耗大量的人力。同时,目前游戏引擎中没有直接解决天气现象的功能,只能通过自己实现(相当于上述手动实现)或插件的方法去制作天气现象,相关技术中提供的插件有Dynamic_Weather和Good rain两种天气插件。
但是,Dynamic_Weather天气插件只能以蓝图的形式实现每个单个的天气现象,并无一套整体工具去整合,其他人想使用也只能拷贝其工程来修改里面材质和蓝图,并不能很好的解决生产中的制作效率和制作质量问题,并且天气现象之间并无关联,例如:下雪,下雨等单个天气现象;同时,该插件没有统一的操作界面,需要手动去资源栏调出,蓝图编辑器中添加各种各样的节点,并且需要有相关天气蓝图制作的知识,操作复杂。另外,该方式无统一的材质转换功能,做下雨下雪等收天气现象影响的物体时,需要逐个手动去改物体材质球里面的节点连接,整个过程十分的繁琐,并且需要有相关天气材质制作的知识。
GoodRain天气插件只实现了做下雨的方案,实现的效果较单一,如果只做雨天还能勉强使用,但要做复杂联动的天气变化(例如各种天气的瞬时变化,从雨天过渡到雪天,时间上的控制天气上的变化,空间上的控制天气的变化,与水面的交互等复杂的变换效果),就无法做到。
综上所述,在游戏引擎中制作天气现象的步骤冗长,制作质量不可控。就算有经验的人制作起来,蓝图的内置连接逻辑繁杂、实现效果有限,制作效率差是一贯的通病,不同软件对天气效果的要求参差不齐,就目前能做到的极限来说,较完美的天气效果制作起来还是比较困难的。
基于上述问题,本发明实施例提供了一种虚拟场景中天气效果的生成方法、装置和电子设备,该技术可以应用于为游戏场景添加天气效果的场景中。为了便于对本发明实施例进行理解,首先对本发明实施例提供的一种虚拟场景中天气效果的生成方法进行详细介绍,该方法应用于安装有天气插件的游戏引擎,该天气插件可以在虚拟场景中自动生成天气效果(该天气效果也可以理解为具有某一天气现象的效果);如图1所示,该方法包括如下具体步骤:
步骤S102,获取被选中的目标天气对象;该目标天气对象包含在预设的多个天气对象中;该天气对象用于实现对应的天气效果;该天气对象中包括用于实现对应的天气效果的材质信息和/或网格信息。
在具体实现时,研发人员预先在天气插件中设置有多个天气对象(也可称为天气物体),该天气对象可以包括闪电、雨、雷电雨、冰雹、尘土、沙尘暴、彩虹、极光、雪等,预设的天气对象具体包括哪些由研发需求确定。每种天气对象都对应有相应的天气效果,例如,雨对应的天气效果是降雨,雪对应的天气效果是降雪等。
每个天气对象中都包括用于实现其对应的天气效果的材质信息和/或网格信息,具体地,天气对象可以仅对应有材质信息,也可以仅对应有网格信息,还可以既对应有材质信息又对应有网格信息。其中,材质信息用于指示天气对象的材质属性、在天气对象对应的天气效果下,虚拟场景中的模型的材质属性等;网格信息用于指示天气对象的形态和大小,以及天气对象对应的天气效果的形态等。
步骤S104,基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置。
上述天气蓝图框架是生成任意一种天气效果都需要的通用框架,该通用框架中包含有预设的、与天气相关的属性信息,该属性信息中包含有多个属性,以及每个属性对应的默认值;其中,属性信息中可以包含属性有:风力、温度、湿度和雾效等。在具体实现时,在获取到目标天气对象后,会自动识别目标天气对象的材质信息,然后根据目标天气对象的材质信息,更新天气蓝图框架中的属性信息,从而将属性更新后的天气蓝图框架确定为目标天气对象对应的目标天气蓝图,该目标天气蓝图中包含有实现目标天气对象的目标天气效果的逻辑,同时还包含有在虚拟场景中生成目标天气效果的生成时间和生成位置。
上述生成时间和生成位置可以根据用户需求进行调节,还可以采用默认值。例如,在虚拟场景中生成目标天气效果的时间可以是中午,生成位置可以是虚拟角色所位于的位置,还可以是整个虚拟场景等。
需要说明的是,游戏引擎构建的游戏场景(相当于上述虚拟场景)包含节点网络,该节点网络用于构建游戏逻辑和模型(该模型可以称为游戏场景中的物体)。蓝图通常是游戏引擎中一种特殊的asset类型,蓝图可以创建逻辑,以直观的、基于节点的方式来设置变量数据,该变量数据包括材质信息和网格信息等,也即是蓝图主要用于构建游戏逻辑和物体对象等。
步骤S106,基于目标天气蓝图,在虚拟场景中生成目标天气效果。
在具体实现时,可以根据目标天气蓝图的逻辑,在虚拟场景中自动生成目标天气对象对应的目标天气效果。具体地,可以根据目标天气蓝图对应的目标天气对象的材质信息或者对象特征(该对象特征包括天气对象的湿度、形态等),调整虚拟场景中物体的材质属性,以使物体的材质属性与目标天气对象对应的目标天气效果相匹配,从而可以在目标天气效果下显示的虚拟场景。
在实际应用中,通过终端设备提供一图形用户界面,该图形用户界面中显示有天气插件中用于在虚拟场景中生成天气效果的多个控件;因而,响应于针对天气生成控件的触发操作,得到天气蓝图框架;然后响应于预设的多个天气对象中目标天气对象的选中操作,可获取被选中的目标天气对象,并基于目标天气对象,更新天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图;其中,一个天气对象对应一个可选择控件;响应于针对效果转换控件的触发操作,基于目标天气蓝图,在虚拟场景中生成目标天气效果。
具体地,在天气对象创建控件中,显示有预设的多个天气对象,用户可以从预设的多个天气对象中选择一个天气对象,作为被选中的目标天气对象,以使游戏引擎获取到目标天气对象。具体地,用户可以通过鼠标点击天气对象创建控件中所需的天气对象,并将点击的天气对象作为目标天气对象。例如,用户想要在虚拟场景中生成降雨的天气效果时,需要通过鼠标点击天气对象创建控件中的雨对象;用于想要在虚拟场景中生成降雪的天气效果时,需要通过鼠标点击天气对象创建控件中的雪对象。
本发明实施例提供的一种虚拟场景中天气效果的生成方法,首先获取被选中的目标天气对象,该目标天气对象包含在预设的多个天气对象中,天气对象用于实现对应的天气效果;基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;然后基于目标天气蓝图,在虚拟场景中生成目标天气效果。该方式从预先设置好的多个天气对象中选择目标天气对象,节省了制作天气对象的时间;然后根据目标天气对象对应的天气蓝图,在虚拟场景中显示目标天气对象对应的目标天气效果,该方式自动化完成,节省了人力,提高了虚拟场景中天气效果实现的效率。
本发明实施例还提供了另一种虚拟场景中天气效果的生成方法,该方法在上述实施例的基础上实现,该方法重点描述基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图的具体过程(具体通过下述步骤S206-S208实现),以及基于目标天气蓝图,在虚拟场景中生成所述目标天气效果的具体过程(通过下述步骤S210实现);如图2所示,该方法包括如下具体步骤:
步骤S202,生成包含有属性信息的天气蓝图框架;其中,属性信息包括风力、温度、湿度和雾效中的至少一种;属性信息中的属性均设置为默认值。
在具体实现时,游戏引擎为天气插件提供的图形用户界面中显示有框架生成控件,用户点击该框架生成控件,即可一键生成包含有风力、温度、湿度和雾效等中枢功能的属性的天气蓝图框架。在天气蓝图框架中,属性信息中的属性值均为研发设计的默认值,该默认值用户可以调节,也可以不调节。
步骤S204,获取被选中的目标天气对象;该目标天气对象包含在预设的多个天气对象中,天气对象用于实现对应的天气效果。
在具体实现时,目标天气对象是用户从预先设置好的多个天气对象中选择的,其中,预设的多个天气对象中的每个天气对象,可通过下述步骤10-13构建:
步骤10,通过对网格面片的堆叠,形成初始对象。
该初始对象是根据单一的网格面片堆叠而成的,如图3所示为雨对象的制作示意图,图3中的左侧是多个网格面片堆叠的效果,每一个单片对应一个网格面片,通过对堆叠的网格面片进行转换就可以形成图3右侧部分显示的雨对象了。同时,该初始对象中的每个网格面片也仅用了一种材质,相对于现有技术中利用粒子特效制作天气对象的方式,该初始对象的制作方式无需粒子***的初始化时间,从而提升了对象的制作效率。
上述网格面片的堆叠效果,也可以理解为天气对象的初始状态(相当于初始对象),该初始状态通常是不可见的。由于堆叠效果是在顶点着色器中计算的,使得该制作方式几乎没有CPU(Central Processing Unit,中央处理器)的计算成本,并且运行速度超快。
步骤11,获取初始对象的顶点数据;其中,顶点数据中包含有初始对象的多个顶点的坐标位置。
步骤12,基于顶点数据,对初始对象进行坐标变换,得到朝向镜头朝向的中间对象。
在具体实现时,需要通过GPU(Graphics Processing Unit,图像处理器)对初始对象的顶点进行索引,得到顶点数据,这时堆叠网格面片和最终屏幕看到的天气对象是两个不同的坐标系,这时要进行坐标系变换,也即是通过求两个坐标系的变换坐标系得出变换坐标系,然后再根据这个变换坐标系,通过对网格面做矩阵变换,最终形态变换为长条形的片面。变换后的物体这时再经过一次往世界空间的转换,再把长条形角面的朝向镜头朝向,变成Billboard物体(相当于中间对象)。
为了便于对初始对象进行坐标变换进行理解,如图4所示提供了一种初始对象的坐标变换示意图;图4中的三个圆柱体可以标识初始对象,观察点e表示相机位置,目标点t也计算式初始对象上的一个三角面片,朝向矢量用于指示目标点在对象所在坐标系下的朝向,将该朝向矢量向世界坐标系进行变换,可以得到朝向镜头朝向的中间对象。
步骤13,设置中间对象的属性信息,得到天气对象。
这里的属性信息可以包括天气对象的材质属性、下降速度、下降轨迹或者其他属性等。例如,以制作雨对象为例,上述变成Billboard物体时,即形成了初始的雨下降颗粒,这时通过对面片进行postion操作,根据预设的速度与方向进行下降位移,即可实现下落的运动轨迹,再根据设定生成的天气对象,赋予不同质感的材质与透明贴图,并且在材质上设置融合与过渡,即初步生成雨对象。
步骤S206,将天气蓝图框架中的属性信息,更新为与目标天气对象对应的目标天气效果相匹配的属性信息。
由于不同的天气效果对应不同的属性信息,且每个天气效果对应的属性信息是预先设置好的,且每个天气效果对应的属性信息还可以根据用户需求任意设置。在具体实现时,在用户选择了目标天气对象后,即可将天气蓝图框架中的属性信息,更新为目标天气对象对应的目标天气效果的属性信息。
步骤S208,将属性信息更新后的天气蓝图框架,确定为目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置。
步骤S210,基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型。
在具体实现时,可以根据目标天气蓝图对应的目标天气对象的材质信息或者对象特征(该对象特征包括天气对象的湿度、形态等),调整虚拟场景中指定模型的材质属性,该指定模型也即是虚拟场景中需要修改材质属性的物体,该物体可以是虚拟场景中的景物、建筑物或者地面等。在实际应用中,可以预先设置好虚拟场景中的哪些物体为指定模型,也可以自动识别虚拟场景所包含的物体中需要修改材质属性的指定模型。
虚拟场景中指定模型的材质属性会根据当前目标天气效果进行调整,以使指定模型的材质属性与目标天气对象对应的目标天气效果相匹配,从而可以在目标天气效果下显示的虚拟场景。
步骤S212,根据目标天气对象对应的材质信息,生成拍摄虚拟场景的虚拟镜头的屏幕后处理效果;其中,屏幕处理效果与目标天气效果相匹配,屏幕后处理效果包括:屏幕结冰、屏幕打湿或者屏幕热气扭曲中的一种。
在具体实现时,可以根据目标天气对象对应的材质信息,动态生成屏幕后处理,用来扭曲原虚拟镜头屏幕达到有镜头被打湿、结冰、热气扭动的效果,更加真实的表现了目标天气效果。在实际应用中,屏幕后处理的实现方式是通过预制的节点连接虚拟屏幕的材质节点,自动生成雨点、冰冻的法线贴图,然后通过Post Process Volume(简称后期处理盒子)生成后期效果(相当于屏幕后处理效果)。如图5所示为本发明实施例提供的一种屏幕后处理效果的示意图,图5中显示有屏幕镜头被打湿的效果。
具体地,游戏引擎为天气插件提供的图形用户界面中显示有快速设置玩家角色的天气后期效果的控件,点击该控件即可根据目标天气效果快速生成屏幕后处理效果(也可理解为一键生成)。在具体实现时,上述屏幕打湿效果的具体实现方式是通过word normal判定雨滴的位置和流动方向,根据判定结果生成雨滴落的打湿效果;上述屏幕热气扭曲效果可以通过噪声图扰动虚拟屏幕实现;上述屏幕结冰可以通过冰裂法线-贴屏幕法实现。
上述虚拟场景中天气效果的生成方法,该方式利用了全自动化流程与先进的天气对象设置效果,有效提高了生产效率,且该方式具有制作度快、生成的天气效果质量优、易于实现并且所占用内存极低、优化性能好的特点;同时,该技术用于手游制作也不会有任何性能问题。
本发明实施例还提供了另一种虚拟场景中天气效果的生成方法,该方法在上述实施例的基础上实现,该方法重点描述基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型的具体过程(具体通过下述步骤S508-S512实现);如图6所示,该方法包括如下具体步骤:
步骤S502,生成包含有属性信息的天气蓝图框架;其中,属性信息包括风力、温度、湿度和雾效。
步骤S504,获取被选中的目标天气对象;该目标天气对象包含在预设的多个天气对象中,天气对象用于实现对应的天气效果。
预设的多个天气对象是研发人员提前设置好的,每个天气对象均可以实现相应的天气效果。如图7所示为本发明实施例提供的天气对象创建控件的示意图,该天气创建控件(天气创建控件相当于上述天气对象对应的课选择控件)中包含有预设的9个天气对象,图7中的Rain表示雨对象、Lightning表示闪电对象、L-rain表示雷电雨对象、Snow表示雪对象、Hail表示冰雹对象、Dust表示尘土对象、SandStrom表示沙尘暴对象、Rainbow表示彩虹对象、Aurora表示极光对象。用户可以点击图6所示的任何一个天气对象对应的图标,来选中该天气对象。
图7中的第二行显示有“Follow seletion object’s postion to create”,在图7中该显示区域前方的方框中打勾,即可根据选择物体(该物体通常是虚拟对象中的物体)的坐标生成天气物体。
在用户选中目标天气对象后,用户可以点击天气插件对应的列出天气对象的控件,然后会在图形用户界面中显示用户选择中的目标天气对象的列表,点击该列表还可以修改该列表中的信息,该列表中的信息包括属性信息等,具体根据研发需求设定。
步骤S506,基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置。
在一些实施例中,还可以响应于针对目标天气蓝图指示的生成时间和/或生成位置的修改操作,根据修改结果在虚拟场景中生成目标天气效果。具体地,目标天气效果在虚拟场景中的生成时间和生成位置都是可以用户手动修改或者调节的,从而可以增加游戏的趣味性。
步骤S508,识别虚拟场景中需要调整材质属性的指定模型。
在具体实现时,可以自动识别虚拟场景中当前需要调整材质属性的物体,将需要调整材质属性的物体确定为指定模型;也可以由用户选择虚拟场景中需要调整材质属性的物体。
步骤S510,基于目标天气蓝图中目标天气对应的材质信息,调整指定模型的材质属性,得到指定模型在目标天气效果下的显示状态。
在具体实现时,目标天气对应的材质信息中可以包含有指定模型需要调整的材质属性,从而可以直接将指定模型的材质属性,调整为材质信息中包含的材质属性和指定模型的原有材质属性的叠加,从而可使得虚拟场景中表现的天气效果更加真实。在一些实施例中,也可以根据目标天气对象对应的目标天气效果选择材质,然后将指定模型的材质属性叠加上选择的材质。
在实际应用中,上述步骤S510可以通过下述步骤20-22实现:
步骤20,扫描指定模型的材质属性,得到指定模型的材质设置节点。
步骤21,将目标天气对象的材质设置节点与指定模型的材质设置节点进行自动化连接。
步骤22,通过材质设置节点的连接关系,将指定模型的材质属性叠加目标天气对象对应的材质信息指示的材质属性,得到指定模型在目标天气效果下的显示状态。
在具体实现时,该方式通过编程动态设置有材质***,该材质***可扫描虚拟场景中物体的原有材质属性,分析材质属性的数据结构,然后确定出物体的材质设置节点的位置;然后将预设的天气对象的材质设置节点与物体的材质设置节点进行自动化连接操作,此时,物体的材质设置节点的功能将变为天气对象的材质设置节点的功能,也即是改变了材质***中节点的结构,从而可以通过天气对象的材质设置节点设置物体的材质。因而,本发明可以为虚拟场景中物体设置任意天气对象所需的材质属性。
在实际应用中,游戏引擎为天气插件提供的图形用户界面中显示有转换材质为天气材质的控件,用户点击该控件即可将指定模型的材质属性调整为所选的天气对象对应的材质属性,或者调整为所选择的材质属性。
在具体实现时,上述天气控件还具有材质批量转换功能:选取需要改变的根材质文件,按转换材质为天气材质的控件就能把材质自动转换成天气材质,材质会有打湿,积雪、积沙的表现,并且不会破坏材质的原有功能。
在一些实施例中,还可以根据原有材质转换指令,将材质属性调整后的指定模型的材质属性,替换为材质属性调整前指定模型的材质属性。具体地,图形用户界面中还显示有还原天气材质为普通材质的控件,用户点击该控件即可发送原有材质转换指令,从而可将指定模型的调整后的材质属性(相当于天气材质)替换为普通材质(相当于指定对象原有材质)。
步骤S512,基于显示状态在虚拟场景中显示指定模型。
步骤S514,根据目标天气对象对应的材质信息,生成拍摄虚拟场景的虚拟镜头的屏幕后处理效果;其中,屏幕处理效果与目标天气效果相匹配。
在实际应用中,本发明实施例提供的天气插件,还可以识别在目标天气效果下虚拟场景中需要遮挡的场景模型,为场景模型添加遮挡物。具体地,可以点击图形用户界面中提供的创建遮挡物的控件,自动为虚拟场景中的场景模型添加遮挡物。
在具体实现时,本发明实施例提供的天气插件还包括快速设置面板,该快速设置面板中显示有堆积设置控件,响应于该堆积设置控件的触发操作(可以是对控件的点击操作),可快速预览虚拟场景中模型表面的湿度和雪覆盖度。上述快速设置面板中还显示有风力设置控件,响应于风力设置控件的触发操作,可以快速设置风的矢量方向。
在实际应用中,响应于将虚拟角色拖拽至生成目标天气效果的虚拟场景中的指定位置的操作,将虚拟角色设置在指定位置。具体地,上述快速设置面板中还设置有角色设置控件,触发该控件可将指定角色拖拽入虚拟场景中的指定位置。
在一些实施例中,还可以响应将目标天气述目标天气蓝图中的生成位置修改为虚拟角色所在区域的操作,在虚拟角色所在区域生成标天气。该方式可以增加游戏的趣味性,有利于提升玩家游戏体验。
在实际应用中,本发明实施例提供的天气插件还包含有踩踏地置图管理***,该***可以设置湿泥、雪地被人或物体压后的痕迹;该天气插件还包括压痕控制***,该***可以控制压痕。
上述虚拟场景中天气效果的生成方法,该方式可有力地降低由于天气制作步骤繁琐和制作中带来的回溯更改,并且有先进的天气制作模式生产各种天气效果,快速达到产品级的制作,并且对制作人无过高要求的开发周期和成本最小化、产品设计质量的最优化、生产效率的最大化。
对应于上述方法实施例,本发明实施例还提供了一种虚拟场景中天气效果的生成装置,如图8所示,该装置包括:
天气对象确定模块70,用于获取被选中的目标天气对象;目标天气对象包含在预设的多个天气对象中;天气对象用于实现对应的天气效果;天气对象中包括用于实现对应的天气效果的材质信息和/或网格信息。
属性更新模块71,用于基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置。
天气效果生成模块72,用于基于目标天气蓝图,在虚拟场景中生成目标天气效果。
上述虚拟场景中天气效果的生成装置,首先获取被选中的目标天气对象,该目标天气对象包含在预设的多个天气对象中,天气对象用于实现对应的天气效果;基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;然后基于目标天气蓝图,在虚拟场景中生成目标天气效果。该方式从预先设置好的多个天气对象中选择目标天气对象,节省了制作天气对象的时间;然后根据目标天气对象对应的天气蓝图,在虚拟场景中显示目标天气对象对应的目标天气效果,该方式自动化完成,节省了人力,提高了虚拟场景中天气效果实现的效率。
具体地,上述天气对象确定模块70,用于:将天气蓝图框架中的属性信息,更新为与目标天气对象对应的目标天气效果相匹配的属性信息;其中,属性信息包括风力、温度、湿度和雾效中的至少一种;将属性信息更新后的天气蓝图框架,确定为目标天气蓝图。
在具体实现时,上述装置还包括框架生成模块,用于:在获取被选中的目标天气对象之前,生成包含有属性信息的天气蓝图框架;其中,属性信息中的属性均设置为默认值。
在实际应用中,预设的多个天气对象中的每个天气对象,通过下述方式构建:通过对网格面片的堆叠,形成初始对象;获取初始对象的顶点数据;其中,顶点数据中包含有初始对象的多个顶点的坐标位置;基于顶点数据,对初始对象进行坐标变换,得到朝向镜头朝向的中间对象;设置中间对象的属性信息,得到天气对象。
进一步地,上述天气效果生成模块72,用于:基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型。
进一步地,上述天气效果生成模块72,还用于:识别虚拟场景中需要调整材质属性的指定模型;基于目标天气蓝图中目标天气对应的材质信息,调整指定模型的材质属性,得到指定模型在目标天气效果下的显示状态;基于该显示状态在虚拟场景中显示指定模型。
在具体实现时,上述天气效果生成模块72,用于:扫描指定模型的材质属性,得到指定模型的材质设置节点;将目标天气对象的材质设置节点与指定模型的材质设置节点进行自动化连接;通过材质设置节点的连接关系,将指定模型的材质属性叠加目标天气对象对应的材质信息指示的材质属性,得到指定模型在目标天气效果下的显示状态。
进一步地,上述装置还包括材质转换模块,用于:在基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型之后,根据原有材质转换指令,将材质属性调整后的指定模型的材质属性,替换为材质属性调整前指定模型的材质属性。
进一步地,上述装置还包括屏幕效果生成模块,用于:在基于目标天气蓝图,在虚拟场景中生成目标天气效果之后,根据目标天气对象对应的材质信息,生成拍摄虚拟场景的虚拟镜头的屏幕后处理效果;其中,屏幕处理效果与目标天气效果相匹配,屏幕后处理效果包括:屏幕结冰、屏幕打湿或者屏幕热气扭曲中的一种。
在具体实现时,上述装置还包括遮挡设置模块,用于:识别在目标天气效果下虚拟场景中需要遮挡的场景模型,为场景模型添加遮挡物。
在实际应用中,通过终端设备提供一图形用户界面,该图形用户界面中显示有用于在虚拟场景中生成天气效果的控件;上述框架生成模块,用于响应于针对天气生成控件的触发操作,得到天气蓝图框架;天气对象确定模块70,用于响应于预设的多个天气对象中目标天气对象的选中操作,获取被选中的目标天气对象,并基于目标天气对象,更新天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图;其中,一个天气对象对应一个可选择控件;属性更新模块71,用于响应于针对效果转换控件的触发操作,基于目标天气蓝图,在虚拟场景中生成目标天气效果。
在实际应用中,上述装置还包括快速设置模块,用于:响应于堆积设置控件的触发操作,预览虚拟场景中模型表面的湿度和雪覆盖度;响应于风力设置控件的触发操作,设置风的矢量方向。
进一步地,上述装置还包括角色拖拽模块,用于响应于将虚拟角色拖拽至生成目标天气效果的虚拟场景中的指定位置的操作,将虚拟角色设置在指定位置。
进一步地,上述装置包括参数修改模块,用于响应于针对目标天气蓝图指示的生成时间和/或生成位置的修改操作,根据修改结果在虚拟场景中生成目标天气效果。
进一步地,上述装置还包括位置修改模块,用于:响应于将目标天气蓝图中的生成位置修改为虚拟角色所在区域的操作,在虚拟角色所在区域生成目标天气效果。
本发明实施例所提供的虚拟场景中天气效果的生成装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
本发明实施例还提供了一种电子设备,如图9所示,该电子设备包括处理器和存储器,该存储器存储有能够被处理器执行的机器可执行指令,该处理器执行机器可执行指令以实现上述虚拟场景中天气效果的生成方法。
具体地,上述虚拟场景中天气效果的生成方法包括:获取被选中的目标天气对象;目标天气对象包含在预设的多个天气对象中;天气对象用于实现对应的天气效果;天气对象中包括用于实现对应的天气效果的材质信息和/或网格信息;基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图,该目标天气蓝图用于指示目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;基于目标天气蓝图,在虚拟场景中生成目标天气效果。
上述虚拟场景中天气效果的生成方法可以从预先设置好的多个天气对象中选择目标天气对象,节省了制作天气对象的时间;然后根据目标天气对象对应的天气蓝图,在虚拟场景中显示目标天气对象对应的目标天气效果,该方式自动化完成,节省了人力,提高了虚拟场景中天气效果实现的效率。
在可选的实施方式中,上述基于目标天气对象,更新预设的天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图的步骤,包括:将天气蓝图框架中的属性信息,更新为与目标天气对象对应的目标天气效果相匹配的属性信息;其中,属性信息包括风力、温度、湿度和雾效中的至少一种;将属性信息更新后的天气蓝图框架,确定为目标天气蓝图。
在可选的实施方式中,上述获取被选中的目标天气对象的步骤之前,上述方法还包括:生成包含有属性信息的天气蓝图框架;其中,属性信息中的属性均设置为默认值。
在可选的实施方式中,预设的多个天气对象中的每个所述天气对象,通过下述方式构建:通过对网格面片的堆叠,形成初始对象;获取初始对象的顶点数据;其中,顶点数据中包含有初始对象的多个顶点的坐标位置;基于顶点数据,对初始对象进行坐标变换,得到朝向镜头朝向的中间对象;设置中间对象的属性信息,得到天气对象。
在可选的实施方式中,上述基于目标天气蓝图,在虚拟场景中生成目标天气效果的步骤,包括:基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型。
在可选的实施方式中,上述基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型的步骤,包括:识别虚拟场景中需要调整材质属性的指定模型;基于目标天气蓝图中目标天气对应的材质信息,调整指定模型的材质属性,得到指定模型在目标天气效果下的显示状态;基于显示状态在虚拟场景中显示指定模型。
在可选的实施方式中,上述基于目标天气蓝图中目标天气对应的材质信息,调整指定模型的材质属性,得到指定模型在目标天气效果下的显示状态的步骤,包括:扫描指定模型的材质属性,得到指定模型的材质设置节点;将目标天气对象的材质设置节点与指定模型的材质设置节点进行自动化连接;通过材质设置节点的连接关系,将指定模型的材质属性叠加目标天气对象对应的材质信息指示的材质属性,得到指定模型在目标天气效果下的显示状态。
在可选的实施方式中,上述基于目标天气蓝图,调整虚拟场景中指定模型的材质属性,得到目标天气效果下,指定模型的显示状态,基于显示状态在虚拟场景中显示指定模型的步骤之后,上述方法还包括:根据原有材质转换指令,将材质属性调整后的指定模型的材质属性,替换为材质属性调整前指定模型的材质属性。
在可选的实施方式中,上述基于目标天气蓝图,在虚拟场景中生成目标天气效果的步骤之后,上述方法还包括:根据目标天气对象对应的材质信息,生成拍摄虚拟场景的虚拟镜头的屏幕后处理效果;其中,屏幕处理效果与目标天气效果相匹配,屏幕后处理效果包括:屏幕结冰、屏幕打湿或者屏幕热气扭曲中的一种。
在可选的实施方式中,上述方法还包括:识别在目标天气效果下虚拟场景中需要遮挡的场景模型,为场景模型添加遮挡物。
在可选的实施方式中,通过终端设备提供一图形用户界面,该图形用户界面中显示有用于在虚拟场景中生成天气效果的控件;上述方法还包括:响应于针对框架生成控件的触发操作,得到天气蓝图框架;响应于预设的多个天气对象中目标天气对象的选中操作,获取被选中的目标天气对象,并基于目标天气对象,更新天气蓝图框架中的属性信息,得到目标天气对象对应的目标天气蓝图;其中,一个天气对象对应一个可选择控件;响应于针对效果转换控件的触发操作,基于目标天气蓝图,在虚拟场景中生成目标天气效果。
在可选的实施方式中,上述方法还包括:响应于堆积设置控件的触发操作,预览虚拟场景中模型表面的湿度和雪覆盖度;响应于风力设置控件的触发操作,设置风的矢量方向。
在可选的实施方式中,上述方法还包括:响应于将虚拟角色拖拽至生成目标天气效果的虚拟场景中的指定位置的操作,将虚拟角色设置在指定位置。
在可选的实施方式中,上述方法还包括:响应于针对目标天气蓝图指示的生成时间和/或生成位置的修改操作,根据修改结果在虚拟场景中生成目标天气效果。
在可选的实施方式中,上述方法还包括:响应于将目标天气蓝图中的生成位置修改为虚拟角色所在区域的操作,在虚拟角色所在区域生成目标天气效果。
进一步地,图9所示的电子设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。
其中,存储器100可能包含高速随机存取存储器(RAM,RandomAccessMemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器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 (18)
1.一种虚拟场景中天气效果的生成方法,其特征在于,所述方法包括:
获取被选中的目标天气对象;所述目标天气对象包含在预设的多个天气对象中;所述天气对象用于实现对应的天气效果;所述天气对象中包括用于实现所述对应的天气效果的材质信息和/或网格信息;
基于所述目标天气对象,更新预设的天气蓝图框架中的属性信息,得到所述目标天气对象对应的目标天气蓝图;所述目标天气蓝图用于指示所述目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;
基于所述目标天气蓝图,在所述虚拟场景中生成所述目标天气效果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述目标天气对象,更新预设的天气蓝图框架中的属性信息,得到所述目标天气对象对应的目标天气蓝图的步骤,包括:
将所述天气蓝图框架中的属性信息,更新为与所述目标天气对象对应的目标天气效果相匹配的属性信息;其中,所述属性信息包括风力、温度、湿度和雾效中的至少一种;
将属性信息更新后的天气蓝图框架,确定为所述目标天气蓝图。
3.根据权利要求1或2所述的方法,其特征在于,所述获取被选中的目标天气对象的步骤之前,所述方法还包括:
生成包含有属性信息的天气蓝图框架;其中,所述属性信息中的属性均设置为默认值。
4.根据权利要求1所述的方法,其特征在于,预设的多个天气对象中的每个所述天气对象,通过下述方式构建:
通过对网格面片的堆叠,形成初始对象;
获取所述初始对象的顶点数据;其中,所述顶点数据中包含有所述初始对象的多个顶点的坐标位置;
基于所述顶点数据,对所述初始对象进行坐标变换,得到朝向镜头朝向的中间对象;
设置所述中间对象的属性信息,得到所述天气对象。
5.根据权利要求1所述的方法,其特征在于,所述基于所述目标天气蓝图,在所述虚拟场景中生成所述目标天气效果的步骤,包括:
基于所述目标天气蓝图,调整所述虚拟场景中指定模型的材质属性,得到所述目标天气效果下,所述指定模型的显示状态,基于所述显示状态在所述虚拟场景中显示所述指定模型。
6.根据权利要求5所述的方法,其特征在于,所述基于所述目标天气蓝图,调整所述虚拟场景中指定模型的材质属性,得到所述目标天气效果下,所述指定模型的显示状态,基于所述显示状态在所述虚拟场景中显示所述指定模型的步骤,包括:
识别所述虚拟场景中需要调整材质属性的指定模型;
基于所述目标天气蓝图中所述目标天气对应的材质信息,调整所述指定模型的材质属性,得到所述指定模型在所述目标天气效果下的显示状态;
基于所述显示状态在所述虚拟场景中显示所述指定模型。
7.根据权利要求6所述的方法,其特征在于,所述基于所述目标天气蓝图中所述目标天气对应的材质信息,调整所述指定模型的材质属性,得到所述指定模型在所述目标天气效果下的显示状态的步骤,包括:
扫描所述指定模型的材质属性,得到所述指定模型的材质设置节点;
将所述目标天气对象的材质设置节点与所述指定模型的材质设置节点进行自动化连接;
通过材质设置节点的连接关系,将所述指定模型的材质属性叠加所述目标天气对象对应的材质信息指示的材质属性,得到所述指定模型在所述目标天气效果下的显示状态。
8.根据权利要求5所述的方法,其特征在于,所述基于所述目标天气蓝图,调整所述虚拟场景中指定模型的材质属性,得到所述目标天气效果下,所述指定模型的显示状态,基于所述显示状态在所述虚拟场景中显示所述指定模型的步骤之后,所述方法还包括:
根据原有材质转换指令,将材质属性调整后的所述指定模型的材质属性,替换为材质属性调整前所述指定模型的材质属性。
9.根据权利要求1所述的方法,其特征在于,所述基于所述目标天气蓝图,在所述虚拟场景中生成所述目标天气效果的步骤之后,所述方法还包括:
根据所述目标天气对象对应的材质信息,生成拍摄所述虚拟场景的虚拟镜头的屏幕后处理效果;其中,所述屏幕处理效果与所述目标天气效果相匹配,所述屏幕后处理效果包括:屏幕结冰、屏幕打湿或者屏幕热气扭曲中的一种。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
识别在所述目标天气效果下所述虚拟场景中需要遮挡的场景模型,为所述场景模型添加遮挡物。
11.根据权利要求1所述的方法,其特征在于,通过终端设备提供一图形用户界面,所述图形用户界面中显示有用于在所述虚拟场景中生成天气效果的控件;所述方法还包括:
响应于针对框架生成控件的触发操作,得到所述天气蓝图框架;
响应于预设的多个天气对象中所述目标天气对象的选中操作,获取被选中的目标天气对象,并基于所述目标天气对象,更新所述天气蓝图框架中的属性信息,得到所述目标天气对象对应的目标天气蓝图;其中,一个天气对象对应一个可选择控件;
响应于针对效果转换控件的触发操作,基于所述目标天气蓝图,在所述虚拟场景中生成所述目标天气效果。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于堆积设置控件的触发操作,预览所述虚拟场景中模型表面的湿度和雪覆盖度;
响应于风力设置控件的触发操作,设置风的矢量方向。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于将虚拟角色拖拽至生成所述目标天气效果的虚拟场景中的指定位置的操作,将所述虚拟角色设置在所述指定位置。
14.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于针对所述目标天气蓝图指示的所述生成时间和/或所述生成位置的修改操作,根据修改结果在所述虚拟场景中生成所述目标天气效果。
15.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于将所述目标天气蓝图中的生成位置修改为虚拟角色所在区域的操作,在所述虚拟角色所在区域生成所述目标天气效果。
16.一种虚拟场景中天气效果的生成装置,其特征在于,所述装置包括:
天气对象确定模块,用于获取被选中的目标天气对象;所述目标天气对象包含在预设的多个天气对象中;所述天气对象用于实现对应的天气效果;所述天气对象中包括用于实现所述对应的天气效果的材质信息和/或网格信息;
属性更新模块,用于基于所述目标天气对象,更新预设的天气蓝图框架中的属性信息,得到所述目标天气对象对应的目标天气蓝图;所述目标天气蓝图用于指示所述目标天气对象对应的目标天气效果在虚拟场景中的生成时间和生成位置;
天气效果生成模块,用于基于所述目标天气蓝图,在所述虚拟场景中生成所述目标天气效果。
17.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至15任一项所述的虚拟场景中天气效果的生成方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使所述处理器实现权利要求1至15任一项所述的虚拟场景中天气效果的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210869799.2A CN115382215A (zh) | 2022-07-21 | 2022-07-21 | 虚拟场景中天气效果的生成方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210869799.2A CN115382215A (zh) | 2022-07-21 | 2022-07-21 | 虚拟场景中天气效果的生成方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115382215A true CN115382215A (zh) | 2022-11-25 |
Family
ID=84116287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210869799.2A Pending CN115382215A (zh) | 2022-07-21 | 2022-07-21 | 虚拟场景中天气效果的生成方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115382215A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115953560A (zh) * | 2023-03-15 | 2023-04-11 | 深圳飞蝶虚拟现实科技有限公司 | 基于元宇宙的虚拟天气模拟优化*** |
CN116185206A (zh) * | 2023-04-27 | 2023-05-30 | 碳丝路文化传播(成都)有限公司 | 一种元宇宙天气与真实天气同步的方法及*** |
-
2022
- 2022-07-21 CN CN202210869799.2A patent/CN115382215A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115953560A (zh) * | 2023-03-15 | 2023-04-11 | 深圳飞蝶虚拟现实科技有限公司 | 基于元宇宙的虚拟天气模拟优化*** |
CN115953560B (zh) * | 2023-03-15 | 2023-08-22 | 苏州飞蝶虚拟现实科技有限公司 | 基于元宇宙的虚拟天气模拟优化*** |
CN116185206A (zh) * | 2023-04-27 | 2023-05-30 | 碳丝路文化传播(成都)有限公司 | 一种元宇宙天气与真实天气同步的方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115382215A (zh) | 虚拟场景中天气效果的生成方法、装置和电子设备 | |
US8291345B2 (en) | Sun-shadow simulation in a geospatial system | |
Génevaux et al. | Terrain modelling from feature primitives | |
WO2019239211A2 (en) | System and method for generating simulated scenes from open map data for machine learning | |
US11164392B2 (en) | Infrastructure design using 3D reality data | |
CN116012557B (zh) | 基于三维***的天气自然景象数据对接***及对接方法 | |
CN112102492B (zh) | 游戏资源的制作方法及装置、存储介质、终端 | |
Beck | Real-time visualization of big 3D city models | |
CN115690344A (zh) | 海绵城市沙盘及天气模拟*** | |
Jing | Design and implementation of 3D virtual digital campus-based on unity3d | |
CN111354061B (zh) | 基于图形学在gis***模拟下雪场景处理方法及装置 | |
Leng et al. | Development of a micro-in-meso-scale framework for simulating pollutant dispersion and wind environment in building groups | |
CN113987902A (zh) | 一种天气场景模拟方法、装置、电子设备及存储介质 | |
CN115138067A (zh) | 一种基于bim场景的游戏引擎可视化方法及装置 | |
CN112037308A (zh) | 天气***编辑方法以及装置、***、设备 | |
CN113298923A (zh) | 一种仿真电子画的生成方法、装置、设备及存储介质 | |
CN111462288A (zh) | 林草资源三维实时动态立体表达方法、装置和电子设备 | |
CN110580743A (zh) | 一种基于人工智能反馈的虚拟现实观影场所搭建方法 | |
CN117593470B (zh) | 一种基于ai模型的街景重构方法及*** | |
CN112802190B (zh) | 一种气象观测场运行管理模型建立方法及装置 | |
CN113870409B (zh) | 一种基于工业仿真场景的三维图形轻量化方法 | |
WO2024124370A1 (zh) | 一种模型构建方法及装置、存储介质、电子设备 | |
Rees et al. | Annual solar irradiation mapping and visualization for complex geometries | |
CN117853629A (zh) | 虚拟场景中的雨雪效果处理方法、装置、设备和存储介质 | |
CN116664785A (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 |