本申请涉及图像渲染,尤其涉及一种体积云渲染方法、装置、电子设备及存储介质。
背景技术:
1、云层是户外场景中一个重要的组成部分,在大多数的小规模三维场景或者视点位于地面附近的场景的实时绘制系统中,云通常采用天空盒纹理进行绘制实现。如果视点处于天空中近距离观看云层,甚至进入云层之中,天空盒方法所绘制的结果就无法获得足够的真实感。
2、由于,体积云的模拟效果直接关系着三维游戏的逼真程度,影响着用户的体验度,因此,如何实现较为逼真的体积云效果,是现有技术中所需解决的技术问题。
技术实现思路
1、为了解决上述技术问题或者至少部分地解决上述技术问题,本申请实施例提供了一种体积云渲染方法、装置、电子设备及存储介质。
2、根据本申请实施例的一个方面,提供了一种体积云渲染方法,包括:
3、创建高清晰渲染管线;
4、在所述高清晰渲染管线中添加体积云模型,其中,所述体积云模型用于表示虚拟场景中的云层;
5、获取用于所述高清晰渲染管线中的渲染上下文信息;
6、在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,使得将渲染后的体积云显示到屏幕;
7、所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
8、当通过对比相邻画面帧确定相机视角发生变化时,确定所述相邻画面帧之间重合的体积云区域;
9、将所述相邻画面帧中前一画面帧中所述体积云区域的像素信息进行重投影,得到填充像素信息;
10、将所述填充像素信息填充到当前画面帧中的所述体积云区域中。
11、可选的,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
12、在所述高清晰渲染管线中的高清相机附加数据类中添加渲染节点,在所述渲染节点执行根据所述渲染上下文信息对所述体积云模型进行渲染的渲染操作;
13、将所述渲染操作对应的渲染事件加入执行队列中;
14、根据所述执行队列依次调用所述渲染事件对应的渲染节点,执行所述渲染事件对应的渲染操作。
15、可选的,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
16、获取当前画面对应的深度图;
17、当根据所述深度图确定所述当前画面中存在不透明物体时,在所述当前画面中除所述不透明物体之外的区域对所述体积云模型进行渲染。
18、可选的,所述在所述当前画面中除所述不透明物体之外的区域对所述体积云模型进行渲染,还包括:
19、确定当前画面帧中所述不透明物体的边缘像素;
20、在所述边缘像素进行对所述体积云模型的渲染。
21、可选的,所述在所述当前画面中除所述不透明物体之外的区域对所述体积云模型进行渲染,包括:
22、获取所述当前画面帧相邻的前一画面帧中所述边缘像素对应的第一边缘像素信息;
23、使用所述第一边缘像素信息对所述当前画面帧中的边缘像素进行填充。
24、可选的,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
25、对当前画面帧进行的下采样,得到所述当前画面帧对应的n个待渲染子帧,其中,n为大于1的整数;
26、分别对各所述待渲染子帧进行渲染,得到渲染后子帧;
27、将各所述渲染后子帧合成为渲染后画面帧。
28、可选的,当使用第一边缘像素信息对所述当前画面帧中的边缘像素进行填充失败时,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
29、获取所述渲染后画面帧中所述边缘像素对应的第二边缘像素信息;
30、使用所述第二边缘像素信息对所述当前画面帧中的边缘像素进行填充。
31、可选的,所述获取用于所述高清晰渲染管线中的渲染上下文信息,包括:
32、根据接收到的渲染设置信息和/或对渲染配置选项的选定操作确定所述渲染上下文信息;
33、其中,所述渲染上下文信息包括以下至少一项参数:
34、视图设置参数、绘制缓冲参数、贴图参数、着色器参数、缓冲数据参数、材质参数、矩阵参数、裁剪参数、透明通道参数、模板测试参数、雾参数及灯光参数。
35、根据本申请实施例的另一个方面,提供了一种体积云渲染装置,包括:
36、创建模块,用于创建高清晰渲染管线;
37、添加模块,用于在所述高清晰渲染管线中添加体积云模型,其中,所述体积云模型用于表示虚拟场景中的云层;
38、获取模块,用于获取用于所述高清晰渲染管线中的渲染上下文信息;
39、渲染模块,用于在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,使得将渲染后的体积云显示到屏幕。
40、根据本申请实施例的另一个方面,提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
41、所述存储器,用于存放计算机程序;
42、所述处理器,用于执行计算机程序时,实现上述方法步骤。
43、根据本申请实施例的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法步骤。
44、本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
45、在hdrp中实现对体积云的渲染,使得可以在场景中生成高级视觉保真度的体积云效果,提高三维画面的逼真程度。
1.一种体积云渲染方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
3.根据权利要求1所述的方法,其特征在于,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
4.根据权利要求3所述的方法,其特征在于,所述在所述当前画面中除所述不透明物体之外的区域对所述体积云模型进行渲染,还包括:
5.根据权利要求4所述的方法,其特征在于,所述在所述当前画面中除所述不透明物体之外的区域对所述体积云模型进行渲染,包括:
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
7.根据权利要求6所述的方法,其特征在于,当使用第一边缘像素信息对所述当前画面帧中的边缘像素进行填充失败时,所述在高清晰渲染管线中根据所述渲染上下文信息将所述体积云模型渲染到渲染目标,包括:
8.根据权利要求1所述的方法,其特征在于,所述获取用于所述高清晰渲染管线中的渲染上下文信息,包括:
9.一种体积云渲染装置,其特征在于,包括:
10.一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-8任一项所述的方法步骤。