System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 界面生成方法及电子设备技术_技高网

界面生成方法及电子设备技术

技术编号:41073419 阅读:9 留言:0更新日期:2024-04-24 11:30
本申请公开了界面生成方法及电子设备,涉及电子技术领域。本申请提供的界面生成方法包括:在电子设备通过应用程序显示动画的过程中,考虑到动画过程中界面的连续性,在生成第一渲染指令并基于第一渲染指令生成动画的一帧界面后,基于动画的逻辑直接修改第一渲染指令为第二渲染指令,并基于第二渲染指令生成动画的另一帧界面,无需UI线程执行测量、布局、绘制录制,也无需渲染线程生成动画过程中的每一帧界面,进而提升界面生成的能效比。其中,界面的连续性是指,在动画过程中虽然控件的大小、位置、透明度和/或颜色等属性变化,但是该控件存在于动画过程中。

【技术实现步骤摘要】

本申请涉及电子,尤其涉及界面生成方法及电子设备


技术介绍

1、随着电子技术的发展,电子设备的屏幕的分辨率和刷新率越来越高,其中,屏幕的分辨率影响一帧界面中包含的像素,刷新率影响生成一帧界面的时间。

2、在电子设备显示第一帧界面前,电子设备需要花费计算资源生成该第一帧界面;在电子设备显示第二帧界面前,电子设备需要重新花费计算资源生成该第二帧界面。

3、当电子设备未及时生成该第二帧界面时,电子设备的屏幕上显示的内容会发生卡顿。而电子设备为了保障能够及时生成该第二帧界面,往往通过提高cpu的工作频率以提升电子设备的计算能力,进而导致电子设备生成一帧界面的能耗较高,降低了界面生成的能效比。


技术实现思路

1、本申请实施例提供了界面生成方法及电子设备,考虑到动画的连续性,在电子设备生成第一渲染指令后,可以直接基于动画的逻辑更新第一渲染指令,并基于更新后的第一渲染指令生成动画过程中的界面。进而,本申请实施例提供的界面生成方法,可以通过减少应用程序遍历视图和渲染生成位图的次数,进而提升生成界面的能效比。

2、第一方面,本申请实施例提供了一种界面生成方法,应用于电子设备,该电子设备上安装有第一应用,该方法包括:在该电子设备接收到第一操作后,该电子设备确定第一动画过程中界面的描述信息,该第一操作用于触发该电子设备通过该第一应用显示该第一动画;该电子设备生成第一渲染指令,渲染指令为用于被gpu执行以生成第一界面的数据,该第一界面为该第一动画过程中的一帧界面;该电子设备基于该动画过程中界面的描述信息更新该第一渲染指令为第二渲染指令;该电子设备基于该第二渲染指令生成该第二界面,该第二界面与该第一界面不同,该第二界面为该第一动画过程中的一帧界面。

3、在上述实施例中,电子设备通过基于动画的逻辑直接修改第一渲染指令为第二渲染指令,减少了生成第二指令的开销,进而提升了生成界面的能效比。

4、结合第一方面的一些实施例,在一些实施例中,该电子设备基于该动画过程中界面的描述信息更新该第一渲染指令为第二渲染指令,具体包括:该电子设备基于该第一动画过程中界面的描述信息确定第一参数,该第一参数用于描述第一控件在该第二界面中的发生变化的属性,该第一控件为在该第二界面中显示效果发生变化的视图;该电子设备基于该第一参数更新该第一渲染指令得到该第二渲染指令。

5、在上述实施例中,电子设备可以确定发生变化的控件,并确定第二控件发生变化的属性,然后修改第一渲染指令为第二渲染指令。

6、结合第一方面的一些实施例,在一些实施例中,在该电子设备接收到第一操作前,该方法还包括:该电子设备显示桌面,该桌面包括第一控件,该第一控件对应于第一应用;该电子设备接收到第一操作,具体包括:该电子设备检测到用户点击该第一控件;在该电子设备接收到第一操作后,该方法还包括:该第一动画为该第一应用的启动动画,在该第一动画中,第二控件的位置和大小发生变化;该电子设备基于该第一动画过程中界面的描述信息确定第一参数,具体包括:该第一电子设备确定第一位置,该第一参数包括该第一位置,该第一位置为该第二控件在第二界面中的位置,该第二界面为该第一动画的非第一帧界面;该电子设备基于该第一参数更新该第一渲染指令得到该第二渲染指令,具体包括:该电子设备通过将该第一渲染指令中的该第二控件的顶点位置修改为该第一位置得到该第二渲染指令。

