System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 三维模型的渲染方法、装置、电子设备及存储介质制造方法及图纸_技高网

三维模型的渲染方法、装置、电子设备及存储介质制造方法及图纸

技术编号:40563353 阅读:20 留言:0更新日期:2024-03-05 19:26
本申请公开了一种三维模型的渲染方法、装置、电子设备及存储介质,属于图像处理技术领域。方法包括:获取截面数据集,截面数据集是基于三维模型的各个子模型构建的且包括的截面数据用于指示至少一个子模型的包络框的截面;获取截面数据集中各个截面数据对应的纹理贴图,截面数据对应的纹理贴图是根据截面数据对应的各个子模型的纹理信息确定的;基于截面数据集中各个截面数据和对应的纹理贴图,确定三维模型的渲染结果。由于纹理贴图表示将截面数据对应的各个子模型的纹理信息投影到任一个截面数据指示的截面上的纹理信息,因此,纹理贴图能反应出各个子模型的纹理和形状,使得基于截面数据和对应的纹理贴图进行渲染时可以提高渲染效果。

【技术实现步骤摘要】

本申请实施例涉及图像处理,特别涉及一种三维模型的渲染方法、装置、电子设备及存储介质


技术介绍

1、随着计算机性能的提升和图像处理技术的发展,常常用三维模型来表示物体,例如,用植物的三维模型来表示植物。电子设备可以对三维模型进行渲染,以实现在电影、游戏、工程设计等场景中显示三维模型所表示的物体。

2、相关技术中,需要先建模出物体的三维模型,三维模型包括多个子模型,子模型为带有纹理信息的三角网格,三角网格包括多个三角形。由于三角网格的数据量较大,严重影响了渲染效率,因此,可以通过将至少两个三角形合并成一个三角形的方式来简化三角网格,从而实现对子模型的简化,以便于提高渲染效率。通过渲染简化后的各个子模型,得到三维模型的渲染结果。

3、上述技术中,由于简化了三角网格,导致子模型会出现变形的现象,使得子模型出现变形,从而导致三维模型的渲染效果不佳。


技术实现思路

1、本申请提供了一种三维模型的渲染方法、装置、电子设备及存储介质,可用于解决相关技术中三维模型的渲染效果不佳的问题,所述技术方案包括如下内容。

2、一方面,提供了一种三维模型的渲染方法,所述方法包括:

3、获取截面数据集,所述截面数据集是基于物体的三维模型包括的多个子模型构建得到的,所述子模型表示所述物体的部件,所述子模型的纹理信息表征所述部件的纹理信息,所述截面数据集包括多个截面数据,所述截面数据用于指示至少一个子模型的包络框的截面;

4、获取所述截面数据集中的各个截面数据对应的纹理贴图,任一个截面数据对应的纹理贴图是根据所述任一个截面数据对应的各个子模型的纹理信息确定的,所述任一个截面数据对应的纹理贴图用于表示将所述任一个截面数据对应的各个子模型的纹理信息投影到所述任一个截面数据指示的截面上的纹理信息;

5、基于所述截面数据集中的各个截面数据和对应的纹理贴图,确定所述三维模型的渲染结果。

6、另一方面,提供了一种三维模型的渲染装置,所述装置包括:

7、获取模块,用于获取截面数据集,所述截面数据集是基于物体的三维模型包括的多个子模型构建得到的,所述子模型表示所述物体的部件,所述子模型的纹理信息表征所述部件的纹理信息,所述截面数据集包括多个截面数据,所述截面数据用于指示至少一个子模型的包络框的截面;

8、所述获取模块,还用于获取所述截面数据集中的各个截面数据对应的纹理贴图,任一个截面数据对应的纹理贴图是根据所述任一个截面数据对应的各个子模型的纹理信息确定的,所述任一个截面数据对应的纹理贴图用于表示将所述任一个截面数据对应的各个子模型的纹理信息投影到所述任一个截面数据指示的截面上的纹理信息;

