一种实体渲染方法、装置、电子设备及存储介质与流程

文档序号:37355920发布日期:2024-03-18 18:40阅读:20来源:国知局
一种实体渲染方法、装置、电子设备及存储介质与流程

本发明涉及三维,特别是涉及一种实体渲染方法、装置、电子设备及存储介质。


背景技术:

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、根据融合后的网格数据中的各个顶点对应的目标纹理坐标,将所述融合贴图映射至所述初始实体,得到关于所述多个目标静态实体的融合实体;

24、其中,融合后的网格数据中的任一顶点对应的目标纹理坐标的确定方式,包括:

25、针对该顶点对应的目标静态实体的贴图,确定该贴图在所述融合贴图中的偏移信息和缩放信息;其中,该顶点对应的目标静态实体为包含该顶点的网格数据所属的静态实体,所述偏移信息用于表征该贴图在所述融合贴图中的位置,所述缩放信息用于表征该贴图在所述融合贴图中的大小;

26、基于该顶点在所对应的目标静态实体的贴图中的纹理坐标,以及该贴图的偏移信息和缩放信息,确定该顶点在所述融合贴图中的纹理坐标,得到该顶点对应的目标纹理坐标。

27、可选地,所述基于所述融合后的网格数据以及所述融合贴图,渲染生成关于所述多个目标静态实体的融合实体之前,所述方法还包括:

28、基于缩放因子,对所述融合贴图进行缩小,得到待渲染融合贴图;其中,所述缩放因子为基于所述多个目标静态实体的面积以及所述多个目标静态实体的纹理尺寸所得到;

29、所述基于所述融合后的网格数据以及所述融合贴图,渲染生成关于所述多个目标静态实体的融合实体,包括:

30、基于所述融合后的网格数据以及所述待渲染融合贴图,渲染生成关于所述多个目标静态实体的融合实体。

31、可选地,所述确定所述虚拟场景的目标区域中属于同一材质的多个目标静态实体,包括:

32、针对所述虚拟场景中的目标区域,基于材质筛选条件,确定所述目标区域中属于同一材质的多个目标静态实体;

33、其中,所述材质筛选条件包括:第一条件、第二条件以及第三条件,所述第一条件为所对应的贴图的种类相同的条件,所述第二条件为所对应的第一材质参数相同的条件,所述第三条件为所对应的第二材质参数的差异属于差异阈值的条件。

34、可选地,所述目标区域的确定方式,包括:

35、按照轴对齐的方式,对虚拟场景中的初始区域进行划分,针对每次所划分的区域,检测该次所划分的区域是否满足划分停止条件,当检测到满足划分停止条件时,将该次的上一次所划分的区域作为所述目标区域;

36、其中,所述划分停止条件包括:区域大小小于目标范围的条件。

37、可选地,所述利用所述融合实体替换所述虚拟场景中显示的所述多个目标静态实体之后,所述方法还包括:

38、响应于检测到所述目标区域的显示精度不低于所述预定精度阈值,基于所述多个目标静态实体各自对应的网格数据以及贴图,分别渲染生成所述多个目标静态实体,并利用渲染生成的多个目标静态实体,替换所述虚拟场景中显示的所述融合实体。

39、第二方面,本发明实施例提供了一种实体渲染装置,所述装置包括:

40、确定模块,用于针对已渲染完成的虚拟场景,确定所述虚拟场景的目标区域中属于同一材质的多个目标静态实体;

41、第一融合模块,用于基于所述多个目标静态实体之间的位置关系,对所述多个目标静态实体各自的贴图进行融合,得到融合贴图;

42、第二融合模块,用于基于所述多个目标静态实体之间的位置关系,对所述多个目标静态实体各自对应的网格数据进行融合,得到融合后的网格数据;

43、第一渲染模块,用于响应于检测到所述目标区域的显示精度低于预定精度阈值,基于所述融合后的网格数据以及所述融合贴图,渲染生成关于所述多个目标静态实体的融合实体,并利用所述融合实体替换所述虚拟场景中显示的所述多个目标静态实体。

44、第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

45、存储器,用于存放计算机程序;

46、处理器,用于执行存储器上所存放的程序时,实现任一所述的实体渲染方法。

47、第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现任一所述的实体渲染方法。

48、本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的实体渲染方法。

49、本发明实施例有益效果:

50、本发明实施例提供的一种实体渲染方法,针对已渲染完成的虚拟场景,可以先确定虚拟场景的目标区域中属于同一材质的多个目标静态实体;为保证多个目标静态实体之间的位置关系不发生变化,可以基于多个目标静态实体之间的位置关系,将同一材质的目标静态实体各自对应的贴图以及网格数据融合,得到融合贴图以及融合后的网格数据;若目标区域的显示精度低于预定精度阈值,即对目标区域的显示精度要求不高,此时可以利用融合后的网格数据以及融合贴图,渲染生成关于多个目标静态实体的融合实体,并利用融合实体替换虚拟场景中显示的多个目标静态实体,也就是,通过少量的融合实体,替换显示多个目标静态实体,此时,针对绘制指令的调用次数,以及关于融合后的网格数据以及融合贴图的待渲染数据的调用次数较少,可以快速渲染生成融合实体。可见,本发明中通过将实体融合的方式,减少待渲染数据的调用次数,以及减少绘制指令的调用次数,进而可以提高实体的渲染效率。

51、当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1