阴影贴图的生成方法、装置和电子设备与流程

文档序号:34844409发布日期:2023-07-22 10:07阅读:50来源:国知局
阴影贴图的生成方法、装置和电子设备与流程

本发明涉及游戏,尤其是涉及一种阴影贴图的生成方法、装置和电子设备。


背景技术:

1、在渲染虚拟场景时,通常需要渲染阴影效果。对于点光源而言,点光源发出的光会照射到虚拟场景的四面八方。相关技术中,可以以点光源为中心设置一球体,通过正交相机采集球体内场景的深度信息,并光栅化一张贴图上,该贴图称为阴影贴图,即shadow map。在渲染场景的时候,采样阴影贴图中的深度信息,然后基于该深度信息判断屏幕像素所在的场景位置是否被遮挡,如果被遮挡则不进行光照着色,就产生了阴影效果。

2、然而,由于阴影贴图是将三维空间内的深度信息映射到二维平面的贴图中,会造成深度信息的损失,同时,阴影贴图中仅有近似圆形的区域记录有深度信息,导致大量的贴图区域被浪费,阴影贴图的利用率较低,影响了点光源阴影渲染的性能和效果。


技术实现思路

1、有鉴于此,本发明的目的在于提供一种阴影贴图的生成方法、装置和电子设备,以提升阴影贴图利用率,增强点光源阴影渲染的性能和效果。

2、第一方面,本发明实施例提供了一种阴影贴图的生成方法,方法包括:在虚拟场景中确定目标点光源,并确定目标点光源发出的光所覆盖的球体空间;将球体空间划分为半球空间;采集半球空间对应的半球曲面上各个位置点的场景深度数据,基于半球曲面中位置点投影到平面上的投影关系,将场景深度数据记录到平面上,得到初始阴影贴图;其中,初始阴影贴图中的场景深度数据组成圆形平面区域;基于圆形平面区域与矩形平面区域的映射关系,将初始阴影贴图中的场景深度数据映射到矩形区域中,得到最终阴影贴图。

3、第二方面,本发明实施例还提供一种阴影贴图的生成装置,该装置包括:第一确认模块,用于在虚拟场景中确定目标点光源,并确定目标点光源发出的光所覆盖的球体空间;第一划分模块,用于将球体空间划分为半球空间;第一记录模块,用于采集半球空间对应的半球曲面上各个位置点的场景深度数据,基于半球曲面中位置点投影到平面上的投影关系,将场景深度数据记录到平面上,得到初始阴影贴图;其中,初始阴影贴图中的场景深度数据组成圆形平面区域;第一映射模块,用于基于圆形平面区域与矩形平面区域的映射关系,将初始阴影贴图中的场景深度数据映射到矩形区域中,得到最终阴影贴图。

4、第三方面,本发明实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述阴影贴图的生成方法。

5、第四方面,本发明实施例提供了一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述阴影贴图的生成方法。

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

7、上述阴影贴图的生成方法、装置和电子设备,在虚拟场景中确定目标点光源,并确定目标点光源发出的光所覆盖的球体空间;将球体空间划分为半球空间;采集半球空间对应的半球曲面上各个位置点的场景深度数据,基于半球曲面中位置点投影到平面上的投影关系,将场景深度数据记录到平面上,得到初始阴影贴图;其中,初始阴影贴图中的场景深度数据组成圆形平面区域;基于圆形平面区域与矩形平面区域的映射关系,将初始阴影贴图中的场景深度数据映射到矩形区域中,得到最终阴影贴图。该方式中,通过将目标点光源发出的光所覆盖的球体空间划分为半球空间,根据半球曲面中位置点投影到平面上的投影关系,将半球空间对应的半球曲面上各个位置点的场景深度数据记录到平面上,组成圆形平面区域,再将场景深度数据映射到矩形区域中,得到最终阴影贴图,该方式中,将半球曲面映射到圆形平面,进而再映射到矩形平面,降低了深度信息的损失,同时提升了阴影贴图利用率,通过矩形贴图记录了更多的空间深度信息,进而增强了点光源阴影渲染的性能和效果。

8、本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

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



技术特征:

1.一种阴影贴图的生成方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,基于所述半球曲面中位置点投影到平面上的投影关系,将所述场景深度数据记录到平面上,得到初始阴影贴图的步骤,包括:

3.根据权利要求1所述的方法,其特征在于,基于圆形平面区域与矩形平面区域的映射关系,将所述初始阴影贴图中的场景深度数据映射到矩形区域中,得到最终阴影贴图的步骤,包括:

4.根据权利要求1所述的方法,其特征在于,所述矩形平面区域为正方形平面区域。

5.根据权利要求1所述的方法,其特征在于,将所述球体空间划分为半球空间的步骤,包括:

6.根据权利要求1所述的方法,其特征在于,将所述球体空间划分为半球空间的步骤,包括:

7.根据权利要求6所述的方法,其特征在于,基于所述主相机视椎体的指定视椎体平面,将所述球体空间划分为半球空间的步骤,包括:

8.根据权利要求7所述的方法,其特征在于,通过所述划分平面将所述球体空间划分为半球空间的步骤之后,所述方法还包括:

9.根据权利要求6所述的方法,其特征在于,基于所述主相机视椎体的指定视椎体平面,将所述球体空间划分为半球空间的步骤,包括:

10.根据权利要求1所述的方法,其特征在于,基于圆形平面区域与矩形平面区域的映射关系,将所述初始阴影贴图中的场景深度数据映射到矩形区域中,得到最终阴影贴图的步骤之后,所述方法还包括:

11.根据权利要求10所述的方法,其特征在于,所述静态模型预设的第一更新条件包括下述中的至少一种:

12.根据权利要求1所述的方法,其特征在于,基于圆形平面区域与矩形平面区域的映射关系,将所述初始阴影贴图中的场景深度数据映射到矩形区域中,得到最终阴影贴图的步骤之后,所述方法还包括:

13.根据权利要求12所述的方法,其特征在于,所述动态模型预设的更新规则,包括下述中的至少一种:

14.根据权利要求12所述的方法,其特征在于,基于所述动态模型预设的更新规则,继续执行下述步骤,以更新所述动态模型对应的最终阴影贴图的步骤,包括:

15.一种阴影贴图的生成装置,其特征在于,所述装置包括:

16.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-14任一项所述的阴影贴图的生成方法。

17.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-14任一项所述的阴影贴图的生成方法。


技术总结
本发明提供了一种阴影贴图的生成方法、装置和电子设备,其中,方法包括:在虚拟场景中确定目标点光源,并确定目标点光源发出的光所覆盖的球体空间;将球体空间划分为半球空间;采集半球空间对应的半球曲面上各个位置点的场景深度数据,基于半球曲面中位置点投影到平面上的投影关系,将场景深度数据记录到平面上,得到初始阴影贴图;其中,初始阴影贴图中的场景深度数据组成圆形平面区域;基于圆形平面区域与矩形平面区域的映射关系,将初始阴影贴图中的场景深度数据映射到矩形区域中,得到最终阴影贴图。该方式下,提升了阴影贴图利用率,增强了点光源阴影渲染的性能和效果。

技术研发人员:毛松亮
受保护的技术使用者:网易(杭州)网络有限公司
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1