7、在上述实施例中,应用程序的启动动画过程中,第二控件的位置和大小发生变化,则可以通过修改第一渲染指令,得到第二界面对应的第二渲染指令,进而基于第二渲染指令生成第二界面。

8、结合第一方面的一些实施例,在一些实施例中,该电子设备通过将该第一渲染指令中的该第二控件的顶点位置修改为该第一位置得到该第二渲染指令,具体包括:该电子设备基于该第一参数更新第一方法调用所使用的顶点位置为该第一位置以得到该第二渲染指令,该第一方法调用为用于被gpu指令以绘制该第二控件的方法调用。

9、在上述实施例中,由于第二控件的位置和大小发生变化,则可以通过修改第一渲染指令中绘制第二控件的方法调用中的输入参数以得到第二渲染指令。

10、结合第一方面的一些实施例,在一些实施例中,该第一参数用于描述该第一视图的颜色、顶点位置、透明度和/或缩放比例。

11、在上述实施例中,第一参数可以包括用于描述动画涉及的视图的颜色、顶点位置、透明度和/或缩放比例等,在此不作限定。

12、结合第一方面的一些实施例,在一些实施例中,该第一参数被该第一应用写入第一数据结构体中,该第一数据结构体与渲染管线绑定;在该渲染管线中,该第一参数被该电子设备读取以修改渲染指令。

13、在上述实施例中,第一参数需要传递到渲染管线中才能在修改渲染指令时被电子设备读取。

14、结合第一方面的一些实施例,在一些实施例中,该第一数据结构体为unifrom。

15、在上述实施例中,第一参数可以位于uniform中,进而参与到渲染管线中。

16、结合第一方面的一些实施例,在一些实施例中,该方法还包括:在该电子设备接收到第一操作后,该电子设备配置更新任务,该更新任务被配置在gpu驱动中;该电子设备基于该第一参数更新该第一渲染指令得到该第二渲染指令,具体包括:该电子设备通过更新任务将该第一渲染指令中的第二参数替换为该第一参数以得到该第二渲染指令,该第二参数用于描述该第一控件在该第一界面中的属性。

17、在上述实施例中,可以在gpu驱动中配置更新任务,在驱动gpu生成第二界面前,替换渲染指令中的第二参数为第一参数,进而生成第二渲染指令。

18、结合第一方面的一些实施例,在一些实施例中,该方法还包括:该电子设备基于该第一动画过程中界面的描述信息确定该第一控件在该第一界面中的背景贴图或前景贴图与该第一控件在该第二界面中的背景贴图或前景贴图不同;该电子设备加载第一纹理,该第一纹理为该第一控件在该第二界面中的背景贴图或前景贴图,该第一参数包括该第一纹理的标识,该第一纹理为该第一视图在该第二界面中的背景贴图或前景贴图。

19、在上述实施例中,当动画还涉及视图的纹理更新时,由于第二渲染指令不是由电子设备在遍历视图后基于渲染树生成的,故还需要电子设备读取纹理内存中,并将纹理的标识通过第一参数传递到渲染管线中。

20、结合第一方面的一些实施例,在一些实施例中,该第一渲染指令和该第二渲染指令的方法调用相同,该第一渲染指令中的资源和该第二渲染指令中的资源不同,该第一渲染指令中的资源为该第一渲染指令中的方法调用在被执行时所使用的变量或固定值,该第二渲染指令中的资源为该第二渲染指令中的方法调用在被执行时所使用的变量或固定值。

21、结合第一方面的一些实施例,在一些实施例中,该电子设备接收到第一操作后,该电子设备确定第一动画过程中界面的描述信息,具体包括:该电子设备接收到该第一操作后,该电子设备确定被触发的动画为该第一动画;该电子设本文档来自技高网...

【技术保护点】

