特效优化方法、装置、存储介质及程序产品制造方法及图纸

技术编号:38260465 阅读:12 留言:0更新日期:2023-07-27 10:21
本申请涉及一种特效优化方法、装置、存储介质及程序产品,所述方法包括:获取渲染指令并识别所述渲染指令的用途;在所述渲染指令用于获得多帧图像、且所述多帧图像包括特效纹理时,选取所述多帧图像中的相邻两帧图像,识别所述相邻两帧图像的特效纹理的相似度;确定所述相似度满足条件时,将所述相邻两帧图像中的后一帧图像的特效纹理作为所述相邻两帧图像的下一帧图像的特效纹理。根据本申请实施例的特效优化方法,能够在图像中的对象无运动或者运动幅度较小的情况下、为每帧图像进行特效相关的渲染时,提升游戏图像帧率、降低游戏功耗。降低游戏功耗。降低游戏功耗。

【技术实现步骤摘要】
特效优化方法、装置、存储介质及程序产品


[0001]本申请涉及图像处理领域,尤其涉及一种特效优化方法、装置、存储介质及程序产品。

技术介绍

[0002]游戏帧率和功耗问题一直是游戏厂商重点关注的难点和重点。为了呈现良好的游戏视觉效果,当前许多流行的3D游戏如原神、崩坏3、NBA2019等,在对游戏需显示的每帧图像做渲染时,通常会设置多个渲染通道用于渲染阴影(shadow)、泛光(bloom)等特效纹理,再基于特效纹理得到每帧图像,在图像中的对象无运动或者运动幅度较小的情况下,为每帧图像都设置多个渲染通道会消耗大量的内存带宽及少量处理器负载,一是导致游戏功耗上升,二是使得游戏帧率下降,影响用户的游戏体验。

技术实现思路

