烟雾渲染方法、装置、电子设备和存储介质与流程

文档序号:31566043发布日期:2022-09-20 20:37阅读:39来源:国知局
烟雾渲染方法、装置、电子设备和存储介质与流程

1.本技术涉及计算机技术领域,具体涉及一种烟雾渲染方法、装置、电子设备和计算机可读存储介质。


背景技术:

2.在虚拟场景开发中,通常会使用体积雾来模拟真实场景中的雾团或云团。但是,现有体积雾制作原理是以粒子片始终朝向相机方向,这使得体积雾接收到的光照统一、缺少明暗关系变化,进而导致了体积雾的体积感、光影感不明显的问题。


技术实现要素:

3.本技术实施例提供一种烟雾渲染方法、装置、电子设备和计算机可读存储介质,可以提高烟雾在光照方向上的丰富多样性,进而提升烟雾的体积感和光影感的表现力。
4.第一方面,本技术实施例提供一种烟雾渲染方法,包括:
5.获取携带有目标渲染层的待渲染烟雾模型,其中,所述目标渲染层包含所述待渲染烟雾模型的光影控制层;
6.基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,其中,所述目标光影控制参数包含各光照方向上的明暗程度;
7.根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾。
8.第二方面,本技术实施例还提供一种烟雾渲染装置,包括:
9.第一获取单元,用于获取携带有目标渲染层的待渲染烟雾模型,其中,所述目标渲染层包含所述待渲染烟雾模型的光影控制层;
10.第二获取单元,用于基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,其中,所述目标光影控制参数包含各光照方向上的明暗程度;
11.渲染单元,用于根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾。
12.第三方面,本技术实施例还提供一种电子设备,包括存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行本技术实施例所提供的任一种烟雾渲染方法中的步骤。
13.第四方面,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本技术实施例所提供的任一种烟雾渲染方法中的步骤。
14.本技术实施例通过获取携带有目标渲染层的待渲染烟雾模型;基于待渲染烟雾模型的光影控制层,获取待渲染烟雾模型的目标光影控制参数;根据目标光影控制参数对待渲染烟雾模型进行渲染,得到与目标光影控制参数匹配的目标烟雾;由于目标光影控制参数包含各光照方向上的明暗程度,可以用于控制待渲染烟雾模型的光照方向和光照大小,
避免了烟雾接收到的光照统一、缺少明暗关系变化的问题,从而提高渲染得到的目标烟雾在光照方向上的丰富多样性,进而提升烟雾的细节、体积感和光影感的表现力。
附图说明
15.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
16.图1是本技术实施例提供的烟雾渲染方法的一种实施例流程示意图;
17.图2是本技术实施例中提供的步骤101的一个实施例流程示意图;
18.图3是本技术实施例中提供的有使用和无使用目标光影控制参数进行渲染得到的烟雾效果对比示意图;
19.图4是本技术实施例中提供的步骤101的另一个实施例流程示意图;
20.图5是包含多帧烟雾的待渲染烟雾模型的一种示意图;
21.图6是本技术实施例中提供的步骤103的一个实施例流程示意图;
22.图7是本技术实施例提供的烟雾渲染装置的结构示意图;
23.图8是本技术实施例提供的电子设备的结构示意图。
具体实施方式
24.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。同时,在本技术实施例的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本技术实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
25.本技术实施例提供一种烟雾渲染方法、装置、电子设备和计算机可读存储介质。
26.具体地,本实施例将从烟雾渲染装置的角度进行描述,该烟雾渲染装置具体可以集成在电子设备中,即本技术实施例烟雾渲染方法可以由电子设备执行,该电子设备可以为终端、服务器等设备。其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、触控屏幕、游戏机、或者个人电脑(personal computer,pc)等设备;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群。
27.例如,该电子设备可以是移动终端,该移动终端可以通过网络获取携带有目标渲染层的待渲染烟雾模型,其中,所述目标渲染层包含所述待渲染烟雾模型的光影控制层;基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,其中,所述目标光影控制参数包含各光照方向上的明暗程度;根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾。
28.在一些实施例中,该烟雾渲染装置还可以集成在多个电子设备中,比如,烟雾渲染装置可以集成在多个服务器中,由多个服务器来实现本技术的烟雾渲染方法。又如,烟雾渲
染装置可以集成在多个终端中,由多个终端来实现本技术的烟雾渲染方法。
29.在一些实施例中,该烟雾渲染装置还可以集成在终端和服务器集群中,从而实现云游戏(cloud gaming);其中,服务器可以以本方案提供的烟雾渲染方法进行画面的渲染,并将渲染画面通过网络发送给终端,以在终端播放该渲染画面,由此提高终端所播放的烟雾在光照方向上的丰富多样性,进而提升烟雾的细节、体积感和光影感的表现力。
30.在一些实施例中,服务器也可以以终端的形式来实现,比如,可以将个人电脑设置为服务器来集成该烟雾渲染装置,由个人电脑设置成的服务器来实现本技术的烟雾渲染方法。
31.以下结合附图分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于附图所示的顺序执行所示出或描述的步骤。
32.如图1所示,该烟雾渲染方法的具体流程可以如下步骤101~步骤103,其中:
33.101、获取携带有目标渲染层的待渲染烟雾模型。
34.其中,待渲染烟雾模型是待渲染的体积雾的模型。
35.其中,目标渲染层是包含用于渲染待渲染烟雾模型的各类型信息(如基本颜色、光照方向和光照强度等)的渲染分层。目标渲染层可以包含待渲染烟雾模型的光影控制层(如后文提及的目标颜色通道层、目标速度通道层)、基本颜色层等。
36.其中,光影控制层是用于调整待渲染烟雾模型在各光照方向上的明暗程度的渲染分层。
37.步骤101中获取待渲染烟雾模型的方式有多种,示例性地,包括:
38.(一)通过支持烟雾解算的图形工具实时创建得到待渲染烟雾模型。
39.为了提高待渲染烟雾模型的自然度、使得待渲染烟雾模型更符合烟雾的物理属性,本实施例中通过支持烟雾解算的图像工具创建待渲染烟雾模型。
40.其中,支持烟雾解算的图形工具是指支持采用速度、密度、体积、形态等物理信息创建烟雾模型的图形工具。比如,houdini,houdini是三维计算机图形软件,是创建高级视觉效果及程序化生成的有效工具。
41.具体地,随着待渲染烟雾模型的处理需求的不同,步骤101中实时创建得到待渲染烟雾模型的方式有多种,示例性地,包括:
42.1)待渲染烟雾模型为支持烟雾解算的图形工具进行物理体积烟雾解算后得到的体积雾。此时,步骤101具体可以包括步骤1011a~1012a:
43.1011a、构建初步烟雾。
44.其中,初步烟雾是指进行物理体积烟雾解算后直接得到的体积雾。
45.示例性地,可以通过houdini中的解算器,根据用户输入的烟雾速度、烟雾密度、烟雾体积、烟雾形态等信息,进行物理体积烟雾解算,得到初步烟雾。然后,直接将进行物理体积烟雾解算得到的初步烟雾,作为待渲染烟雾模型。
46.1012a、为所述初步烟雾设置渲染层,得到已设置渲染层的初步烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
47.步骤1012a为初步烟雾设置渲染层的方式与步骤1013b类似,具体可以参考步骤1013b的相关说明,为简化表述,此处不再赘述。
48.2)待渲染烟雾模型为支持烟雾解算的图形工具进行物理体积烟雾解算、以及进行占用内存优化后得到的体积雾。如图2所示,此时,步骤101具体可以包括步骤1011b~1013b:
49.1011b、构建初步烟雾。
50.步骤1011b的实现与上述步骤1011a的实现类似,具体可以参考上述步骤1011a的相关说明,此处不再赘述。
51.1012b、对所述初步烟雾的占用内存进行优化,得到优化后烟雾。
52.其中,所述对所述初步烟雾的占用内存进行优化包含对所述初步烟雾的速度进行重采样、对所述初步烟雾的体积进行压缩中的至少一者。
53.示例性地,步骤1012b中,可以同时从烟雾的速度通道和烟雾的体积两方面入手,对烟雾的占用内存进行优化:一方面,可以对初步烟雾的速度通道进行下采样,以降低初步烟雾的速度通道所需携带的速度信息,从而降低初步烟雾的占用内存,达到对初步烟雾的占用内存进行优化的目的;另一方面,同时可以对初步烟雾的体积进行压缩,以减小初步烟雾的体积信息,从而降低初步烟雾的占用内存,达到对初步烟雾的占用内存进行优化的目的;从而实现对初步烟雾的占用内存进行优化得到优化后烟雾。
54.通过对初步烟雾的速度通道进行重采样、或对初步烟雾的体积进行压缩,来实现对初步烟雾的占用内存进行优化,可以极大地降低待渲染烟雾模型所需占用内存,比如,本实施例中,通过同时对初步烟雾的速度通道进行重采样、并对初步烟雾的体积进行压缩,优化前的初步烟雾为80mb左右、优化后烟雾为4mb左右。从而避免待渲染烟雾模型所需消耗内容较大,不利于烟雾效果的迭代和变通问题。
55.1013b、为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
56.针对目标渲染层的具体表现形式的不同,设置渲染层的方式有多种,下面以目标渲染层分别是待渲染烟雾模型的目标颜色通道层、目标速度通道层、基本颜色层为例,说明步骤1013b中为优化后烟雾设置渲染层的方式。
57.①
目标渲染层为待渲染烟雾模型的目标颜色通道层。此时,步骤1013b具体可以包括如下步骤a1~a2,其中:
58.其中,目标颜色通道层是基于颜色通道实现的、用于调整待渲染烟雾模型在各光照方向上的明暗程度的渲染分层。具体地,目标颜色通道层中每个颜色通道的控制参数用于调整待渲染烟雾模型在每个颜色通道对应光照方向上的明暗程度,其具体实现后文中将详细介绍,此处不再赘述。
59.a1、获取所述优化后烟雾的初始颜色通道层。
60.其中,所述初始颜色通道层包含控制第一颜色的颜色通道、控制第二颜色的颜色通道和控制第三颜色的颜色通道。
61.初始颜色通道层是用于渲染烟雾色彩的渲染分层,比如,优化后烟雾的rgb层。此时,控制第一颜色的颜色通道、控制第二颜色的颜色通道、控制第三颜色的颜色通道可以分别是rgb层中r通道、g通道、b通道,第一颜色、第二颜色、第三颜色分别为红色、绿色、蓝色。
62.a2、将控制第一颜色的颜色通道转换为控制烟雾在第一方向上光照的明暗程度的颜色通道、控制第二颜色的颜色通道转换为控制烟雾在第二方向上光照的明暗程度的颜色
通道、以及所述控制第三颜色的颜色通道转换为控制烟雾在第三方向上光照的明暗程度的颜色通道,得到已设置目标颜色通道层的优化后烟雾,以作为携带有目标颜色通道层的待渲染烟雾模型。
63.例如,初始颜色通道层是优化后烟雾的rgb层,则可以将第一颜色的颜色通道(如r通道)转换为控制烟雾在第一方向上(如世界空间中的x轴正方向)光照的明暗程度的颜色通道、将第二颜色的颜色通道(如g通道)转换为控制烟雾在第二方向上(如世界空间中的y轴正方向)光照的明暗程度的颜色通道、将第三颜色的颜色通道(如b通道)转换为控制烟雾在第三方向上(如世界空间中的z轴正方向)光照的明暗程度的颜色通道,从而实现为优化后烟雾设置目标颜色通道层,得到已设置目标颜色通道层的优化后烟雾作为携带有目标颜色通道层的待渲染烟雾模型。
64.通过将优化后烟雾的初始颜色通道层中控制第一颜色的颜色通道转换为控制烟雾在第一方向上光照的明暗程度的颜色通道、控制第二颜色的颜色通道转换为控制烟雾在第二方向上光照的明暗程度的颜色通道、以及控制第三颜色的颜色通道转换为控制烟雾在第三方向上光照的明暗程度的颜色通道,可以制作得到携带有目标颜色通道层的待渲染烟雾模型,从而使得后续(如步骤102~103中所示)可以基于待渲染烟雾模型的目标颜色通道层调整烟雾在各个方向上光照的明暗程度,进而提高渲染得到的目标烟雾在各个方向上的光照丰富度,一定程度上提升了烟雾的细节、体积和光影的表现力。
65.②
目标渲染层为待渲染烟雾模型的目标速度通道层。此时,步骤1013b具体可以包括如下步骤b1~b2,其中:
66.其中,目标速度通道层是基于速度通道实现的、用于调整待渲染烟雾模型在各光照方向上的明暗程度的渲染分层。具体地,目标速度通道层中每个速度通道的控制参数用于调整待渲染烟雾模型在每个速度通道对应光照方向上的明暗程度,其具体实现后文中将详细介绍,此处不再赘述。
67.b1、获取所述优化后烟雾的初始速度通道层。
68.其中,所述初始速度通道层包含控制烟雾在第四方向上运动速度的速度通道、控制烟雾在第五方向上运动速度的速度通道和控制烟雾在第六方向上运动速度的速度通道。
69.其中,初始速度通道层是用于记录烟雾速度信息的渲染分层,比如,优化后烟雾的vel层。此时,控制烟雾在第四方向上运动速度的速度通道、控制烟雾在第五方向上运动速度的速度通道、控制烟雾在第六方向上运动速度的速度通道可以分别是vel层中x轴负方向速度通道、y轴负方向速度通道、z轴负方向速度通道,第四方向、第五方向、第六方向分别为x轴负方向、y轴负方向、z轴负方向。
70.b2、将所述控制烟雾在第四方向上运动速度的速度通道转换为控制在第四方向上光照的明暗程度的速度通道、控制烟雾在第五方向上运动速度的速度通道转换为控制在第五方向上光照的明暗程度的速度通道、以及控制烟雾在第六方向上运动速度的速度通道转换为控制在第六方向上光照的明暗程度的速度通道,得到已设置目标速度通道层的优化后烟雾,以作为携带有目标速度通道层的待渲染烟雾模型。
71.例如,初始速度通道层是优化后烟雾的vel层,则可以将控制烟雾在第四方向上运动速度的速度通道(如x轴负方向速度通道)转换为控制烟雾在第四方向上(如世界空间中的x轴负方向)光照的明暗程度的速度通道、将控制烟雾在第五方向上运动速度的速度通道
(如y轴负方向速度通道)转换为控制烟雾在第五方向上(如世界空间中的y轴负方向)光照的明暗程度的速度通道、将控制烟雾在第六方向上运动速度的速度通道(如z轴负方向速度通道)转换为控制烟雾在第六方向上(如世界空间中的z轴负方向)光照的明暗程度的速度通道,从而实现为优化后烟雾设置目标速度通道层,得到已设置目标速度通道层的优化后烟雾作为携带有目标速度通道层的待渲染烟雾模型。
72.通过将优化后烟雾的初始速度通道层中控制烟雾在第四方向上运动速度的速度通道转换为控制在第四方向上光照的明暗程度的速度通道、控制烟雾在第五方向上运动速度的速度通道转换为控制在第五方向上光照的明暗程度的速度通道、以及控制烟雾在第六方向上运动速度的速度通道转换为控制在第六方向上光照的明暗程度的速度通道,可以制作得到携带有目标速度通道层的待渲染烟雾模型,从而使得后续(如步骤102~103中所示)可以基于待渲染烟雾模型的目标速度通道层调整烟雾在各个方向上光照的明暗程度,进而提高制作得到的目标烟雾在各个方向上的光照丰富度,一定程度上提升了烟雾的细节、体积感和光影感的表现力。
73.如图3所示,图3是本技术实施例中提供的有使用和无使用目标光影控制参数进行渲染得到的烟雾效果对比示意图,图3中左侧示意图为无使用目标光影控制参数进行渲染得到的烟雾、图3中右侧示意图为有使用目标光影控制参数进行渲染得到的烟雾,明显可以看出有使用目标光影控制参数进行渲染得到的烟雾在各个方向上的光照更加丰富度,烟雾的细节、体积感和光影感的表现力更好。
74.③
目标渲染层为待渲染烟雾模型的基本颜色层。此时,步骤1013b具体可以包括:获取优化后烟雾的基本颜色层(如diffuse层),为优化后烟雾保存基本颜色层,得到已设置基本颜色层的优化后烟雾,以作为携带有基本颜色层的待渲染烟雾模型。其中,基本颜色层(diffuse层)用于烟雾的基本颜色信息调节。
75.3)待渲染烟雾模型为支持烟雾解算的图形工具进行物理体积烟雾解算、以及进行循环过渡设置后得到的体积雾。如图4所示,此时,步骤101具体可以包括步骤1011c~1013c:
76.1011c、构建初步烟雾。
77.步骤1011c的实现与上述步骤1011a的实现类似,具体可以参考上述步骤1011a的相关说明,此处不再赘述。
78.1012c、对所述初步烟雾进行循环过渡设置,得到循环设置后烟雾。
79.其中,所述对所述初步烟雾进行循环设置包含对所述初步烟雾的密度进行循环过渡设置、对所述初步烟雾的形态进行循环过渡设置中的至少一者。
80.其中,初始烟雾为动态烟雾,即初始烟雾包含多帧烟雾;例如,初始烟雾为2秒长的动态烟雾,该2秒长的动态烟雾包含36帧烟雾。
81.本实施例中,对初步烟雾进行循环过渡设置的目的在于:在视觉上将循环流动的多帧烟雾进行融合过渡,使得多帧烟雾循环更加流畅、在视觉上可以实现无缝地循环流动。
82.以对初步烟雾的密度进行循环过渡设置为例,示例性地,可以通过插值方式实现对初步烟雾的密度进行循环过渡设置,例如,在houdini中,首先,利用fit函数对初步烟雾的密度进行设置;然后,利用pow函数对初始烟雾的密度进行设置。其中,fit函数为适配函数,用于重新规范(即调整)初步烟雾的密度范围,使得初步烟雾的整体密度差相对较小,以
使得烟雾的循环过程更加柔和顺畅。pow函数用于调整初步烟雾边缘在循环过程中逐渐出现,通过给pow函数k帧的方式,把初始烟雾边缘比较薄的部分去掉、在循环过程中逐渐出现,以使得烟雾的循环过程更加柔和顺畅。
83.由于实际场景中的烟雾一般是中心点密度相对较高、边缘点密度相对较低,通过先用fit函数对初步烟雾的密度进行设置、再利用pow函数对初始烟雾的密度进行设置,一方面,可以减小初始烟雾的中心点密度与边缘点密度之间的密度差,从而使得整体初始烟雾密度变化相差较小;另一方面,使得初始烟雾边缘逐渐从无到有和从有到无,从而使得初始烟雾循环更加流畅和柔和;进而使得当初始烟雾中的各帧烟雾进行循环流动时(如,2秒长的动态烟雾中的第1帧烟雾至低36帧烟雾循环流动)更加柔和流畅,在视觉上可以实现烟雾的无缝循环流动;从而使得后续制作得到的目标烟雾循环更加流畅,在视觉上实现烟雾的无缝循环流动。
84.以对初步烟雾的形态进行循环过渡设置为例,示例性地,可以通过插值方式实现对初步烟雾的形态进行循环过渡设置,例如,在houdini中,首先,利用fit函数对初步烟雾的形态进行设置;然后,利用pow函数对初始烟雾的形态进行设置。其中,fit函数为适配函数,用于重新规范(即调整)初步烟雾的形态范围,使得初步烟雾的整体形态差相对较小,以使得烟雾的循环过程更加柔和顺畅。pow函数用于调整初步烟雾边缘在循环过程中逐渐出现,通过给pow函数k帧的方式,把初始烟雾边缘比较薄的部分去掉、在循环过程中逐渐出现,以使得烟雾的循环过程更加柔和顺畅。
85.通过先用fit函数对初步烟雾的形态进行设置、再利用pow函数对初始烟雾的形态进行设置,一方面,可以减小初始烟雾的中心点形态与边缘点形态之间的形态差,从而使得整体初始烟雾形态变化相差较小;另一方面,使得初始烟雾边缘逐渐从无到有和从有到无,从而使得初始烟雾循环更加流畅和柔和;进而使得当初始烟雾中的各帧烟雾进行循环流动时(如,2秒长的动态烟雾中的第1帧烟雾至低36帧烟雾循环流动)更加柔和流畅,在视觉上可以实现烟雾的无缝循环流动;从而使得后续制作得到的目标烟雾循环更加流畅,在视觉上实现烟雾的无缝循环流动。
86.1013c、为所述循环设置后烟雾设置渲染层,得到已设置渲染层的循环设置后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
87.步骤1013c为循环设置后烟雾设置渲染层的方式与步骤1013b类似,具体可以参考步骤1013b的相关说明,为简化表述,此处不再赘述。
88.如图5所示,图5是包含多帧烟雾的待渲染烟雾模型的一种示意图,与包含多帧烟雾的初始烟雾对应,步骤1013c中制作好的待渲染烟雾模型是包含多帧烟雾的。示例性地,可以在支持烟雾解算的图形工具(如houdini)设置每帧烟雾(如包含36帧的2秒长烟雾中每一帧)的图片大小及格式,并将多帧烟雾通过合并在一张图中的方式形成合并渲染序列,以作为待渲染烟雾模型输出。
89.4)待渲染烟雾模型为支持烟雾解算的图形工具进行物理体积烟雾解算、进行占用内存优化、以及进行循环过渡设置后得到的体积雾。此时,步骤101具体可以包括步骤1011d~1014d:
90.1011d、构建初步烟雾。
91.步骤1011d的实现与上述步骤1011a的实现类似,具体可以参考上述步骤1011a的
相关说明,此处不再赘述。
92.1012d、对所述初步烟雾的占用内存进行优化,得到优化后烟雾。
93.其中,所述对所述初步烟雾的占用内存进行优化包含对所述初步烟雾的速度通道进行重采样、对所述初步烟雾的体积进行压缩中的至少一者。
94.步骤1012d的实现与上述步骤1012b的实现类似,具体可以参考上述步骤1012b的相关说明,此处不再赘述。
95.1013d、对所述优化后烟雾进行循环过渡设置,得到循环设置后烟雾。
96.其中,所述对所述初步烟雾进行循环设置包含对所述初步烟雾的密度进行循环过渡设置、对所述初步烟雾的形态进行循环过渡设置中的至少一者。
97.步骤1013d的实现与上述步骤1012c的实现类似,具体可以参考上述步骤1012c的相关说明,此处不再赘述。
98.1014d、为所述循环设置后烟雾设置渲染层,得到已设置渲染层的循环设置后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
99.步骤1014d为循环设置后烟雾设置渲染层的方式与步骤1013b类似,具体可以参考步骤1013b的相关说明,为简化表述,此处不再赘述。
100.步骤1011d~步骤1014d中以依次进行烟雾的占用内存优化、进行烟雾的循环过渡设置为例,说明了在支持烟雾解算的图形工具中待渲染烟雾模型的创建过程。实际上,可以先执行步骤1012d实现烟雾的占用内存优化、再执行步骤1013d实现烟雾的循环过渡设置;或者,也可以先执行步骤1013d实现烟雾的循环过渡设置、再执行步骤1012d实现烟雾的占用内存优化;或者,还可以并行执行步骤1012d实现烟雾的占用内存优化和步骤1013d实现烟雾的循环过渡设置。
101.(二)通过支持渲染功能的图形工具实时创建得到待渲染烟雾模型。
102.其中,支持渲染功能的图形工具可以是比如游戏引擎ue4等。
103.具体地,可以参考上述(一)中的方式,通过支持渲染功能的图形工具先创建体积雾、再为体积雾设置目标渲染层(如目标颜色通道层、目标速度通道层、基本颜色层等),从而得到携带有目标渲染层的待渲染烟雾模型。
104.(三)参考上述(一)或(二)中实时创建待渲染烟雾模型的方式,预先通过支持烟雾解算的图形工具创建得到待渲染烟雾模型,并存储在预设数据库中,步骤101中,直接从预设数据库读取得到待渲染烟雾模型。
105.102、基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数。
106.其中,所述目标光影控制参数包含各光照方向上的明暗程度。
107.其中,目标光影控制参数是用于控制待渲染烟雾模型的光照方向和光照大小的参数。
108.待渲染烟雾模型的目标光影控制参数的获取方式有多种,比如,通过待渲染烟雾模型的目标颜色通道层(如rgb层)记录、通过待渲染烟雾模型的目标速度通道层(如vel层)记录。
109.下面举例介绍目标光影控制参数分别是通过待渲染烟雾模型的目标颜色通道层(如rgb层)、目标速度通道层(如vel层)记录情况下,目标光影控制参数的获取。
110.①
目标光影控制参数通过待渲染烟雾模型的目标颜色通道层记录,即目标光影控制参数为基于目标颜色通道层记录的第一光影控制参数。
111.其中,第一光影控制参数具体是指:烟雾在第一方向上(如世界空间中的x轴正方向)光照的明暗程度、在第二方向上(如世界空间中的y轴正方向)光照的明暗程度、在第三方向上(如世界空间中的z轴正方向)光照的明暗程度。
112.此时,步骤102具体可以包括:接收基于所述目标颜色通道层输入的每个颜色通道的控制参数,以作为所述第一光影控制参数。其中,所述目标颜色通道层中每个颜色通道的控制参数用于调整所述待渲染烟雾模型在所述每个颜色通道对应光照方向上的明暗程度。
113.例如,目标颜色通道层是待渲染烟雾模型的rgb层,此时,控制烟雾在第一方向上光照的明暗程度的颜色通道、控制烟雾在第二方向上光照的明暗程度的颜色通道、控制烟雾在第三方向上光照的明暗程度的颜色通道分别为:r通道、g通道、b通道。步骤102中,可以基于ue4中的材质球直接获取r通道的默认值或用户输入值,作为烟雾在第一方向上光照的明暗程度;获取g通道的默认值或用户输入值,作为烟雾在第二方向上光照的明暗程度;获取b通道的默认值或用户输入值,作为烟雾在第三方向上光照的明暗程度,从而得到第一光影控制信息。
114.②
目标光影控制参数通过待渲染烟雾模型的目标速度通道层记录,即目标光影控制参数为基于目标速度通道层记录的第二光影控制参数。
115.其中,第二光影控制参数具体是指:烟雾在第四方向上(如世界空间中的x轴负方向)光照的明暗程度、在第五方向上(如世界空间中的y轴负方向)光照的明暗程度、在第六方向上(如世界空间中的z轴负方向)光照的明暗程度。
116.此时,步骤102具体可以包括:接收基于所述目标速度通道层输入的每个速度通道的控制参数,以作为所述第二光影控制参数。其中,所述目标速度通道层中每个速度通道的控制参数用于调整所述待渲染烟雾模型在所述每个速度通道对应光照方向上的明暗程度。
117.例如,目标速度通道层是待渲染烟雾模型的vel层,此时,控制烟雾在第四方向上光照的明暗程度的速度通道、控制烟雾在第五方向上光照的明暗程度的速度通道、控制烟雾在第六方向上光照的明暗程度的速度通道分别为:x轴负方向速度通道、y轴负方向速度通道、z轴负方向速度通道。步骤102中,可以直接获取x轴负方向速度通道的默认值或用户输入值,作为烟雾在第四方向上光照的明暗程度;获取y轴负方向速度通道的默认值或用户输入值,作为烟雾在第五方向上光照的明暗程度;获取z轴负方向速度通道的默认值或用户输入值,作为烟雾在第六方向上光照的明暗程度,从而得到第二光影控制信息。
118.103、根据所述目标光影控制参数和所述待渲染烟雾模型,生成与所述目标光影控制参数匹配的目标烟雾。
119.随着目标烟雾所需样式的不同,渲染目标烟雾的所依赖信息也不同,步骤103中,生成目标烟雾的方式有多种,示例性地,包括:
120.(1)目标烟雾依赖目标光影控制参数渲染。
121.情况