1.一种界面生成方法,其特征在于,应用于电子设备,所述电子设备上安装有第一应用,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述电子设备基于所述动画过程中界面的描述信息更新所述第一渲染指令为第二渲染指令,具体包括:

3.根据权利要求2所述的方法,其特征在于,

4.根据权利要求3所述的方法,其特征在于,所述电子设备通过将所述第一渲染指令中的所述第二控件的顶点位置修改为所述第一位置得到所述第二渲染指令,具体包括:

5.根据权利要求2所述的方法,其特征在于,所述第一参数用于描述所述第一视图的颜色、顶点位置、透明度和/或缩放比例。

6.根据权利要求2所述的方法,其特征在于,所述第一参数被所述第一应用写入第一数据结构体中,所述第一数据结构体与渲染管线绑定;在所述渲染管线中,所述第一参数被所述电子设备读取以修改渲染指令。

7.根据权利要求6所述的方法,其特征在于,所述第一数据结构体为unifrom。

8.根据权利要求2-7中任一项所述的方法,其特征在于,所述方法还包括:

9.根据权利要求2-7中任一项所述的方法,其特征在于,所述方法还包括:

10.根据权利要求1-7中任一项所述的方法,其特征在于,所述第一渲染指令和所述第二渲染指令的方法调用相同,所述第一渲染指令中的资源和所述第二渲染指令中的资源不同,所述第一渲染指令中的资源为所述第一渲染指令中的方法调用在被执行时所使用的变量或固定值,所述第二渲染指令中的资源为所述第二渲染指令中的方法调用在被执行时所使用的变量或固定值。

11.根据权利要求1-7中任一项所述的方法,其特征在于,所述电子设备接收到第一操作后,所述电子设备确定第一动画过程中界面的描述信息,具体包括:

12.一种界面生成方法,其特征在于,应用于电子设备,所述电子设备上安装有第一应用,所述方法包括:

13.根据权利要求12所述的方法,其特征在于,所述方法还包括:

14.根据权利要求13所述的方法,其特征在于,所述方法还包括:在所述电子设备接收到第一操作后,所述电子设备配置更新任务,所述更新任务被配置在GPU驱动中;

15.根据权利要求13所述的方法,其特征在于,所述方法还包括:

16.一种电子设备,其特征在于,所述电子设备包括:一个或多个处理器和存储器;

17.一种芯片系统,其特征在于,所述芯片系统应用于电子设备,所述芯片系统包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行如权利要求1至15中任一项所述的方法。

18.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1至15中任一项所述的方法。

19.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1至15中任一项所述的方法。

...

【技术特征摘要】

1.一种界面生成方法,其特征在于,应用于电子设备,所述电子设备上安装有第一应用,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述电子设备基于所述动画过程中界面的描述信息更新所述第一渲染指令为第二渲染指令,具体包括:

3.根据权利要求2所述的方法,其特征在于,

4.根据权利要求3所述的方法,其特征在于,所述电子设备通过将所述第一渲染指令中的所述第二控件的顶点位置修改为所述第一位置得到所述第二渲染指令,具体包括:

5.根据权利要求2所述的方法,其特征在于,所述第一参数用于描述所述第一视图的颜色、顶点位置、透明度和/或缩放比例。

6.根据权利要求2所述的方法,其特征在于,所述第一参数被所述第一应用写入第一数据结构体中,所述第一数据结构体与渲染管线绑定;在所述渲染管线中,所述第一参数被所述电子设备读取以修改渲染指令。

7.根据权利要求6所述的方法,其特征在于,所述第一数据结构体为unifrom。

8.根据权利要求2-7中任一项所述的方法,其特征在于,所述方法还包括:

9.根据权利要求2-7中任一项所述的方法,其特征在于,所述方法还包括:

10.根据权利要求1-7中任一项所述的方法,其特征在于,所述第一渲染指令和所述第二渲染指令的方法调用相同,所述第一渲染指令中的资源和所述第二渲染指令中的资源不同,所述第一渲染指令中的资源为所述第一渲染指令中的方法调用在被执行时所...

【专利技术属性】
技术研发人员:廖恒陆壬淼李煜刘道勇周越海徐俊
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1