System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及图像处理领域,并且更具体地,涉及一种图像渲染方法和电子设备。
技术介绍
1、随着图形处理器(graphics processing unit,gpu)在终端设备上的发展,gpu在终端设备的图像渲染中发挥着重要的作用。例如,渲染指令重组优化以及超帧、超分等这些图像渲染技术都离不开对gpu的使用。
2、现阶段,电子设备通常会通过执行标准图像渲染指令流调用gpu,实现图像渲染功能。应理解,不同的图像渲染功能是通过不同的图像渲染指令流来实现。例如,超分功能对应的图像渲染指令流和超帧功能对应的图像渲染指令流不同。但是,可以理解的是,不同的功能对应的图像渲染指令流会使用部分相同的指令,例如第一指令。在这种情况下,若同时执行两项或以上图像渲染任务,由于在一个指令流中第一指令的参数发生变化,导致执行另一个指令流时,调用了变化后的参数,使得另一个指令流的第一指令调用的参数错误,最终导致图像渲染效果变差。
3、基于此,如何提高图像渲染的效果成为了一个亟待解决的问题。
技术实现思路
1、本申请提供了一种图像渲染方法,能够提高图像渲染的效果。
2、第一方面,提供了一种图像渲染方法,该方法应用于电子设备中,电子设备执行至少两项图像渲染指令流,至少两项图像渲染指令流包括第一指令流和第二指令流,第一指令流中包括第一指令,第二指令流中包括第一指令,包括:
3、在执行第一指令之前,存储第一指令对应的初始参数;
4、在执行第一指令时,从初始参数和第
5、基于第一参数执行第一指令,对待渲染图像进行图像渲染处理,得到渲染后的图像。
6、本申请实施例提供的图像渲染方法,应用于电子设备,该电子设备执行至少两项图像渲染指令流,至少两项图像渲染指令流包括第一指令流和第二指令流,第一指令流中包括第一指令,第二指令流中包括第一指令,该方法包括:在执行第一指令之前,存储第一指令对应的初始参数,在执行第一指令时,从初始参数和第一指令中携带的参数中确定第一指令对应的第一参数,基于第一参数执行第一指令,对待渲染图像进行图像渲染处理,得到渲染后的图像,相当于在电子设备执行两项或以上的图像渲染任务中包括相同的第一指令时,若在先执行的指令流中第一参数被执行后参数发生变化,在后执行的指令流中的第一参数是从初始参数和第一指令中携带的参数之中选择对应的参数,以使在后执行的指令流中的第一指令所调用的参数是正确的参数,防止两项图像渲染任务的资源冲突,保证图像渲染任务结果正确,进而能够提高基于第一指令所得到图像渲染的效果。
7、结合第一方面,在第一方面的某些实施例中,该方法还包括:确定第一指令流和第二指令流是否为预设图像渲染任务对应的指令流;若第一指令流和第二指令流为预设图像渲染任务对应的指令流,在执行第一指令之前,存储第一指令对应的初始参数。
8、本申请实施例提供的图像渲染方法,在执行第一指令之前,先确定第一指令流和第二指令流是否是白名单指令流,若第一指令流和第二指令流是白名单指令流,则存储第一指令对应的初始参数,这样能够降低指令流管理模块中存储的初始参数的数量,进而避免了指令流管理模块中存储过多的初始参数占用系统内存的问题。
9、结合第一方面,在第一方面的某些实施例中,电子设备包括指令流管理模块,指令流管理模块存储初始参数。
10、结合第一方面,在第一方面的某些实施例中,指令流管理模块还用于确定第一指令流和第二指令流是否为预设图像渲染任务对应的指令流。
11、结合第一方面,在第一方面的某些实施例中,指令流管理模块还包括第一子模块,第一子模块用于在执行第一指令之前存储初始参数。
12、其中,第一子模块可以是指local layer模块。
13、结合第一方面,在第一方面的某些实施例中,指令流管理模块还包括第二子模块,第二子模块用于存储第二参数,第二参数为第一指令对应的发往gpu的参数。
14、其中,第二子模块可以是指base layer模块。
15、结合第一方面,在第一方面的某些实施例中,指令流管理模块还包括第三子模块,第三子模块用于向gpu提供外部库接口,该方法还包括:gpu基于第三子模块提供的外部库接口调用外部库中的参数,执行第二指令。
16、其中,第三子模块可以是指callback layer模块。
17、结合第一方面,在第一方面的某些实施例中,指令流管理模块还包括第四子模块,第四子模块用于提供gpu扩展驱动接口,该方法还包括:通过gpu扩展驱动接口驱动gpu扩展驱动,驱动gpu执行第三指令。
18、其中,第四子模块可以是指external layer模块。
19、第二方面,提供了一种图像渲染装置,包括用于执行第一方面中任一种方法的单元。该装置可以是服务器,也可以是终端设备,还可以是终端设备内的芯片。该装置可以包括获取单元和处理单元。
20、当该装置是终端设备时,该处理单元可以是处理器,该获取单元可以是通信接口;该终端设备还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该终端设备执行第一方面中的任一种方法。
21、当该装置是终端设备内的芯片时,该处理单元可以是芯片内部的处理单元,该获取单元可以是输出接口、管脚或电路等;该芯片还可以包括存储器,该存储器可以是该芯片内的存储器(例如,寄存器、缓存等),也可以是位于该芯片外部的存储器(例如,只读存储器、随机存取存储器等);该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该芯片执行第一方面中的任一种方法。
22、在一种可能的实现方式中,存储器用于存储计算机程序代码;处理器,处理器执行该存储器所存储的计算机程序代码,当该存储器存储的计算机程序代码被执行时,该处理器用于执行:在执行第一指令之前,存储第一指令对应的初始参数;在执行第一指令时,从初始参数和第一指令携带的参数中确定第一指令对应的第一参数;基于第一参数执行第一指令,对待渲染图像进行图像渲染处理,得到渲染后的图像。
23、第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被图像渲染装置运行时,使得该图像渲染装置执行第一方面中的任一种图像渲染方法。
24、第四方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被图像渲染装置运行时,使得该图像渲染装置执行第一方面中的任一种装置方法。
25、本申请实施例提供的图像渲染方法和电子设备,该电子设备执行至少两项图像渲染指令流,至少两项图像渲染指令流包括第一指令流和第二指令流,第一指令流中包括第一指令,第二指令流中包括第一指令,该方法包括:在执行第一指令之前,存储第一指令对应的初始参数,在执行第一指令时,从本文档来自技高网...
【技术保护点】
1.一种图像渲染方法,其特征在于,所述方法应用于电子设备中,所述电子设备执行至少两项图像渲染指令流,所述至少两项图像渲染指令流包括第一指令流和第二指令流,所述第一指令流中包括第一指令,所述第二指令流中包括所述第一指令,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述电子设备包括指令流管理模块,所述指令流管理模块存储所述初始参数。
4.根据权利要求3所述的方法,其特征在于,所述指令流管理模块还用于确定所述第一指令流和所述第二指令流是否为预设图像渲染任务对应的指令流。
5.根据权利要求3或4所述的方法,其特征在于,所述指令流管理模块还包括第一子模块,所述第一子模块用于在执行所述第一指令之前存储所述初始参数。
6.根据权利要求5所述的方法,其特征在于,所述指令流管理模块还包括第二子模块,所述第二子模块用于存储第二参数,所述第二参数为所述第一指令对应的发往GPU的参数。
7.根据权利要求5所述的方法,其特征在于,所述指令流管理模块还包括第三
8.根据权利要求5所述的方法,其特征在于,所述指令流管理模块还包括第四子模块,所述第四子模块用于提供GPU扩展驱动接口,所述方法还包括:
9.一种电子设备,其特征在于,所述电子设备包括用于执行如权利要求1至8中任一项所述的方法的模块。
10.一种电子设备,其特征在于,包括:
11.一种芯片系统,其特征在于,所述芯片系统包括处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片系统的电子设备执行如权利要求1至8中任一项所述的方法。
12.一种计算机可读存储介质,包括计算机程序,其特征在于,当所述计算机程序在电子设备上运行时,使得所述电子设备执行如权利要求1至8中任一项所述的方法。
...【技术特征摘要】
1.一种图像渲染方法,其特征在于,所述方法应用于电子设备中,所述电子设备执行至少两项图像渲染指令流,所述至少两项图像渲染指令流包括第一指令流和第二指令流,所述第一指令流中包括第一指令,所述第二指令流中包括所述第一指令,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述电子设备包括指令流管理模块,所述指令流管理模块存储所述初始参数。
4.根据权利要求3所述的方法,其特征在于,所述指令流管理模块还用于确定所述第一指令流和所述第二指令流是否为预设图像渲染任务对应的指令流。
5.根据权利要求3或4所述的方法,其特征在于,所述指令流管理模块还包括第一子模块,所述第一子模块用于在执行所述第一指令之前存储所述初始参数。
6.根据权利要求5所述的方法,其特征在于,所述指令流管理模块还包括第二子模块,所述第二子模块用于存储第二参数...
【专利技术属性】
技术研发人员:沈平圳,
申请(专利权)人:荣耀终端股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。