:目标光影控制参数为基于目标颜色通道层记录的第一光影控制参数。此时,步骤103具体可以包括步骤1031a:根据所述第一光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
122.例如,按照步骤102中获取得到的烟雾在第一方向上(如世界空间中的x轴正方向)
光照的明暗程度、在第二方向上(如世界空间中的y轴正方向)光照的明暗程度、在第三方向上(如世界空间中的z轴正方向)光照的明暗程度,分别设定待渲染烟雾模型在第一方向上、第二方向上、第三方向上的光照信息。
123.情况

:目标光影控制参数为基于目标速度通道层记录的第二光影控制参数。此时,步骤103具体可以包括步骤1031b:根据所述第二光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
124.例如,按照步骤102中获取得到的烟雾在第四方向上(如世界空间中的x轴负方向)光照的明暗程度、在第五方向上(如世界空间中的y轴负方向)光照的明暗程度、在第六方向上(如世界空间中的z轴负方向)光照的明暗程度,分别设定待渲染烟雾模型在第五方向上、第六方向上、第七方向上的光照信息。
125.(2)目标烟雾依赖目标光影控制参数、目标烟雾类型渲染。如图6所示,此时,步骤103具体可以包括如下步骤1031c~1032c,其中:
126.1031c、基于预设粒子系统,获取所述待渲染烟雾模型的目标烟雾类型。
127.其中,预设粒子系统是用于制作动态烟雾的参数控制系统,例如,ue4中的粒子系统。
128.其中,目标烟雾类型是待生成的烟雾的类型,比如,环境烟、爆炸烟等。
129.示例性地,可以通过ue4中的粒子系统设置待渲染烟雾模型的目标烟雾类型,例如,设置为环境烟或爆炸烟等。
130.1032c、根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的目标烟雾。
131.例如,首先,可以目标光影控制参数对待渲染烟雾模型进行渲染,得到与目标光影控制参数匹配的中间烟雾;然后,基于目标烟雾类型对中间烟雾进行渲染,得到与目标烟雾类型匹配的烟雾,从而得到与目标光影控制参数、及与目标烟雾类型均匹配的目标烟雾。
132.(3)目标烟雾依赖目标光影控制参数、目标基本颜色渲染。此时,步骤103具体可以包括如下步骤1031d~1032d,其中:
133.1031d、基于所述待渲染烟雾模型的基本颜色层,获取所述待渲染烟雾模型的目标基本颜色。
134.示例性地,可以基于ue4中的材质球直接获取待渲染烟雾模型的基本颜色层的默认值或用户输入值,作为待渲染烟雾模型的目标基本颜色。
135.1032d、根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的所述目标烟雾。
136.例如,首先,可以目标光影控制参数对待渲染烟雾模型进行渲染,得到与目标光影控制参数匹配的中间烟雾;然后,基于目标基本颜色对中间烟雾进行渲染,得到与目标基本颜色匹配的烟雾,从而得到与目标光影控制参数、及与目标基本颜色均匹配的目标烟雾。
137.上面以目标烟雾分别依赖目标光影控制参数渲染、依赖目标光影控制参数和目标烟雾类型渲染、依赖目标光影控制参数和目标基本颜色渲染为例,说明了目标烟雾的渲染方式。实际上,目标烟雾也可以是依赖于目标光影控制参数、目标烟雾类型、目标基本颜色中的一者或多者对待渲染烟雾模型进行渲染得到。
138.进一步地,步骤103中在根据目标光影控制参数渲染待渲染烟雾模型时,可以同时
结合目标颜色通道层记录的第一光影控制参数和目标速度通道层记录的第二光影控制参数,以提高渲染得到的烟雾光照方向的丰富多样性,进而提升烟雾的细节、体积感和光影感的表现力。
139.由以上内容可以看出,本技术实施例中通过获取携带有目标渲染层的待渲染烟雾模型;基于待渲染烟雾模型的光影控制层,获取待渲染烟雾模型的目标光影控制参数;根据目标光影控制参数对待渲染烟雾模型进行渲染,得到与目标光影控制参数匹配的目标烟雾;由于目标光影控制参数包含各光照方向上的明暗程度,可以用于控制待渲染烟雾模型的光照方向和光照大小,避免了烟雾接收到的光照统一、缺少明暗关系变化的问题,从而提高渲染得到的目标烟雾在光照方向上的丰富多样性,进而提升烟雾的细节、体积感和光影感的表现力。
140.为了更好地实施以上方法,本技术实施例还提供一种烟雾渲染装置,该烟雾渲染装置具体可以集成在电子设备中,比如,计算机设备,该计算机设备可以为终端、服务器等设备。
141.其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、个人电脑等设备;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群。
142.比如,在本实施例中,将以烟雾渲染装置具体集成在智能手机为例,对本技术实施例的方法进行详细说明。
143.例如,如图7所示,该烟雾渲染装置可以包括:
144.第一获取单元701,用于获取携带有目标渲染层的待渲染烟雾模型,其中,所述目标渲染层包含所述待渲染烟雾模型的光影控制层;
145.第二获取单元702,用于基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,其中,所述目标光影控制参数包含各光照方向上的明暗程度;
146.渲染单元703,用于根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾。
147.在一些实施例中,所述光影控制层包含所述待渲染烟雾模型的目标颜色通道层,所述目标光影控制参数包含基于所述目标颜色通道层记录的第一光影控制参数;第二获取单元702具体用于:
148.接收基于所述目标颜色通道层输入的每个颜色通道的控制参数,以作为所述第一光影控制参数,其中,所述目标颜色通道层中每个颜色通道的控制参数用于调整所述待渲染烟雾模型在所述每个颜色通道对应光照方向上的明暗程度;
149.在一些实施例中,渲染单元703具体用于:
150.根据所述第一光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
151.在一些实施例中,所述光影控制层包含所述待渲染烟雾模型的目标速度通道层,所述目标光影控制参数包含基于所述目标速度通道层记录的第二光影控制参数;第二获取单元702具体用于:
152.接收基于所述目标速度通道层输入的每个速度通道的控制参数,以作为所述第二光影控制参数,其中,所述目标速度通道层中每个速度通道的控制参数用于调整所述待渲
染烟雾模型在所述每个速度通道对应光照方向上的明暗程度;
153.在一些实施例中,渲染单元703具体用于:
154.根据所述第二光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
155.在一些实施例中,第一获取单元701具体用于:
156.构建初步烟雾;
157.对所述初步烟雾的占用内存进行优化,得到优化后烟雾,其中,所述对所述初步烟雾的占用内存进行优化包含对所述初步烟雾的速度进行重采样、对所述初步烟雾的体积进行压缩中的至少一者;
158.为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
159.在一些实施例中,所述目标渲染层为所述待渲染烟雾模型的目标颜色通道层,第一获取单元701具体用于:
160.获取所述优化后烟雾的初始颜色通道层,其中,所述初始颜色通道层包含控制第一颜色的颜色通道、控制第二颜色的颜色通道和控制第三颜色的颜色通道;
161.将控制第一颜色的颜色通道转换为控制烟雾在第一方向上光照的明暗程度的颜色通道、控制第二颜色的颜色通道转换为控制烟雾在第二方向上光照的明暗程度的颜色通道、以及所述控制第三颜色的颜色通道转换为控制烟雾在第三方向上光照的明暗程度的颜色通道,得到已设置目标颜色通道层的优化后烟雾,以作为携带有目标颜色通道层的待渲染烟雾模型。
162.在一些实施例中,所述目标渲染层为所述待渲染烟雾模型的目标速度通道层,第一获取单元701具体用于:
163.获取所述优化后烟雾的初始速度通道层,其中,所述初始速度通道层包含控制烟雾在第四方向上运动速度的速度通道、控制烟雾在第五方向上运动速度的速度通道和控制烟雾在第六方向上运动速度的速度通道;
164.将所述控制烟雾在第四方向上运动速度的速度通道转换为控制在第四方向上光照的明暗程度的速度通道、控制烟雾在第五方向上运动速度的速度通道转换为控制在第五方向上光照的明暗程度的速度通道、以及控制烟雾在第六方向上运动速度的速度通道转换为控制在第六方向上光照的明暗程度的速度通道,得到已设置目标速度通道层的优化后烟雾,以作为携带有目标速度通道层的待渲染烟雾模型。
165.在一些实施例中,第一获取单元701具体用于:
166.构建初步烟雾,其中,所述初步烟雾为包含多帧烟雾的动态烟雾;
167.对所述初步烟雾进行循环过渡设置,得到循环设置后烟雾,其中,所述对所述初步烟雾进行循环设置包含对所述初步烟雾的密度进行循环过渡设置、对所述初步烟雾的形态进行循环过渡设置中的至少一者;
168.为所述循环设置后烟雾设置渲染层,得到已设置渲染层的循环设置后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
169.在一些实施例中,渲染单元703具体用于:
170.基于预设粒子系统,获取所述待渲染烟雾模型的目标烟雾类型;
171.根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的目标烟雾。
172.在一些实施例中,所述目标渲染层还包含待渲染烟雾模型的基本颜色层,渲染单元703具体用于:
173.基于所述待渲染烟雾模型的基本颜色层,获取所述待渲染烟雾模型的目标基本颜色;
174.根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的所述目标烟雾。
175.由上可知,本实施例的烟雾渲染装置可以由第一获取单元701获取携带有目标渲染层的待渲染烟雾模型,其中,所述目标渲染层包含所述待渲染烟雾模型的光影控制层;由第二获取单元702基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,其中,所述目标光影控制参数包含各光照方向上的明暗程度;由渲染单元703根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾。由此,本实施例的烟雾渲染装置可以避免烟雾接收到的光照统一、缺少明暗关系变化的问题,从而提高渲染得到的目标烟雾在光照方向上的丰富多样性,进而提升烟雾的细节、体积感和光影感的表现力。
176.相应的,本技术实施例还提供一种电子设备,该电子设备可以为终端,该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(pc,personal computer)、个人数字助理(personal digital assistant,pda)等终端设备。如图8所示,图8为本技术实施例提供的电子设备的结构示意图。该电子设备800包括有一个或者一个以上处理核心的处理器801、有一个或一个以上计算机可读存储介质的存储器802及存储在存储器802上并可在处理器上运行的计算机程序。其中,处理器801与存储器802电性连接。本领域技术人员可以理解,图中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
177.处理器801是电子设备800的控制中心,利用各种接口和线路连接整个电子设备800的各个部分,通过运行或加载存储在存储器802内的软件程序和/或模块,以及调用存储在存储器802内的数据,执行电子设备800的各种功能和处理数据,从而对电子设备800进行整体监控。
178.在本技术实施例中,电子设备800中的处理器801会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器802中,并由处理器801来运行存储在存储器802中的应用程序,从而实现各种功能:
179.获取携带有目标渲染层的待渲染烟雾模型,其中,所述目标渲染层包含所述待渲染烟雾模型的光影控制层;
180.基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,其中,所述目标光影控制参数包含各光照方向上的明暗程度;
181.根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾。
182.在一些实施例中,所述光影控制层包含所述待渲染烟雾模型的目标颜色通道层,所述目标光影控制参数包含基于所述目标颜色通道层记录的第一光影控制参数;
183.所述基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,包括:
184.接收基于所述目标颜色通道层输入的每个颜色通道的控制参数,以作为所述第一光影控制参数,其中,所述目标颜色通道层中每个颜色通道的控制参数用于调整所述待渲染烟雾模型在所述每个颜色通道对应光照方向上的明暗程度;
185.所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
186.根据所述第一光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
187.在一些实施例中,所述光影控制层包含所述待渲染烟雾模型的目标速度通道层,所述目标光影控制参数包含基于所述目标速度通道层记录的第二光影控制参数;
188.所述基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,包括:
189.接收基于所述目标速度通道层输入的每个速度通道的控制参数,以作为所述第二光影控制参数,其中,所述目标速度通道层中每个速度通道的控制参数用于调整所述待渲染烟雾模型在所述每个速度通道对应光照方向上的明暗程度;
190.所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
191.根据所述第二光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
192.在一些实施例中,所述获取携带有目标渲染层的待渲染烟雾模型,包括:
193.构建初步烟雾;
194.对所述初步烟雾的占用内存进行优化,得到优化后烟雾,其中,所述对所述初步烟雾的占用内存进行优化包含对所述初步烟雾的速度进行重采样、对所述初步烟雾的体积进行压缩中的至少一者;
195.为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
196.在一些实施例中,所述目标渲染层为所述待渲染烟雾模型的目标颜色通道层,所述为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲染层的待渲染烟雾模型,包括:
197.获取所述优化后烟雾的初始颜色通道层,其中,所述初始颜色通道层包含控制第一颜色的颜色通道、控制第二颜色的颜色通道和控制第三颜色的颜色通道;
198.将控制第一颜色的颜色通道转换为控制烟雾在第一方向上光照的明暗程度的颜色通道、控制第二颜色的颜色通道转换为控制烟雾在第二方向上光照的明暗程度的颜色通道、以及所述控制第三颜色的颜色通道转换为控制烟雾在第三方向上光照的明暗程度的颜色通道,得到已设置目标颜色通道层的优化后烟雾,以作为携带有目标颜色通道层的待渲染烟雾模型。
199.在一些实施例中,所述目标渲染层为所述待渲染烟雾模型的目标速度通道层,所述为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲
染层的待渲染烟雾模型,包括:
200.获取所述优化后烟雾的初始速度通道层,其中,所述初始速度通道层包含控制烟雾在第四方向上运动速度的速度通道、控制烟雾在第五方向上运动速度的速度通道和控制烟雾在第六方向上运动速度的速度通道;
201.将所述控制烟雾在第四方向上运动速度的速度通道转换为控制在第四方向上光照的明暗程度的速度通道、控制烟雾在第五方向上运动速度的速度通道转换为控制在第五方向上光照的明暗程度的速度通道、以及控制烟雾在第六方向上运动速度的速度通道转换为控制在第六方向上光照的明暗程度的速度通道,得到已设置目标速度通道层的优化后烟雾,以作为携带有目标速度通道层的待渲染烟雾模型。
202.在一些实施例中,所述获取携带有目标渲染层的待渲染烟雾模型,包括:
203.构建初步烟雾,其中,所述初步烟雾为包含多帧烟雾的动态烟雾;
204.对所述初步烟雾进行循环过渡设置,得到循环设置后烟雾,其中,所述对所述初步烟雾进行循环设置包含对所述初步烟雾的密度进行循环过渡设置、对所述初步烟雾的形态进行循环过渡设置中的至少一者;
205.为所述循环设置后烟雾设置渲染层,得到已设置渲染层的循环设置后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
206.在一些实施例中,所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
207.基于预设粒子系统,获取所述待渲染烟雾模型的目标烟雾类型;
208.根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的目标烟雾。
209.在一些实施例中,所述目标渲染层还包含待渲染烟雾模型的基本颜色层,所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
210.基于所述待渲染烟雾模型的基本颜色层,获取所述待渲染烟雾模型的目标基本颜色;
211.根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的所述目标烟雾。
212.以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
213.可选的,如图8所示,电子设备800还包括:触控显示屏803、射频电路804、音频电路805、输入单元806以及电源807。其中,处理器801分别与触控显示屏803、射频电路804、音频电路805、输入单元806以及电源807电性连接。本领域技术人员可以理解,图8中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
214.触控显示屏803可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏803可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(lcd,liquid crystal display)、有机发光二极管(oled,organic light-emitting diode)等形
式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器801,并能接收处理器801发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器801以确定触摸事件的类型,随后处理器801根据触摸事件的类型在显示面板上提供相应的视觉输出。在本技术实施例中,可以将触控面板与显示面板集成到触控显示屏803而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏803也可以作为输入单元806的一部分实现输入功能。
215.射频电路804可用于收发射频信号,以通过无线通信与网络设备或其他电子设备建立无线通讯,与网络设备或其他电子设备之间收发信号。
216.音频电路805可以用于通过扬声器、传声器提供用户与电子设备之间的音频接口。音频电路805可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路805接收后转换为音频数据,再将音频数据输出处理器801处理后,经射频电路804以发送给比如另一电子设备,或者将音频数据输出至存储器802以便进一步处理。音频电路805还可能包括耳塞插孔,以提供外设耳机与电子设备的通信。
217.输入单元806可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
218.电源807用于给电子设备800的各个部件供电。可选的,电源807可以通过电源管理系统与处理器801逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源807还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
219.尽管图8中未示出,电子设备800还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
220.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
221.由上可知,本实施例提供的电子设备,可以获取携带有目标渲染层的待渲染烟雾模型;基于待渲染烟雾模型的光影控制层,获取待渲染烟雾模型的目标光影控制参数;根据目标光影控制参数对待渲染烟雾模型进行渲染,得到与目标光影控制参数匹配的目标烟雾。由于目标光影控制参数包含各光照方向上的明暗程度,可以用于控制待渲染烟雾模型的光照方向和光照大小,因此,本实施例提供的电子设备可以避免烟雾接收到的光照统一、缺少明暗关系变化的问题,从而提高渲染得到的目标烟雾在光照方向上的丰富多样性,进而提升烟雾的细节、体积感和光影感的表现力。
222.本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存
储介质中,并由处理器进行加载和执行。
223.为此,本技术实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本技术实施例所提供的任一种烟雾渲染方法中的步骤。例如,该计算机程序可以执行如下步骤:
224.获取携带有目标渲染层的待渲染烟雾模型,其中,所述目标渲染层包含所述待渲染烟雾模型的光影控制层;
225.基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,其中,所述目标光影控制参数包含各光照方向上的明暗程度;
226.根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾。
227.在一些实施例中,所述光影控制层包含所述待渲染烟雾模型的目标颜色通道层,所述目标光影控制参数包含基于所述目标颜色通道层记录的第一光影控制参数;
228.所述基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,包括:
229.接收基于所述目标颜色通道层输入的每个颜色通道的控制参数,以作为所述第一光影控制参数,其中,所述目标颜色通道层中每个颜色通道的控制参数用于调整所述待渲染烟雾模型在所述每个颜色通道对应光照方向上的明暗程度;
230.所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
231.根据所述第一光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
232.在一些实施例中,所述光影控制层包含所述待渲染烟雾模型的目标速度通道层,所述目标光影控制参数包含基于所述目标速度通道层记录的第二光影控制参数;
233.所述基于所述待渲染烟雾模型的光影控制层,获取所述待渲染烟雾模型的目标光影控制参数,包括:
234.接收基于所述目标速度通道层输入的每个速度通道的控制参数,以作为所述第二光影控制参数,其中,所述目标速度通道层中每个速度通道的控制参数用于调整所述待渲染烟雾模型在所述每个速度通道对应光照方向上的明暗程度;
235.所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
236.根据所述第二光影控制参数对所述待渲染烟雾模型进行渲染,得到所述目标烟雾。
237.在一些实施例中,所述获取携带有目标渲染层的待渲染烟雾模型,包括:
238.构建初步烟雾;
239.对所述初步烟雾的占用内存进行优化,得到优化后烟雾,其中,所述对所述初步烟雾的占用内存进行优化包含对所述初步烟雾的速度进行重采样、对所述初步烟雾的体积进行压缩中的至少一者;
240.为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
241.在一些实施例中,所述目标渲染层为所述待渲染烟雾模型的目标颜色通道层,所述为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲染层的待渲染烟雾模型,包括:
242.获取所述优化后烟雾的初始颜色通道层,其中,所述初始颜色通道层包含控制第一颜色的颜色通道、控制第二颜色的颜色通道和控制第三颜色的颜色通道;
243.将控制第一颜色的颜色通道转换为控制烟雾在第一方向上光照的明暗程度的颜色通道、控制第二颜色的颜色通道转换为控制烟雾在第二方向上光照的明暗程度的颜色通道、以及所述控制第三颜色的颜色通道转换为控制烟雾在第三方向上光照的明暗程度的颜色通道,得到已设置目标颜色通道层的优化后烟雾,以作为携带有目标颜色通道层的待渲染烟雾模型。
244.在一些实施例中,所述目标渲染层为所述待渲染烟雾模型的目标速度通道层,所述为所述优化后烟雾设置渲染层,得到已设置渲染层的优化后烟雾,以作为携带有目标渲染层的待渲染烟雾模型,包括:
245.获取所述优化后烟雾的初始速度通道层,其中,所述初始速度通道层包含控制烟雾在第四方向上运动速度的速度通道、控制烟雾在第五方向上运动速度的速度通道和控制烟雾在第六方向上运动速度的速度通道;
246.将所述控制烟雾在第四方向上运动速度的速度通道转换为控制在第四方向上光照的明暗程度的速度通道、控制烟雾在第五方向上运动速度的速度通道转换为控制在第五方向上光照的明暗程度的速度通道、以及控制烟雾在第六方向上运动速度的速度通道转换为控制在第六方向上光照的明暗程度的速度通道,得到已设置目标速度通道层的优化后烟雾,以作为携带有目标速度通道层的待渲染烟雾模型。
247.在一些实施例中,所述获取携带有目标渲染层的待渲染烟雾模型,包括:
248.构建初步烟雾,其中,所述初步烟雾为包含多帧烟雾的动态烟雾;
249.对所述初步烟雾进行循环过渡设置,得到循环设置后烟雾,其中,所述对所述初步烟雾进行循环设置包含对所述初步烟雾的密度进行循环过渡设置、对所述初步烟雾的形态进行循环过渡设置中的至少一者;
250.为所述循环设置后烟雾设置渲染层,得到已设置渲染层的循环设置后烟雾,以作为携带有目标渲染层的待渲染烟雾模型。
251.在一些实施例中,所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
252.基于预设粒子系统,获取所述待渲染烟雾模型的目标烟雾类型;
253.根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的目标烟雾。
254.在一些实施例中,所述目标渲染层还包含待渲染烟雾模型的基本颜色层,所述根据所述目标光影控制参数对所述待渲染烟雾模型进行渲染,得到与所述目标光影控制参数匹配的目标烟雾,包括:
255.基于所述待渲染烟雾模型的基本颜色层,获取所述待渲染烟雾模型的目标基本颜色;
256.根据所述目标光影控制参数和所述待渲染烟雾模型对所述待渲染烟雾模型进行
渲染,得到与所述目标光影控制参数、及与所述目标烟雾类型匹配的所述目标烟雾。
257.由上可知,本实施例提供的计算机可读存储介质,可以实现获取携带有目标渲染层的待渲染烟雾模型;基于待渲染烟雾模型的光影控制层,获取待渲染烟雾模型的目标光影控制参数;根据目标光影控制参数对待渲染烟雾模型进行渲染,得到与目标光影控制参数匹配的目标烟雾。由于目标光影控制参数包含各光照方向上的明暗程度,可以用于控制待渲染烟雾模型的光照方向和光照大小,因此,本实施例提供的计算机可读存储介质可以避免烟雾接收到的光照统一、缺少明暗关系变化的问题,从而提高渲染得到的目标烟雾在光照方向上的丰富多样性,进而提升烟雾的细节、体积感和光影感的表现力。
258.以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
259.其中,该计算机可读存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
260.由于该计算机可读存储介质中所存储的计算机程序,可以执行本技术实施例所提供的任一种烟雾渲染方法中的步骤,因此,可以实现本技术实施例所提供的任一种烟雾渲染方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
261.以上对本技术实施例所提供的一种烟雾渲染方法、装置、电子设备和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1