System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机图形学,特别涉及一种场景渲染方法、装置、设备、存储介质及程序产品。
技术介绍
1、环境光遮蔽(ambient occlusion)是一种用于估算场景中每个点受到间接光照影响程度的技术。它可以产生更加真实和自然的全局光照效果,从而增强三维(three-dimensional,3d)渲染的视觉体验。在环境光遮蔽中通常还需要每个像素的法线信息,有助于更准确地判断场景中各像素之间的相对位置关系,从而提高环境遮蔽效果的质量。
2、相关技术中,通过额外使用一个渲染阶段,在渲染场景颜色之前将场景法线渲染到一个单独的帧缓冲区中,在环境光遮蔽计算时,采用法线贴图的方式实现环境光遮蔽效果。
3、然而,上述方法需要额外占用存储空间来单独存储法线信息,并且增加了渲染过程中的计算量,存储资源和计算资源消耗较高,渲染效率较低,性能较差。
技术实现思路
1、本申请实施例提供了一种场景渲染方法、装置、设备、存储介质及程序产品,能够节约数据存储资源并提高渲染效率。所述技术方案如下。
2、一方面,提供了一种场景渲染方法,所述方法包括:
3、获取待渲染场景中待渲染像素的颜色数据和法线数据,所述颜色数据用于对所述待渲染像素进行着色,所述法线数据用于指示所述待渲染像素在所述待渲染场景中的朝向;
4、对所述颜色数据和所述法线数据进行编码并整合,得到第一编码数据,所述第一编码数据中包括颜色编码数据和法线编码数据;
5、对所述第一编码数据进行
6、基于所述渲染数据中的所述颜色解码数据和所述法线解码数据对所述待渲染像素进行渲染,得到目标像素进行显示。
7、另一方面,提供了一种场景渲染装置,所述装置包括:
8、获取模块,用于获取待渲染场景中待渲染像素的颜色数据和法线数据,所述颜色数据用于对所述待渲染像素进行着色,所述法线数据用于指示所述待渲染像素在所述待渲染场景中的位置深度关系;
9、处理模块,用于对所述颜色数据和所述法线数据进行编码并整合,得到第一编码数据,所述第一编码数据中包括颜色编码数据和法线编码数据;
10、所述处理模块,还用于对所述第一编码数据进行解码,得到渲染数据,所述渲染数据中包括颜色解码数据和法线解码数据,所述颜色解码数据用于还原所述颜色数据,所述法线解码数据用于还原所述法线数据;
11、所述处理模块,还用于基于所述渲染数据中的所述颜色解码数据和所述法线解码数据对所述待渲染像素进行渲染,得到目标像素进行显示。
12、另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中任一所述的场景渲染方法。
13、另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述本申请实施例中任一所述的场景渲染方法。
14、另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的场景渲染方法。
15、本申请实施例提供的技术方案带来的有益效果至少包括:
16、通过对颜色数据和法线数据进行编码并整合,得到第一编码数据,对颜色数据和法线数据所需的两个渲染缓冲区的冗余数据空间进行了优化,通过编码整合使第一编码数据能够用于同时指示颜色数据和法线数据,从而只需要采用单个预设的渲染缓冲区即可存储第一编码数据,在涉及环境光遮蔽的场景渲染中,既能够基于法线信息保障环境光遮蔽渲染效果,又能够避免法线信息额外占用一个渲染缓冲区,节约了存储空间的同时,能够同时基于第一编码数据中包含的颜色信息和法线信息进行渲染,在一次渲染计算中实现环境光遮蔽,减少了渲染过程中资源调用的计算量,从而提高了渲染效率和计算性能。
本文档来自技高网...【技术保护点】
1.一种场景渲染方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述第一编码数据符合预设数据格式;
3.根据权利要求2所述的方法,其特征在于,所述对所述法线数据进行编码,得到法线编码数据,包括:
4.根据权利要求2所述的方法,其特征在于,所述对所述颜色数据进行编码,得到颜色编码数据,包括:
5.根据权利要求2所述的方法,其特征在于,所述法线编码数据中包括第一法线编码数据和第二法线编码数据,所述颜色编码数据中包括第一颜色编码数据、第二颜色编码数据和第三颜色编码数据;所述第一编码数据中包括位数相同的第一数据位、第二数据位、第三数据位和第四数据位;
6.根据权利要求5所述的方法,其特征在于,所述将所述第三颜色编码和辅助精度数据作为所述第一编码数据中的所述第二数据位之前,还包括:
7.根据权利要求1至6任一所述的方法,其特征在于,所述对所述第一编码数据进行解码,得到渲染数据,包括:
8.根据权利要求7所述的方法,其特征在于,所述基于所述辅助精度解码数据、所述第一分量数据和所述第
9.根据权利要求1至6任一所述的方法,其特征在于,所述对所述颜色数据和所述法线数据进行编码并整合,得到第一编码数据之后,还包括:
10.根据权利要求9所述的方法,其特征在于,所述将所述第一编码数据存储至预设的渲染缓冲区中之前,还包括:
11.根据权利要求10所述的方法,其特征在于,所述确定所述渲染缓冲区的存储容量,包括:
12.一种场景渲染装置,其特征在于,所述装置包括:
13.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一段计算机程序,所述至少一段计算机程序由所述处理器加载并执行以实现如权利要求1至11任一所述的场景渲染方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一段计算机程序,所述至少一段计算机程序由处理器加载并执行以实现如权利要求1至11任一所述的场景渲染方法。
15.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至11任一所述的场景渲染方法。
...【技术特征摘要】
1.一种场景渲染方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述第一编码数据符合预设数据格式;
3.根据权利要求2所述的方法,其特征在于,所述对所述法线数据进行编码,得到法线编码数据,包括:
4.根据权利要求2所述的方法,其特征在于,所述对所述颜色数据进行编码,得到颜色编码数据,包括:
5.根据权利要求2所述的方法,其特征在于,所述法线编码数据中包括第一法线编码数据和第二法线编码数据,所述颜色编码数据中包括第一颜色编码数据、第二颜色编码数据和第三颜色编码数据;所述第一编码数据中包括位数相同的第一数据位、第二数据位、第三数据位和第四数据位;
6.根据权利要求5所述的方法,其特征在于,所述将所述第三颜色编码和辅助精度数据作为所述第一编码数据中的所述第二数据位之前,还包括:
7.根据权利要求1至6任一所述的方法,其特征在于,所述对所述第一编码数据进行解码,得到渲染数据,包括:
8.根据权利要求7所述的方法,其特征在于,所述基于所述辅助精度解码数据、所述第一分量数据和所述第二分...
【专利技术属性】
技术研发人员:王钦佳,卓西宁,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。