[0003]有鉴于此,本申请提出一种特效优化方法、装置、存储介质及程序产品,根据本申请实施例的特效优化方法,能够在图像中的对象无运动或者运动幅度较小的情况下、为每帧图像进行特效相关的渲染时,提升游戏图像帧率、降低游戏功耗。
[0004]第一方面,本申请的实施例提供了一种特效优化方法,所述方法包括:获取渲染指令并识别所述渲染指令的用途;在所述渲染指令用于获得多帧图像、且所述多帧图像包括特效纹理时,选取所述多帧图像中的相邻两帧图像,识别所述相邻两帧图像的特效纹理的相似度;确定所述相似度满足条件时,将所述相邻两帧图像中的后一帧图像的特效纹理作为所述相邻两帧图像的下一帧图像的特效纹理。
[0005]根据本申请实施例的特效优化方法,通过获取渲染指令并识别渲染指令的用途,可以确定渲染指令是否用于获得多帧图像、且多帧图像是否包括特效纹理,即可以识别确定渲染指令是否是用于渲染特效场景;通过在渲染指令用于获得多帧图像、且多帧图像包括特效纹理时,选取多帧图像中的相邻两帧图像,识别相邻两帧图像的特效纹理的相似度,可以在渲染指令用于渲染特效场景时,对比确定特效纹理的相似程度;通过确定相似度满足条件时,将相邻两帧图像中的后一帧图像的特效纹理作为相邻两帧图像的下一帧图像的特效纹理,使得不采用传统的渲染通道方式,也能得到相邻两帧图像的下一帧图像的特效纹理,可以避免传统的渲染通道方式生成特效纹理时对内存的占用以及对处理器负载的消耗。由于内存的占用、处理器负载的消耗均降低,因此可以在进行特效图像渲染时,提升游戏图像帧率、降低游戏功耗。
[0006]其中,如果游戏的运行帧率未达到终端设备的最大帧率,通过本申请的特效优化方法,能够有效的提高游戏运行帧率,同时可能降低游戏功耗。如果游戏的运行帧率已达到终端设备的最大帧率,通过本申请的特效优化方法,能够有效的降低游戏功耗,从而有效延长终端设备上游戏持续以终端设备的最大帧率运行的时长。
[0007]根据第一方面,在所述特效优化方法的第一种可能的实现方式中,获取渲染指令
并识别所述渲染指令的用途,包括:拦截来自应用程序的所述渲染指令;针对所述渲染指令中的每条指令,分析该条指令的参数、类型及该条指令所处的指令段的语义中的至少一种;根据分析的结果,确定所述渲染指令的用途。
[0008]通过这种方式,可以确定渲染指令是否为用于获得多帧图像、且多帧图像包括特效纹理的指令,从而能确定渲染指令是否是用于渲染特效场景,完成特效场景的识别。并且,渲染指令中有多种数据可供分析确定渲染指令的用途,可以提升确定渲染指令的用途的方式的灵活性。
[0009]根据第一方面,或者第一方面的第一种可能的实现方式,在所述特效优化方法的第二种可能的实现方式中,识别所述相邻两帧图像的特效纹理的相似度,包括:对比确定所述相邻两帧图像的特效纹理的灰度差异值;根据所述灰度差异值确定所述相邻两帧图像的特效纹理的相似度数值。
[0010]特效纹理的灰度值是比较容易获取的,通过这种方式,使得确定相邻两帧图像的特效纹理的相似度的实现方式更简单、使得特效优化方法的效率更高。
[0011]根据第一方面的第二种可能的实现方式,在所述特效优化方法的第三种可能的实现方式中,所述条件包括:所述相邻两帧图像的特效纹理的相似度数值低于第一阈值。
[0012]通过设置相邻两帧图像的特效纹理的相似度数值低于第一阈值的条件,使得相似度满足条件时是可以确定图像中对象是无运动或者运动幅度较低的,从而能保证将相邻两帧图像中的后一帧图像的特效纹理作为相邻两帧图像的下一帧图像的特效纹理,对相邻两帧图像的下一帧图像的准确度的影响很小,进而保证图像渲染的质量。
[0013]根据第一方面,或者以上第一方面的任意一种可能的实现方式,在所述特效优化方法的第四种可能的实现方式中,选取所述多帧图像中的相邻两帧图像,包括:选取所述多帧图像中的前两帧图像作为所述相邻两帧图像。
[0014]通过这种方式,使得多帧图像中能够有机会实现特效纹理复用的图像更多,可以进一步提升特效优化方法提升游戏图像帧率、降低设备功耗的效果。
[0015]根据第一方面,或者以上第一方面的任意一种可能的实现方式,在所述特效优化方法的第五种可能的实现方式中,确定所述相似度满足条件时,所述方法还包括:将所述相邻两帧图像中的后一帧图像的特效纹理采样至显示缓冲区;在所述显示缓冲区中,所述相邻两帧图像中的后一帧图像的特效纹理和所述相邻两帧图像的下一帧图像的主场景纹理用于渲染得到所述相邻两帧图像的下一帧图像。
[0016]通过这种方式,可以在不采用渲染通道得到相邻两帧图像的下一帧图像的特效纹理时,完成相邻两帧图像的下一帧图像的渲染。使得相邻两帧图像的下一帧图像可以正常显示,不影响用户游戏体验。
[0017]根据第一方面,或者以上第一方面的任意一种可能的实现方式,在所述特效优化方法的第六种可能的实现方式中,确定所述相似度满足条件时,所述方法还包括:拦截所述渲染指令中,用于创建渲染通道以获得所述相邻两帧图像的下一帧图像的特效纹理的渲染指令,以使拦截的指令不传递至所述渲染指令的执行对象。
[0018]通过这种方式,一方面可以减少渲染多帧图像的过程中所创建的渲染通道的数量,实现降低内存带宽的效果,另一方面,可以跳过不必要的、重复的、差别微小的与特效纹理的获得相关的绘制命令的提交,实现降低处理器负载的效果。
[0019]根据第一方面,或者以上第一方面的任意一种可能的实现方式,在所述特效优化方法的第七种可能的实现方式中,确定所述相似度不满足条件时,所述方法还包括:重复执行选取所述多帧图像中的相邻两帧图像及之后的步骤;其中,重复执行选取所述多帧图像中的相邻两帧图像的步骤时,以前次选取的相邻两帧图像中的后一帧图像和该相邻两帧图像的下一帧图像作为新选取的相邻两帧图像。
[0020]通过这种方式,使得相似度不满足条件时是可以确定图像中对象是运动幅度较大的,可以继续对后续的图像进行特效纹理相似度比对,直到相似度满足条件时确定图像中对象无运动或者运动幅度较小,再执行特效纹理的复用,进一步保证图像渲染的质量。
[0021]根据第一方面,或者以上第一方面的任意一种可能的实现方式,在所述特效优化方法的第八种可能的实现方式中,所述特效纹本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种特效优化方法,其特征在于,所述方法包括:获取渲染指令并识别所述渲染指令的用途;在所述渲染指令用于获得多帧图像、且所述多帧图像包括特效纹理时,选取所述多帧图像中的相邻两帧图像,识别所述相邻两帧图像的特效纹理的相似度;确定所述相似度满足条件时,将所述相邻两帧图像中的后一帧图像的特效纹理作为所述相邻两帧图像的下一帧图像的特效纹理。2.根据权利要求1所述的方法,其特征在于,获取渲染指令并识别所述渲染指令的用途,包括:拦截来自应用程序的所述渲染指令;针对所述渲染指令中的每条指令,分析该条指令的参数、类型及该条指令所处的指令段的语义中的至少一种;根据分析的结果,确定所述渲染指令的用途。3.根据权利要求1或2所述的方法,其特征在于,识别所述相邻两帧图像的特效纹理的相似度,包括:对比确定所述相邻两帧图像的特效纹理的灰度差异值;根据所述灰度差异值确定所述相邻两帧图像的特效纹理的相似度数值。4.根据权利要求3所述的方法,其特征在于,所述条件包括:所述相邻两帧图像的特效纹理的相似度数值低于第一阈值。5.根据权利要求1

4中任一项所述的方法,其特征在于,选取所述多帧图像中的相邻两帧图像,包括:选取所述多帧图像中的前两帧图像作为所述相邻两帧图像。6.根据权利要求1

5中任一项所述的方法,其特征在于,确定所述相似度满足条件时,所述方法还包括:将所述相邻两帧图像中的后一帧图像的特效纹理采样至显示缓冲区;在所述显示缓冲区中,所述相邻两帧图像中的后一帧图像的特效纹理和所述相邻两帧图像的下一帧图像的主场景纹理用于渲染得到所述相邻两帧图像的下一帧图像。7.根据权利要求1

6中任一项所述的方法,其特征在于,确定所述相似度满足条件时,所述方法还包括:拦截所述渲染指令中,用于创建渲染通道以获得所述相邻两...

【专利技术属性】
技术研发人员:张志博李婷徐良成
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1