System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本说明书涉及计算机图形学,特别涉及一种三维对象的渲染方法、装置和计算机程序产品。
技术介绍
1、在计算机图形学的应用领域中,常常需要对半透明三维对象(或物体、三维体)进行渲染。当纯净、透明材质的透明物体内混入了微量元素、杂质,或出现裂痕、断面后,在视觉上的透明度会降低进而呈现出半透明状态。示例性的半透明对象可以是钻石、晶石、冰块等。半透明对象在光线的作用下会出现丰富的折射以及反射视觉效果。
2、本说明书一些实施例旨在提供一种半透明三维对象的高效渲染方法,以较低的计算消耗呈现半透明对象较为真实的光学表现。
技术实现思路
1、本说明书一个或多个实施例提供了一种三维对象的渲染方法,包括:获取第一纹理贴图以及第二纹理贴图;所述第二纹理贴图的图像频率不同于所述第一纹理贴图的图像频率;对待渲染对象的三维模型的纹理坐标进行视差计算,得到所述三维模型的视差纹理坐标;基于所述三维模型的视差纹理坐标分别对所述第一纹理贴图以及所述第二纹理贴图进行纹理采样,得到第一采样结果以及第二采样结果;基于所述第一采样结果以及所述第二采样结果,获得所述待渲染对象的折射纹理采样结果;获取所述待渲染对象的反射纹理采样结果;基于所述折射纹理采样结果以及所述反射纹理采样结果,获得待渲染对象的渲染图像值。
2、根据本说明书一些实施例所述的方法,在相同尺寸的贴图区域内,所述第二纹理贴图的高频分量多于所述第一纹理贴图的高频分量。
3、根据本说明书一些实施例所述的方法,所述第一纹理贴图以及所述第二
4、根据本说明书一些实施例所述的方法,所述第一纹理贴图以及所述第二纹理贴图包括以下一种或多种纹理单元:三角形、多边形、圆形、裂痕。
5、根据本说明书一些实施例所述的方法,所述对待渲染对象的三维模型的纹理坐标进行视差计算,得到所述三维模型的视差纹理坐标,包括:基于高度信息对所述对待渲染对象的三维模型的纹理坐标进行视差计算,得到所述三维模型的视差纹理坐标;其中,所述高度信息包括负值。
6、根据本说明书一些实施例所述的方法,所述基于所述第一采样结果以及所述第二采样结果,获得所述待渲染对象的折射纹理采样结果,包括:将所述第一采样结果和所述第二采样结果进行lerp计算,得到所述折射纹理采样结果。
7、根据本说明书一些实施例所述的方法,所述三维模型包括多个顶点;所述三维模型的纹理坐标包括各顶点对应的纹理坐标。
8、根据本说明书一些实施例所述的方法,所述获取所述待渲染对象的反射纹理采样结果,包括:获取三维环境贴图;基于所述三维模型各顶点的空间法线向量以及预设虚拟摄像机相对于各顶点的拍摄方向向量计算各顶点对应的反射向量;基于所述三维模型的各顶点对应的反射向量对所述三维环境贴图进行采样,得到所述反射纹理采样结果。
9、根据本说明书一些实施例所述的方法,所述基于所述折射纹理采样结果以及所述反射纹理采样结果,获得待渲染对象的渲染图像值,包括:计算所述折射纹理采样结果以及所述反射纹理采样结果的加权和。
10、根据本说明书一些实施例所述的方法,所述反射纹理采样结果对应的权重小于所述折射纹理采样结果对应的权重。
11、根据本说明书一些实施例所述的方法,所述基于所述折射纹理采样结果以及所述反射纹理采样结果,获得待渲染对象的渲染图像值,还包括:计算所述三维模型的各顶点的空间法线向量与预设虚拟摄像机相对于各顶点的拍摄方向向量的点积;基于所述三维模型各顶点对应的点积结果以及加权和,获得待渲染对象的渲染图像值。
12、本说明书一个或多个实施例还提供了一种三维对象的渲染装置,包括:贴图获取模块,用于获取第一纹理贴图以及第二纹理贴图;在相同尺寸的贴图区域内,所述第二纹理贴图的高频分量多于所述第一纹理贴图的高频分量;视差计算模块,用于对待渲染对象的三维模型的纹理坐标进行视差计算,得到所述三维模型的视差纹理坐标;采样模块,用于基于所述三维模型的视差纹理坐标分别对所述第一纹理贴图以及所述第二纹理贴图进行纹理采样,得到第一采样结果以及第二采样结果;折射纹理获取模块,用于基于所述第一采样结果以及所述第二采样结果,获得所述待渲染对象的折射纹理采样结果;反射纹理获取模块,用于获取所述待渲染对象的反射纹理采样结果;渲染值获取模块,基于所述折射纹理采样结果以及所述反射纹理采样结果,获得待渲染对象的渲染图像值。
13、本说明书一个或多个实施例还提供了一种计算机程序产品,包括计算机指令,当所述计算机指令中的至少部分被处理器执行时,能够实现本说明书一些实施例所述的方法。
本文档来自技高网...【技术保护点】
1.一种三维对象的渲染方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在相同尺寸的贴图区域内,所述第二纹理贴图的高频分量多于所述第一纹理贴图的高频分量。
3.根据权利要求1所述的方法,其特征在于,所述第一纹理贴图以及所述第二纹理贴图具有相同的基色。
4.根据权利要求1所述的方法,其特征在于,所述第一纹理贴图以及所述第二纹理贴图包括以下一种或多种纹理单元:三角形、多边形、圆形、裂痕。
5.根据权利要求1所述的方法,其特征在于,所述对待渲染对象的三维模型的纹理坐标进行视差计算,得到所述三维模型的视差纹理坐标,包括:
6.根据权利要求1所述的方法,其特征在于,所述基于所述第一采样结果以及所述第二采样结果,获得所述待渲染对象的折射纹理采样结果,包括:
7.根据权利要求1所述的方法,其特征在于,所述三维模型包括多个顶点;所述三维模型的纹理坐标包括各顶点对应的纹理坐标。
8.根据权利要求7所述的方法,其特征在于,所述获取所述待渲染对象的反射纹理采样结果,包括:
9.根据权利要求
10.根据权利要求9所述的方法,其特征在于,所述反射纹理采样结果对应的权重小于所述折射纹理采样结果对应的权重。
11.根据权利要求9所述的方法,其特征在于,所述基于所述折射纹理采样结果以及所述反射纹理采样结果,获得待渲染对象的渲染图像值,还包括:
12.一种三维对象的渲染装置,其特征在于,包括:
13.一种计算机程序产品,包括计算机指令,当所述计算机指令中的至少部分被处理器执行时,能够实现如权利要求1~11任一项所述的方法。
...【技术特征摘要】
1.一种三维对象的渲染方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在相同尺寸的贴图区域内,所述第二纹理贴图的高频分量多于所述第一纹理贴图的高频分量。
3.根据权利要求1所述的方法,其特征在于,所述第一纹理贴图以及所述第二纹理贴图具有相同的基色。
4.根据权利要求1所述的方法,其特征在于,所述第一纹理贴图以及所述第二纹理贴图包括以下一种或多种纹理单元:三角形、多边形、圆形、裂痕。
5.根据权利要求1所述的方法,其特征在于,所述对待渲染对象的三维模型的纹理坐标进行视差计算,得到所述三维模型的视差纹理坐标,包括:
6.根据权利要求1所述的方法,其特征在于,所述基于所述第一采样结果以及所述第二采样结果,获得所述待渲染对象的折射纹理采样结果,包括:
7.根据权利要求1所述的方法,其特征在于,所述三维模...
【专利技术属性】
技术研发人员:王元龙,
申请(专利权)人:网易杭州网络有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。