图像渲染方法及装置、电子设备、存储介质制造方法及图纸

技术编号:34722030 阅读:7 留言:0更新日期:2022-08-31 18:07
本申请提供了一种图像渲染方法及装置、电子设备、存储介质,其中,方法包括:获取待渲染图像中所有批次的初始渲染顺序;查找贴图信息相同的第一批次和第二批次,并获取两者之间的第一中间批次;若第二批次与第一中间批次互不覆盖,则调整第二批次的渲染顺序,以使第二批次与第一批次连续,得到第一渲染顺序;在第一渲染顺序连续且贴图信息相同的批次中,查找材质信息相同的第三批次和第四批次,并获取两者之间的第二中间批次;若第四批次与第二中间批次互不覆盖,或第二中间批次不存在时,则将第四批次和第三批次合并成一个批次;可以实现在不影响待渲染图像的原始效果的情况下,有效减少渲染批次,增加渲染过程中从缓存中读取贴图信息的命中率。信息的命中率。信息的命中率。

【技术实现步骤摘要】
图像渲染方法及装置、电子设备、存储介质


[0001]本申请涉及计算机
,特别是涉及图像渲染方法及装置、电子设备、存储介质。

技术介绍

[0002]H5游戏是指移动端的网页游戏,无需下载游戏包体,移动端在联网状态下可以实现在移动端浏览器中直接玩游戏,是当前市面上较为流行的游戏类型。
[0003]实现H5游戏即点即玩的特点的基础之一在于游戏画面的流畅性,流畅性要求生成图像帧的速度达到一定要求。每一帧图像中包含多个不同控件,因此,生成一帧图像的过程就是渲染图像中多个控件的过程。一般地,一个控件对应一个渲染批次,每处理一个批次就要提交一个渲染请求,渲染的批次多的话,难以保证每个批次都及时被处理,一旦不能及时处理,就会造成画面的卡顿,因此,减少渲染批次的数量,以及提高单批次的渲染效率是提高渲染性能的方法,同时也是提高画面流畅性的方法。
[0004]现有技术中,提高渲染性能的方式一般有三种,第一种是通过合并连续相同材质批次的方式来减少渲染批次,但实际上连续相同材质的批次出现的情况比较少,因此,该方法产生的实际效果并不理想。第二种是将所有批次的贴图合成一张,以减少渲染批次,但实际上,界面复杂多变,采用贴图合成的方式,不仅难以满足实际需求,还需要人工干预,制作要求高、成本高;第三种是动态地合并批次,即对两个材质相同的批次A与B,判断该两个批次中间的所有批次是否与批次B有覆盖关系,如果没有,则合并AB两个批次,以减少渲染批次。虽然与第一种方式相比,第三种方式减少渲染批次的效果更佳;与第二种方式相比,第三种方式可以适用的场景范围更大。但是,第三种方式只是从减少渲染批次的角度来考虑,不能提高单批次的渲染效率,所以效果还是不够理想。并且,第三种方式在判断两个批次是否有覆盖关系的过程中,使用的是批次的贴图信息,也就是贴图尺寸,而实际上,贴图尺寸一般比贴图可视区域大,使用贴图尺寸判断两个批次是否有覆盖关系会增大判断结果为覆盖概率,也会对批次的合并造成影响。
[0005]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0006]鉴于上述问题,提出了本申请以便提供克服上述问题或者至少部分地解决上述问题的图像渲染方法及装置、电子设备、存储介质,包括:
[0007]一种图像渲染方法,所述方法包括:
[0008]获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;
[0009]在所述所有批次中查找贴图信息相同的第一批次和第二批次,并根据所述初始渲染顺序,获取所述第一批次和第二批次之间的第一中间批次;
[0010]判断所述第二批次与所述第一中间批次是否相互覆盖,若所述第二批次与所述第一中间批次互不覆盖,则调整所述第二批次的渲染顺序,以使所述第二批次的渲染顺序与所述第一批次的渲染顺序连续,并更新所述初始渲染顺序,得到第一渲染顺序;
[0011]在所述第一渲染顺序连续且贴图信息相同的批次中,查找材质信息相同的第三批次和第四批次,并获取所述第三批次和第四批次之间的第二中间批次;
[0012]若所述第四批次与所述第二中间批次互不覆盖,或获取不到所述第二中间批次,则将所述第四批次和所述第三批次合并成一个批次。
[0013]一种图像渲染方法,所述方法包括:
[0014]获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;
[0015]在所述所有批次中查找材质信息相同的第五批次和第六批次,并根据所述初始渲染顺序,获取所述第五批次和第六批次之间的第三中间批次;
[0016]若所述第六批次与所述第三中间批次互不覆盖,或获取不到所述第三中间批次,则将所述第六批次和所述第五批次合并成一个批次,并更新所述初始渲染顺序,得到第三渲染顺序;
[0017]在所述第三渲染顺序对应的所有批次中查找贴图信息相同的第七批次和第八批次,并根据所述第三渲染顺序,获取所述第七批次和所述第八批次之间的第四中间批次;
[0018]若所述第八批次与所述第四中间批次互不覆盖,则调整所述第八批次的渲染顺序,以使所述第八批次的渲染顺序与所述第七批次的渲染顺序连续。
[0019]一种图像渲染方法,所述方法包括:
[0020]获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;所述贴图信息包括有效像素区域和无效像素区域;
[0021]在所述所有批次中查找材质信息相同的第九批次和第十批次,并根据所述初始渲染顺序,获取所述第九批次和第十批次之间的第五中间批次;
[0022]根据所述第十批次的贴图信息中的有效像素区域和所述第五中间批次的贴图信息中的有效像素区域判断所述第十批次与所述第五中间批次是否相互覆盖;
[0023]若所述第十批次与所述第五中间批次互不覆盖,或获取不到所述第五中间批次,则将所述第十批次与所述第九批次合并成一个批次。
[0024]一种图像渲染装置,所述装置包括:
[0025]第一获取模块,用于获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;
[0026]第二获取模块,用于在所述所有批次中查找贴图信息相同的第一批次和第二批次,并根据所述初始渲染顺序,获取所述第一批次和第二批次之间的第一中间批次;
[0027]第一调整模块,用于若所述第二批次与所述第一中间批次互不覆盖,则调整所述第二批次的渲染顺序,以使所述第二批次的渲染顺序与所述第一批次的渲染顺序连续,并更新所述初始渲染顺序,得到第一渲染顺序;
[0028]第三获取模块,用于在所述第一渲染顺序连续且贴图信息相同的批次中,查找材质信息相同的第三批次和第四批次,并获取所述第三批次和第四批次之间的第二中间批次;
[0029]第一合并模块,用于若所述第四批次与所述第二中间批次互不覆盖,或获取不到所述第二中间批次,则将所述第四批次和所述第三批次合并成一个批次。
[0030]一种图像渲染装置,所述装置包括:
[0031]第四获取模块,用于获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;
[0032]第五获取模块,用于在所述所有批次中查找材质信息相同的第五批次和第六批次,并根据所述初始渲染顺序,获取所述第五批次和第六批次之间的第三中间批次;
[0033]第二合并模块,用于若所述第六批次与所述第三中间批次互不覆盖,或获取不到所述第三中间批次,则将所述第六批次和所述第五批次合并成一个批次,并更新所述初始渲染顺序,得到第三渲染顺序;
[0034]第六获取模块,用于在所述第三渲染顺序对应的所有批次中查找贴图信息相同的第七批次和第八批次,并根据所述第三渲染顺序,获取所述第七批次和所述第八批次之间的第四中间批次;
[0035]第二调整模块,用于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图像渲染方法,其特征在于,所述方法包括:获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;在所述所有批次中查找贴图信息相同的第一批次和第二批次,并根据所述初始渲染顺序,获取所述第一批次和第二批次之间的第一中间批次;判断所述第二批次与所述第一中间批次是否相互覆盖,若所述第二批次与所述第一中间批次互不覆盖,则调整所述第二批次的渲染顺序,以使所述第二批次的渲染顺序与所述第一批次的渲染顺序连续,并更新所述初始渲染顺序,得到第一渲染顺序;在所述第一渲染顺序连续且贴图信息相同的批次中,查找材质信息相同的第三批次和第四批次,并获取所述第三批次和第四批次之间的第二中间批次;若所述第四批次与所述第二中间批次互不覆盖,或获取不到所述第二中间批次,则将所述第四批次和所述第三批次合并成一个批次。2.根据权利要求1所述的方法,其特征在于,所述贴图信息包括有效像素区域和无效像素区域,所述判断所述第二批次与所述第一中间批次是否相互覆盖,包括:根据所述第二批次的贴图信息中的有效像素区域确定所述第二批次的包围盒,以及,根据所述第一中间批次的贴图信息中的有效像素区域确定所述第一中间批次的包围盒;判断所述第二批次的包围盒和所述第一中间批次的包围盒是否存在重叠;若存在重叠,则判定所述第二批次与所述第一中间批次相互覆盖;若不存在重叠,则判定所述第二批次与所述第一中间批次互不覆盖。3.根据权利要求1所述的方法,其特征在于,在所述将所述第四批次和所述第三批次合并成一个批次之后,所述方法还包括:更新所述第一渲染顺序,得到第二渲染顺序;对所述第二渲染顺序中的各批次依次进行渲染,其中,对于贴图信息相同且渲染顺序连续的批次,在对渲染顺序在后的批次进行渲染时,从缓存中获取所述渲染顺序在后的批次所需的贴图信息。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:获取所述待渲染图像中各个批次的贴图信息中的所有像素点数据;根据所述像素点数据中的Alpha值判断所述像素点数据是否为有效像素点;根据判定出的有效像素点确定对应贴图信息的有效像素区域。5.根据权利要求1所述的方法,其特征在于,在所述所有批次中查找贴图信息相同的第一批次和第二批次,包括:根据渲染顺序在前的第一批次,查找渲染顺序在后且与所述第一批次的贴图信息相同的第二批次,或者,根据渲染顺序在后的第一批次,查找渲染顺序在前且与所述第一批次的贴图信息相同的第二批次。6.一种图像渲染方法,其特征在于,所述方法包括:获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;在所述所有批次中查找材质信息相同的第五批次和第六批次,并根据所述初始渲染顺
序,获取所述第五批次和第六批次之间的第三中间批次;若所述第六批次与所述第三中间批次互不覆盖,或获取不到所述第三中间批次,则将所述第六批次和所述第五批次合并成一个批次,并更新所述初始渲染顺序,得到第三渲染顺序;在所述第三渲染顺序对应的所有批次中查找贴图信息相同的第七批次和第八批次,并根据所述第三渲染顺序,获取所述第七批次和所述第八批次之间的第四中间批次;若所述第八批次与所述第四中间批次互不覆盖,则调整所述第八批次的渲染顺序,以使所述第八批次的渲染顺序与所述第七批次的渲染顺序连续。7.一种图像渲染方法,其特征在于,所述方法包括:获取待渲染图像中所有批次的初始渲染顺序,以及所有批次的材质信息,所述材质信息包括贴图信息;所述贴图信息包括有效像素区域和无效像素区域;在所...

【专利技术属性】
技术研发人员:张光俊
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

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

1