9、所述确定模块,用于基于所述截面数据集中的各个截面数据和对应的纹理贴图,确定所述三维模型的渲染结果。

10、在一种可能的实现方式中,所述截面数据集包括至少两个层级的数据集,任一个层级的数据集包括至少一个截面数据,上一层级的一个截面数据对应下一层级的至少一个截面数据;

11、所述确定模块,还用于基于下一层级的数据集确定上一层级的数据集,所述下一层级为所述至少两个层级中的最低层级时,所述下一层级的数据集基于所述三维模型中的各个子模型对应的截面数据确定;响应于满足设定条件,基于各个层级的数据集得到所述截面数据集。

12、在一种可能的实现方式中,所述确定模块,还用于确定所述三维模型中的基本子模型,所述基本子模型是所述三维模型中的任意一个子模型;确定从所述基本子模型变换到其他子模型的变换信息,所述其他子模型是所述三维模型中除所述基本子模型之外的任意一个子模型;确定所述基本子模型对应的截面数据;基于所述基本子模型对应的截面数据和所述变换信息,确定所述其他子模型对应的截面数据。

13、在一种可能的实现方式中,所述确定模块,用于根据所述三维模型中各个子模型的纹理信息,将所述三维模型中的各个子模型分为至少一个类别;对于任一个类别,从所述任一个类别的各个子模型中选择任一个子模型作为所述任一个类别的基本子模型;确定从所述任一个类别的基本子模型变换到所述任一个类别的其他子模型的变换信息,所述任一个类别的其他子模型是所述任一个类别中除所述任一个类别的基本子模型之外的子模型。

14、在一种可能的实现方式中,所述确定模块,用于确定所述任一个类别的基本子模型的第一包络框;确定所述任一个类别的其他子模型的第二包络框;基于所述第一包络框和所述第二包络框,确定从所述任一个类别的基本子模型变换到所述任一个类别的其他子模型的变换信息。

15、在一种可能的实现方式中,所述确定模块,用于对于所述下一层级的数据集中的任两个截面数据,若所述任两个截面数据满足聚合条件,则基于所述任两个截面数据对应的子模型,确定所述任两个截面数据对应的截面数据;若候选数据集中截面数据的数量小于参考数量,则将所述候选数据集作为上一层级的数据集,所述候选数据集中包括满足所述聚合条件的任两个截面数据对应的截面数据和不满足所述聚合条件的截面数据。

16、在一种可能的实现方式中,所述任两个截面数据满足聚合条件包括以下至少一项:

17、所述任两个截面数据指示的截面之间的距离小于距离阈值;

18、所述任两个截面数据指示的截面之间的法向量夹角小于夹角阈值。

19、在一种可能的实现方式中,所述确定模块,还用于若所述候选数据集中截面数据的数量不小于所述参考数量,则将所述候选数据集作为所述下一层级的数据集,循环执行所述若所述任两个截面数据满足聚合条件,则基于所述任两个截面数据对应的子模型,确定所述任两个截面数据对应的截面数据,直至所述候选数据集中截面数据的数量小于所述参考数量,将所述候选数据集作为所述上一层级的数据集。

20、在一种可能的实现方式中,所述确定模块,还用于响应于不满足所述设定条件,将所述上一层级的数据集作为下一层级的数据集,循环执行所述基于所述下一层级的数据集确定上一层级的数据集,直至满足所述设定条件,基于各个层级的数据集得到所述截面数据集。

21、在一种可能的实现方式中,所述确定模块,还用于对于所述任一个截面数据对应的任一个子模型,将所述任一个子模型的纹理信息投影到所述任一个截面数据指示的截面上,得到所述任一个子模型的纹理贴图;将所述任一个截面数据对应的各个子模型的纹理贴图进行融合,得到所述任一个截面数据对应的纹理贴图。

22、在一种可能的实现方式中,所述截面数据集包括至少两个层级的数据集,任一个层级的数据集包括至少一个截面数据,上一层级的一个截面数据对应下一层级的至少一个截面数据;

