System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本说明书一个或多个实施例涉及计算机,尤其涉及渲染三维模型的二维图像的方法及装置。
技术介绍
1、由于3d模型(即三维模型)相比2d图像(即二维图像)能更丰富和完整地展示物品的细节,给用户更好的消费或游戏体验,在很多面向互联网用户的产品中,越来越多的业务场景使用3d模型来进行物品的展示,例如游戏场景、虚拟聊天场景、虚拟生活场景、线上商超场景等,所展示的物品可以是各种物品,例如线上商超场景下可以展示服装、耳钉、帽子、手提包等商品。但是,在有多个3d物品需要展示的情况下,若在同一个页面同时加载多个3d模型,可能需要较长的加载时间,且加载时间和用户终端的配置相关。因此,在实际的人机交互中,往往先设置物品3d模型的2d预览图展示界面,用户通过此界面选择物品对应的2d预览图,点击触发进入对应的3d模型展示界面。这样,单次展示单个3d物品,可以减轻用户终端的数据加载压力。
2、如此,2d预览图展示界面上的物品展示清晰度、真实性等,直接影响着用户体验,是值得研究的技术问题。
技术实现思路
1、本说明书一个或多个实施例描述了一种渲染三维模型的二维图像的方法及装置,用以解决
技术介绍
提到的一个或多个问题。
2、根据第一方面,提供一种渲染三维模型的二维图像的方法,包括:获取当前三维模型的尺寸、坐标,以及光照信息;根据所述尺寸和坐标,确定对所述当前三维模型采集图像的虚拟相机的相机参数和位置信息;利用所述虚拟相机的相机参数和位置信息,通过逆向的光线追踪方式,确定三维模型基于所述光照信息
3、在一个实施例中,所述当前三维模型的坐标为其中心点坐标,所述获取当前三维模型的尺寸、坐标,以及光照信息包括:获取当前三维模型在预定坐标系内各个方向上的边界坐标;基于各个坐标轴方向上的边界点的坐标均值,确定所述当前三维模型的坐标。
4、在一个实施例中,所述光照信息包括光源类型、光源属性、光源强度中的至少一项,所述光源类型由用户从以下项中选择:环境光、太阳光、自发光,光源属性包括光源位置、发光属性中的至少一项。
5、在一个实施例中,所述相机参数包括焦距f,所述位置信息包括三维模型与虚拟相机中心点之间的第一距离u,所述根据所述尺寸和坐标,确定对所述当前三维模型采集图像的虚拟相机的相机参数和位置信息包括:设置所述虚拟相机的焦距和第一距离u使其满足以下条件:第二距离v与所述第一距离u之间的比值为预定值,其中,第二距离v为成像位置与虚拟相机中心点之间的距离;所述第一距离u的倒数与所述第二距离v的倒数之和为所述焦距f的倒数。
6、在一个实施例中,所述利用所述虚拟相机的相机参数和位置信息,通过逆向的光线追踪方式,确定三维模型基于所述光照信息的色彩分布数据包括:利用所述虚拟相机的相机参数和位置信息,确定图像网格的位置,所述图像网格与虚拟相机所对应的虚拟图像关于虚拟相机呈中心对称,且所述图像网格中的各个网格单元分别与所述虚拟图像的各个像素相对应;将所述虚拟相机的中心点作为虚拟点光源,对虚拟点光源经由所述图像网格中的各个网格单元的光线在三维模型反射的光路进行模拟;根据所述光路是否经过所述光源所在位置的模拟结果,确定三维模型在所述光源照射下在各个网格单元上的色彩分布数据。
7、在一个进一步的实施例中,所述根据所述光路是否经过所述光源所在位置的模拟结果,确定三维模型在所述光源照射下在所述图像网格中的各个网格单元上的色彩分布数据包括:针对所述图像网格中的单个网格单元,对相关的各个光路中在预定反射次数内或预定传播距离内经过所述光源的有效光线进行统计;根据统计结果确定所述单个网格单元的色彩数据。
8、在一个实施例中,所述色彩分布数据包括光强,所述根据统计结果确定所述单个网格单元的色彩数据包括:确定所述单个网格单元的亮度与所述单个网格单元对应的光强正相关,所述单个网格单元对应的光强为其相应的各个有效光线的光强之和,单个有效光线对应的光强与经过所述光源所需的反射次数负相关。
9、根据第二方面,提供一种渲染三维模型的二维图像的装置,包括:
10、信息采集单元,配置为获取当前三维模型的尺寸、坐标,以及光照信息;
11、相机设置单元,配置为根据所述尺寸和坐标,确定对所述当前三维模型采集图像的虚拟相机的相机参数和位置信息;
12、光路追踪单元,配置为利用所述虚拟相机的相机参数和位置信息,通过逆向的光线追踪方式,确定三维模型基于所述光照信息的色彩分布数据;
13、图像渲染单元,配置为根据所述色彩分布数据渲染三维模型的二维图像。
14、根据第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面所述的方法。
15、根据第四方面,提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面所述的方法。
16、通过本说明书实施例提供的方法和装置,基于展示3d场景时先展示2d图像作为预览图的构思,为3d场景中的三维模型渲染二维图像。在渲染图像过程中,对于用户提供的三维模型,可以自动检测其尺寸、坐标,并可以由用户设置光照信息,之后,自动确定对当前三维模型采集图像的虚拟相机的相机参数和位置信息,并利用虚拟相机的相机参数和位置信息,通过逆向的光线追踪方式,确定三维模型基于光照信息的色彩分布数据,以根据色彩分布数据渲染三维模型的二维图像。该技术构思可以实现全自动的渲染流程,结合光线追踪算法,使得预览图中的3d模型更加符合物理常识,并接近人类肉眼所视结果,具有更加清晰、真实的展示效果。
本文档来自技高网...【技术保护点】
1.一种渲染三维模型的二维图像的方法,包括:
2.如权利要求1所述的方法,其中,所述当前三维模型的坐标为其中心点坐标,所述获取当前三维模型的尺寸、坐标,以及光照信息包括:
3.如权利要求1所述的方法,其中,所述光照信息包括光源类型、光源属性、光源强度中的至少一项,所述光源类型由用户从以下项中选择:环境光、太阳光、自发光,光源属性包括光源位置、发光属性中的至少一项。
4.如权利要求1所述的方法,其中,所述相机参数包括焦距f,所述位置信息包括三维模型与虚拟相机中心点之间的第一距离u,所述根据所述尺寸和坐标,确定对所述当前三维模型采集图像的虚拟相机的相机参数和位置信息包括:
5.如权利要求1所述的方法,其中,所述利用所述虚拟相机的相机参数和位置信息,通过逆向的光线追踪方式,确定三维模型基于所述光照信息的色彩分布数据包括:
6.如权利要求5所述的方法,其中,所述根据所述光路是否经过所述光源所在位置的模拟结果,确定三维模型在所述光源照射下在所述图像网格中的各个网格单元上的色彩分布数据包括:
7.如权利要求6所述的方法,
8.一种渲染三维模型的二维图像的装置,包括:
9.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-7中任一项的所述的方法。
10.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-7中任一项所述的方法。
...【技术特征摘要】
1.一种渲染三维模型的二维图像的方法,包括:
2.如权利要求1所述的方法,其中,所述当前三维模型的坐标为其中心点坐标,所述获取当前三维模型的尺寸、坐标,以及光照信息包括:
3.如权利要求1所述的方法,其中,所述光照信息包括光源类型、光源属性、光源强度中的至少一项,所述光源类型由用户从以下项中选择:环境光、太阳光、自发光,光源属性包括光源位置、发光属性中的至少一项。
4.如权利要求1所述的方法,其中,所述相机参数包括焦距f,所述位置信息包括三维模型与虚拟相机中心点之间的第一距离u,所述根据所述尺寸和坐标,确定对所述当前三维模型采集图像的虚拟相机的相机参数和位置信息包括:
5.如权利要求1所述的方法,其中,所述利用所述虚拟相机的相机参数和位置信息,通过逆向的光线追踪方式,...
【专利技术属性】
技术研发人员:陈沛,
申请(专利权)人:支付宝杭州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。