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

文档序号:36041835发布日期:2023-11-17 17:53阅读:33来源:国知局
一种渲染的方法、装置、存储介质及电子设备与流程

本申请涉及渲染,具体而言,涉及一种渲染的方法、装置、存储介质及电子设备。


背景技术:

1、渲染是cg的最后一道工序(除了后期制作)也是最终使图像符合3d场景的阶段。

2、目前,在渲染过程中,由于收集器和管线描述对象耦合,需要在热加载后查询到新的管线描述。也就是说用户需要修改渲染效果时需要重新启动编辑器进行处理,操作便捷性不足。

3、因此,如何提供一种既能高效渲染又能兼顾用户操作的便捷性的方法的技术方案成为亟需解决的技术问题。


技术实现思路

1、本申请的一些实施例的目的在于提供一种渲染的方法、装置、存储介质及电子设备,通过本申请的实施例的技术方案可以在提升渲染效率的同时提升用户操作的便捷性。

2、第一方面,本申请的一些实施例提供了一种渲染的方法,包括:通过待渲染实例的材质模板,获取与所述待渲染实例相对应的管线描述和管线描述id;基于所述待渲染实例的渲染方式,确定渲染批次类型和渲染组名称;根据所述管线描述id、所述渲染组名称和渲染排序值,获取渲染槽;按照所述渲染排序值对所述渲染槽中的所述待渲染实例进行渲染。

3、本申请的一些实施例通过待渲染实例的材质模板获取管线描述和管线描述id,然后在确定渲染批次类型和渲染组名称后,通过管线描述id、渲染组名称和渲染排序值获取渲染槽,最后按照渲染排序值对渲染槽的待渲染实例进行渲染。本申请的一些实施例通过管线描述id区分正在使用的管线描述是否为与管线描述id对应的最新的管线描述,可以支持热更新,同时设定渲染排序值可以实现渲染次序排序,满足业务需求;另外,通过渲染槽可以将相同管线描述的渲染实例合并在同一渲染槽进行渲染,提升渲染效率。

4、在一些实施例,所述材质模板是从源材质中选取的,所述渲染排序值按照从高到低的优先级顺序依次包括:渲染实例序号、材质模板序号和源材质序号。

5、本申请的一些实施例通过设定渲染排序值的优先级进行渲染,灵活性较高。

6、在一些实施例,所述根据所述管线描述id、所述渲染组名称和渲染排序值,获取渲染槽,包括:确认收集器中存在与所述管线描述id、所述渲染组名称和所述渲染排序值相匹配的所述渲染槽,则提取所述渲染槽;确认收集器中不存在与所述管线描述id、所述渲染组名称和所述渲染排序值相匹配的所述渲染槽,则创建所述渲染槽。

7、本申请的一些实施例通过确认收集器中是否存在与管线描述id、渲染组名称和渲染排序值相匹配的渲染槽,可以实现对渲染槽的有效获取。

8、在一些实施例,在所述创建所述渲染槽之前,所述方法还包括:确认所述收集器中存储的第二结构体中存在渲染组结构以及所述渲染组结构中存在所述渲染排序值;或者,确认所述第二结构体中只存在所述渲染组结构,则在所述第二结构体中创建渲染排序结构和渲染槽结构,所述渲染槽结构插入到所述渲染排序结构中,所述渲染槽结构用于存储渲染实例,所述渲染排序结构用于存储所述渲染排序值。

9、本申请的一些实施例通过对收集器中存储的与渲染槽相关的信息进行确认和填充,提升后续渲染槽的查找速度。

10、在一些实施例,所述创建所述渲染槽,包括:基于所述管线描述创建所述渲染槽,并在所述收集器中存储与所述渲染槽对应的第一结构体和所述第二结构体,其中,所述第一结构体包括:所述管线描述id、所述渲染组名称和所述渲染排序值与所述渲染槽的对应关系,一个渲染组内至少包括一个渲染槽,一个渲染槽对应一个管线描述,一个管线描述对应至少一个渲染实例。

11、本申请的一些实施例通过管线描述创建对应的渲染槽,并按照第一结构体和第二结构体的方式存储在收集器中,为后续渲染提供有效的数据支持。