23、所述确定模块,用于对于上一层级的任一个截面数据,若所述任一个截面数据满足第一渲染条件和第二渲染条件,根据所述任一个截面数据对应的纹理贴图对所述任一个截面数据进行渲染,得到所述任一个截面数据的渲染结果;若所述上一层级满足所述第一渲染条件的各个截面数据均满足所述第二渲染条件,则基本文档来自技高网...

【技术保护点】

1.一种三维模型的渲染方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述截面数据集包括至少两个层级的数据集,任一个层级的数据集包括至少一个截面数据,上一层级的一个截面数据对应下一层级的至少一个截面数据;

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,所述确定所述三维模型中的基本子模型,包括:

5.根据权利要求4所述的方法,其特征在于,所述确定从所述任一个类别的基本子模型变换到所述任一个类别的其他子模型的变换信息,包括:

6.根据权利要求2所述的方法,其特征在于,所述基于下一层级的数据集确定上一层级的数据集,包括:

7.根据权利要求6所述的方法,其特征在于,所述任两个截面数据满足聚合条件包括以下至少一项:

8.根据权利要求6所述的方法,其特征在于,所述方法还包括:

9.根据权利要求2所述的方法,其特征在于,所述方法还包括:

10.根据权利要求1所述的方法,其特征在于,所述获取所述截面数据集中的各个截面数据对应的纹理贴图之前,还包括:

11.根据权利要求1所述的方法,其特征在于,所述截面数据集包括至少两个层级的数据集,任一个层级的数据集包括至少一个截面数据,上一层级的一个截面数据对应下一层级的至少一个截面数据;

12.根据权利要求11所述的方法,其特征在于,所述方法还包括:

13.根据权利要求11所述的方法,其特征在于,所述方法还包括:

14.根据权利要求13所述的方法,其特征在于,所述获取所述目标截面数据对应的目标子模型,包括:

15.根据权利要求14所述的方法,其特征在于,所述变换信息包括平移信息、缩放信息、旋转信息中的至少一项。

16.根据权利要求11至13中的任一项所述的方法,其特征在于,所述任一个截面数据满足所述第一渲染条件包括所述任一个截面数据指示的截面在视图截锥内;

17.一种三维模型的渲染装置,其特征在于,所述装置包括:

18.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述电子设备实现如权利要求1至16任一所述的三维模型的渲染方法。

19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使电子设备实现如权利要求1至16任一所述的三维模型的渲染方法。

20.一种计算机程序产品,其特征在于,所述计算机程序产品中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使电子设备实现如权利要求1至16任一所述的三维模型的渲染方法。

...

【技术特征摘要】

1.一种三维模型的渲染方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述截面数据集包括至少两个层级的数据集,任一个层级的数据集包括至少一个截面数据,上一层级的一个截面数据对应下一层级的至少一个截面数据;

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,所述确定所述三维模型中的基本子模型,包括:

5.根据权利要求4所述的方法,其特征在于,所述确定从所述任一个类别的基本子模型变换到所述任一个类别的其他子模型的变换信息,包括:

6.根据权利要求2所述的方法,其特征在于,所述基于下一层级的数据集确定上一层级的数据集,包括:

7.根据权利要求6所述的方法,其特征在于,所述任两个截面数据满足聚合条件包括以下至少一项:

8.根据权利要求6所述的方法,其特征在于,所述方法还包括:

9.根据权利要求2所述的方法,其特征在于,所述方法还包括:

10.根据权利要求1所述的方法,其特征在于,所述获取所述截面数据集中的各个截面数据对应的纹理贴图之前,还包括:

11.根据权利要求1所述的方法,其特征在于,所述截面数据集包括至少两个层级的数据集,任一个层级的数据集包括至少一个截面数据,上一层级的一个截面数据对应下一层级的至少一个截面数据;

...

【专利技术属性】
技术研发人员:邵岳伟胡译心詹金钊
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1