本公开提供了一种阴影渲染方法、装置、设备及存储介质,其中,该方法包括:获取渲染图像、与渲染图像对应的深度贴图以及与渲染图像对应的阴影贴图,基于阴影贴图中每个像素点对应的阴影信息,从渲染图像中确定阴影信息指示需要进行阴影渲染的多个第一像素点,基于深度贴图确定每个第一像素点对应的深度信息,并基于每个第一像素点对应的深度信息,确定每个第一像素点的法线方向,基于每个第一像素点的法线方向以及目标场景中的光照方向,从多个第一像素点中确定不需要进行阴影渲染的目标像素点,对阴影贴图中目标像素点对应的阴影信息进行调整,得到调整后的阴影贴图,并基于调整后的阴影贴图对渲染图像进行阴影渲染,得到绘制有阴影的目标图像。有阴影的目标图像。有阴影的目标图像。
【技术实现步骤摘要】
一种阴影渲染方法、装置、设备及存储介质
[0001]本公开涉及计算机图形
,具体而言,涉及一种阴影渲染方法、装置、设备及存储介质。
技术介绍
[0002]光线在传播过程中被不透明的物体遮挡时,在遮挡物体背面形成暗区,暗区投射到另一物体上即形成阴影,阴影可以体现出场景中各物体之间的空间关系以及光源的位置等信息,在三维场景渲染应用中,为了增加渲染的逼真效果,提升场景的层次感,通常都会使用阴影渲染技术来为场景中的物体绘制阴影。
[0003]在进行阴影渲染时,通常将各像素点在阴影空间下的深度和在光源空间下的深度进行比对,得到像素点对应的阴影信息,然而,上述方式只能确定出被遮挡的物体,针对物体不同表面的遮挡情况区分度低,从而影响阴影渲染的准确性。
技术实现思路
[0004]本公开实施例至少提供一种阴影渲染方法、装置、设备及存储介质。
[0005]本公开实施例提供了一种阴影渲染方法,所述方法包括:
[0006]获取渲染图像、与所述渲染图像对应的深度贴图以及与所述渲染图像对应的阴影贴图;所述渲染图像通过对目标场景进行颜色渲染得到,所述阴影贴图中的各个像素点的阴影信息通过将每个像素点在阴影空间下的深度和在光源空间下的深度进行比对得到;
[0007]基于所述阴影贴图中每个像素点对应的阴影信息,从所述渲染图像中确定多个第一像素点,所述第一像素点是指阴影信息指示需要进行阴影渲染的像素点;
[0008]基于所述深度贴图确定每个所述第一像素点对应的深度信息,并基于每个所述第一像素点对应的深度信息,确定每个所述第一像素点的法线方向;
[0009]获取所述目标场景中的光照方向,基于每个所述第一像素点的法线方向以及所述光照方向,从所述多个第一像素点中确定目标像素点,其中,所述目标像素点为所述多个第一像素点中不需要进行阴影渲染的像素点;
[0010]对所述阴影贴图中所述目标像素点对应的阴影信息进行调整,得到调整后的阴影贴图,并基于所述调整后的阴影贴图对所述渲染图像进行阴影渲染,得到绘制有阴影的目标图像。
[0011]本公开实施例中,在使用阴影贴图对渲染图像进行阴影渲染之前,先根据阴影贴图中每个像素点对应的阴影信息,从渲染图像中确定阴影信息指示需要进行阴影渲染的多个第一像素点,并基于深度信息确定每个第一像素点的法线方向,从而可以通过第一像素点的法线方向和目标场景中的光照方向对第一像素点是否需要进行阴影渲染进行判断,筛选出不需要进行阴影渲染的目标像素点,进而将阴影贴图中目标像素点原本对应的指示为需要进行阴影渲染的阴影信息进行调整,得到调整后的阴影贴图,并基于调整后的阴影贴图对渲染图像进行阴影渲染,得到绘制有阴影的目标图像,从而可以筛选出虽然处于其他
物体的遮挡范围内,但是并不需要进行阴影渲染的目标像素点,并对目标像素点的阴影信息进行调整,有助于提升阴影渲染的准确性和真实性,提升目标场景的层次感。
[0012]一种可选的实施方式中,所述对所述阴影贴图中所述目标像素点对应的阴影信息进行调整,得到调整后的阴影贴图,包括:
[0013]将所述阴影贴图中所述目标像素点对应的原本指示需要进行阴影渲染的阴影信息调整为指示不需要进行阴影渲染的阴影信息,得到调整后的阴影贴图。
[0014]本公开实施例中,可以针对虽然处于其他物体的遮挡范围内,但是并不需要进行阴影渲染的目标像素点,将其原本需要进行阴影渲染的阴影信息调整为不需要进行阴影渲染的阴影信息,从而有助于提升阴影渲染的准确性和真实性。
[0015]一种可选的实施方式中,所述基于每个所述第一像素点对应的深度信息,确定每个所述第一像素点的法线方向,包括:
[0016]针对每个所述第一像素点,获取所述第一像素点在屏幕空间下的二维坐标;
[0017]基于所述第一像素点对应的深度信息,将所述第一像素点的二维坐标转换到世界空间下,得到所述第一像素点在所述世界空间下的三维坐标;
[0018]基于所述第一像素点在所述世界空间下的三维坐标,确定所述第一像素点的法线方向。
[0019]本公开实施例中,可以将第一像素点在屏幕空间下的二维坐标转换为世界空间下的三维坐标,通过坐标的转换,实现使用深度信息反算法线,从而可以在不引入额外的渲染纹理的情况下,得到第一像素点的法线信息,从而有助于消减调制阴影。
[0020]一种可选的实施方式中,所述基于所述第一像素点在所述世界空间下的三维坐标,确定所述第一像素点的法线方向,包括:
[0021]确定所述第一像素点在所述世界空间下的三维坐标的偏导数,得到偏导结果,并基于所述偏导结果,确定所述第一像素点的法线方向。
[0022]本公开实施例中,可以直接通过偏导数来得到第一像素点的法线方向,有效提升确定法线方向的速度和效率,从而有助于消减调制阴影。
[0023]一种可选的实施方式中,所述基于每个所述第一像素点的法线方向以及所述光照方向,从所述多个第一像素点中确定目标像素点,包括:
[0024]针对每个所述第一像素点,在所述法线方向与所述光照方向相同的情况下,将该第一像素点确定为所述目标像素点。
[0025]本公开实施例中,若法线方向和光照方向相同,说明该第一像素点位于物体的背光面,而处于背光面的像素点不受阴影影响,因此该第一像素点无需进行阴影渲染,从而可以确定出不需要进行阴影渲染的目标像素点。
[0026]一种可选的实施方式中,所述基于每个所述第一像素点的法线方向以及所述光照方向,从所述多个第一像素点中确定目标像素点,包括:
[0027]针对每个所述第一像素点,在所述第一像素点的法线方向与所述第一像素点对应的拍摄方向符合预设条件的情况下,将所述第一像素点确定为第二像素点;
[0028]在所述第二像素点的法线方向与所述光照方向相同的情况下,将所述第二像素点确定为所述目标像素点。
[0029]本公开实施例中,可以将第一像素点的法线方向与第一像素点对应的拍摄方向进
行比较,从多个第一像素点中筛选出第二像素点,再对第二像素点进行目标像素点的判定,降低在深度跳变的情况下,错误的法线信息对目标像素点筛选造成的影响,从而有助于减小屏幕空间法线误差的影响,提升阴影渲染的准确性。
[0030]一种可选的实施方式中,在所述第一像素点的法线方向与所述第一像素点对应的拍摄方向之间的夹角呈钝角的情况下,确定所述第一像素点的法线方向与所述第一像素点对应的拍摄方向符合预设条件。
[0031]本公开实施例中,可以通过第一像素点的法线方向和对应的拍摄方向之间的夹角,确定出渲染贴图中不位于深度跳变区域的第二像素点,从而减少存在深度跳变的物体边缘处被误消除阴影的情况,有助于提升阴影渲染的准确性。
[0032]本公开实施例还提供一种阴影渲染装置,所述装置包括:
[0033]数据获取模块,用于获取渲染图像、与所述渲染图像对应的深度贴图以及与所述渲染图像对应的阴影贴图;所述渲染图像为通过对目标场景进行颜色渲染得到本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种阴影渲染方法,其特征在于,所述方法包括:获取渲染图像、与所述渲染图像对应的深度贴图以及与所述渲染图像对应的阴影贴图;所述渲染图像通过对目标场景进行颜色渲染得到,所述阴影贴图中的各个像素点的阴影信息通过将每个像素点在阴影空间下的深度和在光源空间下的深度进行比对得到;基于所述阴影贴图中每个像素点对应的阴影信息,从所述渲染图像中确定多个第一像素点,所述第一像素点是指阴影信息指示需要进行阴影渲染的像素点;基于所述深度贴图确定每个所述第一像素点对应的深度信息,并基于每个所述第一像素点对应的深度信息,确定每个所述第一像素点的法线方向;获取所述目标场景中的光照方向,基于每个所述第一像素点的法线方向以及所述光照方向,从所述多个第一像素点中确定目标像素点,其中,所述目标像素点为所述多个第一像素点中不需要进行阴影渲染的像素点;对所述阴影贴图中所述目标像素点对应的阴影信息进行调整,得到调整后的阴影贴图,并基于所述调整后的阴影贴图对所述渲染图像进行阴影渲染,得到绘制有阴影的目标图像。2.根据权利要求1所述的方法,其特征在于,所述对所述阴影贴图中所述目标像素点对应的阴影信息进行调整,得到调整后的阴影贴图,包括:将所述阴影贴图中所述目标像素点对应的原本指示需要进行阴影渲染的阴影信息调整为指示不需要进行阴影渲染的阴影信息,得到调整后的阴影贴图。3.根据权利要求1所述的方法,其特征在于,所述基于每个所述第一像素点对应的深度信息,确定每个所述第一像素点的法线方向,包括:针对每个所述第一像素点,获取所述第一像素点在屏幕空间下的二维坐标;基于所述第一像素点对应的深度信息,将所述第一像素点的二维坐标转换到世界空间下,得到所述第一像素点在所述世界空间下的三维坐标;基于所述第一像素点在所述世界空间下的三维坐标,确定所述第一像素点的法线方向。4.根据权利要求3所述的方法,其特征在于,所述基于所述第一像素点在所述世界空间下的三维坐标,确定所述第一像素点的法线方向,包括:确定所述第一像素点在所述世界空间下的三维坐标的偏导数,得到偏导结果,并基于所述偏导结果,确定所述第一像素点的法线方向。5.根据权利要求1所述的方法,其特征在于,所述基于每个所述第一像素点的法线方向以及所述光照方向,从所述多个第一像素点中确定目标像素点,包括:针对每个所述第一像素点,在所述法线方向与所述光照方向相同的情况下,将该第一像素点确...
【专利技术属性】
技术研发人员:赵浏哲,
申请(专利权)人:北京字跳网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。