12、在一些实施例,所述渲染组名称对应的渲染组中有多个渲染槽,其中,所述按照所述渲染排序值对所述渲染槽中的所述待渲染实例进行渲染,包括:按照所述渲染排序值对所述多个渲染槽进行遍历,得到当前需处理的所述渲染槽;确认所述待渲染实例已提交至对应的所述渲染槽,其中,所述待渲染实例为多个;对所述多个待渲染实例进行遍历渲染。

13、本申请的一些实施例通过对多个渲染槽进行遍历后再对渲染槽内的待渲染实例按照渲染排序值进行遍历渲染,灵活性较高,容易满足业务需求。

14、在一些实施例,所述基于所述待渲染实例的渲染方式,确定渲染批次类型和渲染组名称,包括:获取所述渲染方式与所述渲染批次类型、所述渲染组名称的映射表;从所述映射表中确定与所述渲染方式对应的所述渲染批次类型和所述渲染组名称。

15、本申请的一些实施例通过映射表可以确定渲染方式对应的渲染批次类型和渲染组名称,无需修改代码,便于维护。

16、第二方面,本申请的一些实施例提供了一种渲染的装置,包括:第一获取模块,用于通过待渲染实例的材质模板,获取与所述待渲染实例相对应的管线描述和管线描述id;确定模块,用于基于所述待渲染实例的渲染方式,确定渲染批次类型和渲染组名称;第二获取模块,用于根据所述管线描述id、所述渲染组名称和渲染排序值,获取渲染槽;渲染模块,用于按照所述渲染排序值对所述渲染槽中的所述待渲染实例进行渲染。

17、第三方面,本申请的一些实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时可实现如第一方面任一实施例所述的方法。

18、第四方面,本申请的一些实施例提供一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时可实现如第一方面任一实施例所述的方法。

19、第五方面,本申请的一些实施例提供一种计算机程序产品,所述的计算机程序产品包括计算机程序,其中,所述的计算机程序被处理器执行时可实现如第一方面任一实施例所述的方法。



技术特征:

1.一种渲染的方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,所述材质模板是从源材质中选取的,所述渲染排序值按照从高到低的优先级顺序依次包括:渲染实例序号、材质模板序号和源材质序号。

3.如权利要求1或2所述的方法,其特征在于,所述根据所述管线描述id、所述渲染组名称和渲染排序值,获取渲染槽,包括:

4.如权利要求3所述的方法,其特征在于,在所述创建所述渲染槽之前,所述方法还包括:

5.如权利要求4所述的方法,其特征在于,所述创建所述渲染槽,包括:

6.如权利要求1或2所述的方法,其特征在于,所述渲染组名称对应的渲染组中有多个渲染槽,其中,所述按照所述渲染排序值对所述渲染槽中的所述待渲染实例进行渲染,包括:

7.如权利要求1或2所述的方法,其特征在于,所述基于所述待渲染实例的渲染方式,确定渲染批次类型和渲染组名称,包括:

8.一种渲染的装置,其特征在于,包括:

9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,其中,所述计算机程序被处理器运行时执行如权利要求1-7中任意一项权利要求所述的方法。

10.一种电子设备,其特征在于,包括存储器、处理器以及存储在所述存储器上并在所述处理器上运行的计算机程序,其中,所述计算机程序被所述处理器运行时执行如权利要求1-7中任意一项权利要求所述的方法。


技术总结
本申请的一些实施例提供了一种渲染的方法、装置、存储介质及电子设备,该方法包括:通过待渲染实例的材质模板,获取与所述待渲染实例相对应的管线描述和管线描述ID;基于所述待渲染实例的渲染方式,确定渲染批次类型和渲染组名称;根据所述管线描述ID、所述渲染组名称和渲染排序值,获取渲染槽;按照所述渲染排序值对所述渲染槽中的所述待渲染实例进行渲染。本申请的一些实施例可以在支持热加载的同时,提升渲染效率。

技术研发人员:汪成峰,胡梓楠,冯星,崔铭,方顺
受保护的技术使用者:北京渲光科技有限公司
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1