CN107071556B - 一种界面渲染方法和装置 - Google Patents
一种界面渲染方法和装置 Download PDFInfo
- Publication number
- CN107071556B CN107071556B CN201710253768.3A CN201710253768A CN107071556B CN 107071556 B CN107071556 B CN 107071556B CN 201710253768 A CN201710253768 A CN 201710253768A CN 107071556 B CN107071556 B CN 107071556B
- Authority
- CN
- China
- Prior art keywords
- window interface
- rendering
- event
- interface
- timer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 243
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000001960 triggered effect Effects 0.000 claims abstract description 39
- 238000012544 monitoring process Methods 0.000 claims description 52
- 238000001514 detection method Methods 0.000 claims description 11
- 230000001737 promoting effect Effects 0.000 claims description 8
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 238000011084 recovery Methods 0.000 claims description 2
- 238000005265 energy consumption Methods 0.000 abstract description 16
- 230000020169 heat generation Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 14
- 230000008859 change Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000003068 static effect Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005422 blasting Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000036544 posture Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44012—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4438—Window management, e.g. event handling following interaction with the user interface
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种界面渲染方法和装置,该方案中,在检测到窗口界面被展现时,按照预设的低渲染帧数,向该窗口界面中渲染并输出当前所需展现的第一画面图像;监控到窗口界面中存在满足提升渲染帧数条件的目标触发事件时,按照预设的高渲染帧数以及该目标触发事件所触发的连续动画事件,向该窗口界面中渲染并输出当前所需展现的第二画面图像;在监控到该窗口界面中不存在尚未结束的连续动画事件时,按照预设的低渲染帧数,向窗口界面中渲染并输出当前所需展现的第三画面图像。本申请的方案可以在不影响用户正常观看窗口界面中的画面图像的前提下,降低渲染窗口界面中的画面图像所需耗费的计算资源,减少终端的能耗,降低终端的产热。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种界面渲染方法和装置。
背景技术
随着图像技术的不断发展,终端必然会涉及到动态画面的渲染处理。如,在游戏运行过程中,终端需要对不断变化的游戏画面进行渲染,并输出到终端的显示界面中进行展现。又如,终端在展现网页的过程中,如果网页中存在连续动画,则终端也需要逐次对各帧动画进行渲染并呈现。
然而,终端渲染每帧画面都会占用一部分处理器资源,这样,在终端需要连续长时间进行画面渲染的情况下,如果终端每秒渲染的画面帧数过多,则会占用较多的计算资源,使得终端的能耗过大,并导致终端的产热过多;而如果终端每秒渲染的画面帧数过少,又可能会造成动画卡顿,从而影响到用户正常的画面观看。仍以在终端运行游戏为例,在终端运行游戏的过程中,如果终端长时间以较高渲染帧率来渲染画面,则会使得终端的能耗过大,导致设备耗电量多,且发热明显;而如果终端以较低的渲染帧率来渲染画面,又可能会导致游戏画面不流畅,影响到用户的游戏操作以及正常的游戏交互。
可见,如何在不影响用户正常观看画面的前提下,降低终端渲染画面所耗费的计算资源,降低终端的能耗以及产热是本领域技术人员迫切需要解决的技术问题。
发明内容
有鉴于此,本申请提供了一种界面渲染方法和装置,以在不影响用户正常观看窗口界面中的画面图像的前提下,降低渲染窗口界面中的画面图像所需耗费的计算资源,减少终端的能耗,降低终端的产热。
为实现上述目的,一方面,本申请实施例提供了一种界面渲染方法,包括:
检测到窗口界面被展现时,按照预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第一画面图像;
监控所述窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件,所述目标触发事件用于触发连续动画事件,所述连续动画事件为向所述窗口界面中播放连续多帧动画;
当监控到所述目标触发事件时,按照预设的高渲染帧数以及所述连续动画事件,向所述窗口界面中渲染并输出当前所需展现的第二画面图像;
监控所述窗口界面中是否存在尚未结束的所述连续动画事件;
当所述窗口界面中不存在尚未结束的所述连续动画事件时,按照所述预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第三画面图像。
另一方面,本申请还提供了一种界面渲染装置,包括:
初始渲染单元,用于检测到窗口界面被展现时,按照预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第一画面图像;
事件监控单元,用于监控所述窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件,所述目标触发事件用于触发连续动画事件,所述连续动画事件为向所述窗口界面中播放连续多帧动画;
帧数调整单元,用于如果监控到所述目标触发事件时,按照预设的高渲染帧数以及所述连续动画事件,向所述窗口界面中渲染并输出当前所需展现的第二画面图像;
动画监控单元,用于监控所述窗口界面中是否存在尚未结束的所述连续动画事件;
帧数恢复单元,用于在所述窗口界面中不存在尚未结束的所述连续动画事件时,按照所述预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第三画面图像。
经由上述的技术方案可知,在本申请实施例中,窗口界面被展现之后,会以预设的低渲染帧数,向该窗口界面中渲染并输出画面图像,只有当窗口界面中存在需要提升渲染帧数的目标触发事件时,才会将渲染帧数调整为高渲染帧数,以保证用户可以观看流畅的连续动画,避免卡顿;而当目标触发事件所触发的连续动画事件结束时,则又会将该窗口界面对应的渲染帧数恢复为低渲染帧数,从而将低渲染帧数作为该窗口界面对应的渲染画面图像的常态,而将触发向窗口界面中播放连续多帧动画的目标事件作为触发窗口界面进入高渲染帧数的短期异常状态,实现了不存在目标触发事件触发的情况下,长时间维持该窗口界面的渲染帧数为低渲染帧数,进而降低了终端的计算资源的耗费,减少了能耗,也有利于减少终端的产热。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的计算机设备的一种组成结构示意图;
图2为本申请实施例所公开的界面渲染方法所适用的一种应用场景的示意图;
图3为本申请实施例公开的一种界面渲染方法的一个实施例的流程示意图;
图4为本申请实施例公开的一种静态界面的示意图;
图5a、5b、5c、5d、5e和5f示出了本申请实施例的一种窗口界面在不同触发事件触发下所触发的渲染帧数变化的示意图;
图6示出了图5a-5f中渲染帧数变化的曲线趋势示意图;
图7示出了本申请实施例公开的一种界面渲染方法又一个实施例的流程示意图;
图8示出了本申请实施例公开的一种界面渲染装置一个实施例的组成结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种界面渲染方法和装置,该方法和装置应用于计算机动画、虚拟现实、游戏等领域所涉及到的画面渲染,以降低终端渲染画面所需耗费的能耗,减少终端的产热。
例如,本申请的方案可以应用于游戏运行过程中,对游戏中各个游戏界面所涉及到的游戏画面的渲染控制。
本实施例的方法和装置适用于任意计算机设备中,以通过该计算机设备控制画面的渲染帧数,并实现画面的渲染与呈现。如,该计算机设备可以为运行网络游戏、单机游戏、虚拟现实等的终端,例如,手机、平板电脑、笔记本等等。
如图1,其示出了本申请实施例的界面渲染方法和装置所适用的计算机设备的一种组成结构示意图。在图1中,该计算机设备可以包括:处理器101、存储器102、通信接口103、显示器104、输入单元105和通信总线106。
处理器101、存储器102、通信接口103、显示器104、输入单元105均通过通信总线106完成相互间的通信。
在本申请实施例中,该处理器101可以包括:显卡中的图形处理器(GPU,GraphicsProcessing Unit)1012,GPU可以用于实现本申请实施例中画面图像的渲染等相关的图形数据处理。
该处理器101中还包括中央处理器(CPU,Central Processing Unit)1011,以控制画面渲染帧数,并实现该计算机设备主要的数据处理操作,当然,该中央处理器还可以被替换为特定应用集成电路(application-specific integrated circuit,ASIC),数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件等。
存储器102中用于存放一个或者一个以上程序,程序可以包括程序代码,所述程序代码包括计算机操作指令。该存储器可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
该通信接口103可以为通信模块的接口,如GSM模块的接口。
该显示器104可用于窗口界面,并在窗口界面中显示渲染出的画面图像;还可以显示由用户输入的信息,或者提供给用户的信息,以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图片等任意组合来构成。该显示器可以包括显示面板,如,可以为采用液晶显示器、有机发光二极管等形式来配置的显示面板。进一步的,该显示器可以包括具备采集触摸事件的触摸显示面板。
可选的,计算机设备还可以包括输入单元105,该输入单元105可用于接收输入的用户输入的字符、数字等信息,以及产生与用户设置以及功能控制有关的信号输入。该输入单元可以包括但不限于物理键盘、鼠标、操作杆等中的一种或多种。
当然,图1所示的计算机设备结构并不构成对计算机设备的限定,在实际应用中计算机设备可以包括比图1所示的更多或更少的部件,或者组合某些部件。
为了便于理解本申请的方案,下面对本申请的方案所适用的场景进行简单介绍。
在一种场景中,终端上可以运行有游戏等应用,在终端运行该应用的过程中,可以展现出该应用相关的窗口界面,并在窗口界面中呈现渲染出的画面图像。例如,该应用可以为单机游戏,终端可以在运行单机游戏的过程中,渲染游戏画面并输出到游戏的相应界面中。
在又一种场景中,可以参见图2,其示出了本申请一种界面渲染方法所适用的一种场景示意图。如图2所示,在该种应用场景中可以包括由至少一台服务器201组成的服务系统,以及多台终端202。
其中,终端可以为手机、笔记本电脑、台式机等等。
终端202,用于向服务器发送图像数据请求。
服务器201,用于响应于终端的图像数据请求,向终端传输图像数据,并在检测到图像数据存在更新时,向终端传输更新后的图像数据。
例如,以单人或多人在线的网络游戏为例,终端202可以向提供游戏服务的服务器201发送用于获取游戏画面的图像数据请求,并在服务器返回图像数据之后,按照当前设定的渲染帧数,对图像数据进行渲染并输出到浏览器中游戏相应的窗口界面中。
基于以上本实施例的共性,对本申请实施例的界面渲染方法进行详细介绍。
参见图3,其示出了本申请一种界面渲染方法一个实施例的流程示意图,本实施例的方法可以应用于前面所提到的计算机设备,该方法可以包括:
S301,在检测到窗口界面被展现时,检测该窗口界面属于满足低渲染帧数条件的界面。
其中,窗口界面也可以简称为界面,其用于呈现所需渲染并呈现出的画面图像。如,以游戏为例,游戏中会有多个不同的窗口界面,如,游戏中玩家进行游戏交互的主窗口界面,在该主窗口界面中可以显示出各个游戏玩家在游戏中的角色、角色位置以及姿态等等;当用户选择武器装备时,可以打开游戏中的用于选择武器装备的装备选择界面。
在本申请实施例中,检测到窗口界面被展现可以是窗口界面被打开,例如游戏玩家进入游戏,打开游戏的主窗口界面;也可以是:由另外一个窗口界面切换到该窗口界面,例如,从游戏的主窗口界面切换到装备选择界面。
其中,该低渲染帧数条件为用于判断该窗口界面是否适合按照较低渲染帧数渲染画面图像的条件。
如,该低渲染帧数条件可以为包括以下任意一种或几种:
窗口界面为不具有连续动画的静态界面;
该窗口界面所需呈现的动画的时长小于预设阈值;
以及,该窗口界面所呈现出的画面图像中超过预设比例的区域为静止状态,而仅有小于预设比例的小部分区域存在动画,且该动画不属于预设的重点显示内容。
其中,动画是指窗口界面所呈现的画面图像中的一部分内容,该部分内容具有在多帧画面图像中连续性变化的特征。例如,仍以游戏为例,当有游戏玩家触发射击时,就会在该窗口界面呈现出的画面图像中显示出连续多帧射击动画,以表征射击过程中子弹的变化;又如,游戏画面中会存在爆破动画,以体现出爆破过程中各个阶段的变化。
可以理解的是,完全不存在连续动画的静态界面非常少,因此,在实际应用中可以具有动画帧率小于每秒5帧的动画的界面确定为静态界面。如,图4,其示出了一种静态界面的示意图,在该图4示出了在网络游戏中选择服务器的界面示意图,在该界面中用户可以选择游戏的服务器(也就是俗称的选区),在该种界面就可以认为不存在连续动画,界面中显示出的各帧画面图像几乎没有差别,如果按照较高渲染帧率渲染该界面中的选择服务器的图像,则会造成资源耗费。
进一步的,由于大部分窗口界面都始终存在隐藏的动画或者不太重要的动画,例如,游戏中的按钮上的特效可能始终存在,因此,如果直接检测是否存在不具有动画的静态界面或者窗口界面中所需呈现的动画的时长小于预设阈值等,则可能导致大部分窗口界面都无法满足该低渲染帧数条件,进而导致检测错误。
为了减少检测错误,可选的,在本申请实施例中可以根据该低渲染帧数条件,预先确定出满足低渲染帧数条件的窗口界面所组成的窗口界面集合,并预置该窗口界面集合,这样,可以直接检测当前展现出的窗口界面是否为预置的窗口界面集合中的界面,如果该窗口界面属于该窗口界面集合,则确定可以将该窗口界面的渲染帧数设置为较低的渲染帧数。
S302,当该窗口界面为满足低渲染帧数条件的界面,则按照预设的低渲染帧数,向该窗口界面中渲染并输出画面图像。
渲染帧数(Frame Per Second)也称渲染帧率,是指画面图像每秒渲染的帧数。一般情况下,每秒渲染的帧数越多,窗口界面所显示的动作就越流畅,但终端的计算量越大、耗能越大;反之,每秒渲染的帧数越少,动画越显卡顿,但计算量越小、耗能下降。
在本申请实施例中,如果判断出该窗口界面为满足低渲染帧数条件的界面,则可以维持该窗口界面对应的渲染帧数为低渲染帧数。
其中,该预设的低渲染帧数可以根据需要设置,该低渲染帧数小于目前窗口界面中常规的渲染帧数。
本申请的发明人经过测试发现:渲染帧率分别为30帧和60帧,对于终端的操作系统的能耗差别不到5%,并不能改变能耗级别。而如果将渲染帧率降至10帧以下,则能有效地将能耗级别降至能源报告中的“低”能耗级别。同时,为了保证能够正常接收用户的输入操作,窗口界面对应的渲染帧率不能下降至0,否则窗口界面对应的业务逻辑的更新就会完全停止,而当渲染帧率是5帧时,窗口界面对应的业务逻辑的反应延时最长0.2秒,在人类反应时间(0.15-0.4秒)以内,是个比较合适的经验值。因此,在本申请实施例可以将低渲染帧数设置为每秒5帧作为一种优选实施方式。
需要说明的是,检测展现出的窗口界面是否满足低渲染帧数条件是一种优选步骤,在实际应用中,也可以在监测到切换或打开某个窗口界面时,直接将该窗口界面的渲染帧率设置为预设的低渲染帧数。而检测窗口界面是否满足低渲染帧数条件的目的是为了能够避免将一些具有持续动画的动态界面设置为低渲染帧率,而使得终端不断将渲染帧数切换到较高的渲染帧数,而导致不必要的资源耗费。
S303,监控窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件。
可选的,满足提升渲染帧数条件的目标触发事件至少可以包括以下任意一种或几种:
能够触发窗口界面的画面图像发生变化的触摸事件;
能够触发窗口界面的画面图像发生变化的网络事件
能够触发窗口界面的画面图像发生变化的定时动画事件。
以上几种触发事件的共性是能够触发窗口界面的画面图像发生变化,也就是说,这些事件可以用于触发启动连续动画事件,该连续动画事件为向所述窗口界面中播放连续多帧动画。其中,该连续动画事件所对应的连续多帧动画的动画帧速率大于预设值,如,动画帧速率大于5帧或者30帧等。
其中,该触摸事件可以是用户手指的触摸动作,也可以是触摸笔以及鼠标光标的触摸动作。如果某个触摸事件无法触发窗口界面的画面图像发生改变的话,则不属于满足提升渲染帧数条件的触摸事件,例如,在装备选择界面中,如果玩家点击无法选中的图标或者区域,则不会触发该窗口界面的画面图像发生变化;而如果玩家点击装备选择按键,则会触发窗口界面中呈现出包含所选取的装备的相关信息的动画。
相应的,如果网络事件无法触发窗口界面的画面图像发生变化,则该网络事件也不属于满足提升渲染帧数条件的网络事件,如,如果网络事件是网络侧传输的心跳包,由于心跳包不会引起窗口界面的画面图像发生变化,因此,检测到心跳包的网络事件不属于满足提升渲染帧数条件的网络事件。又如,如果游戏中其他玩家触发了射击指令,在检测到该射击指令时,则会触发射击动画事件,以渲染出子弹射击过程所对应的多帧连续动画,因此,检测到网络侧发送的射击事件或指令,则可以确定检测到目标触发事件。
其中,定时动画事件是指定时触发播放多帧动画的定时事件,例如,在网络游戏中,如果检测到炮弹击中某个对象之后可以触发定时动画事件,以触发在炮弹击中对象之后延迟指定时长触发爆炸动画。
可以理解的是,如果在检测到窗口界面中存在事件时,实时检测该事件是否属于满足提升渲染帧数条件,则会耗费较多的计算资源,也会导致耗时较长;甚至可能会出现无法精准判断事件是否满足提升渲染帧数条件的目标触发事件。因此,可选的,可以预先确定出满足提升渲染帧数条件的事件,并预置满足提升渲染帧数条件的事件所组成的事件集合,这样,可以监控该窗口界面中是否存在属于预置的事件集合的目标触发事件。
S304,当监控到目标触发事件时,按照预设的高渲染帧数以及该目标触发事件所触发启动的连续动画事件,向该窗口界面中渲染并输出画面图像。
可以理解的是,由于目标触发事件会触发连续动画事件,因此,在监控到该目标触发事件时,可以先确定目标触发事件所触发的连续动画事件,然后,依据该连续动画事件,确定窗口界面中所需呈现的画面图像的内容并进行相应的渲染。同时,为了保证连续动画事件对应的多帧连续动画的流畅播放,可以将窗口界面对应的渲染帧数提高为预设的高渲染帧数。
其中,该预设的高渲染帧数大于该预设的低渲染帧数。该高渲染帧数同样可以根据需要设定,一般以能够保证动画可以流程播放为准,可选的,该高渲染帧数为大于或等于每秒30帧,如,高渲染帧数可以为每秒30帧或者每秒60帧。
需要说明的是,窗口界面在不同时刻所需输出的画面图像可能会有所不同,因此,该步骤S304所输出的画面图像可以不同于该步骤S302中所输出的画面图像,为了便于区分出该窗口界面中在不同时刻所需输出的画面图像,在本申请实施例中,可以将步骤S302中,向窗口界面渲染并输出的画面图像称为在判断出该窗口界面为满足低渲染帧数条件的界面这一时刻所需输出的第一画面图像;相应的,该步骤S304中为在监控到目标触发事件时,依据该目标触发事件所触发的连续动画事件,向该窗口界面中输出的当前所需展现的第二画面图像。S305,监控该窗口界面中是否存在尚未结束的连续动画事件。
S306,在该窗口界面中不存在尚未结束的连续动画事件时,按照预设的低渲染帧数,向该窗口界面中渲染并输出画面图像。
为了便于与前面步骤S302和步骤S304中输出的画面图像进行区分,将在窗口界面不存在尚未结束的连续动画事件时,该窗口界面中当前需要展现的画面图像称为第三画面图像。
需要说明的是,在同一时刻窗口界面中可以会同时维持多个连续动画事件,使得窗口界面中同时播放多个不同的动画。如,仍以游戏为例,在计算机设备运行游戏的过程中,如果游戏的窗口界面中检测到一个射击事件会触发一个射击动画事件;而下一时刻窗口界面中可能会出现另一个射击事件,从而触发了又一个射击动画事件,这样,在前一个射击动画事件对应的连续多帧射击动画未播放结束的前提下,窗口界面会同时播放另一个射击动画事件所对应的多帧射击动画。
相应的,为了保证窗口界面中每个连续动画事件所对应的多帧连续动画的流畅播放,需要检测是否每个连续动画事件均已经结束。如果当前时刻该窗口界面中仍存在未结束播放的连续动画事件,则仍需要保持该窗口界面的渲染帧数为高渲染帧数,以保证窗口界面中呈现出的动画的连续性以及流畅度,避免出现卡顿,影响到用户的观看;而如果窗口界面中不存在处于播放状态的连续动画事件,则可以将该窗口界面对应的渲染帧数降低为低渲染帧数,以降低设备的能耗,减少设备的产热。
可见,在本申请实施例中,窗口界面被展现之后,会以预设的低渲染帧数,向该窗口界面中渲染并输出画面图像,只有当窗口界面中存在目标触发事件才会将渲染帧数调整为高渲染帧数,以保证用户可以看出连续的动画,避免卡顿;而当目标触发事件所触发的连续动画事件结束时,则又会将该窗口界面对应的渲染帧数恢复为低渲染帧数,从而将低渲染帧数作为该窗口界面对应的渲染画面图像的常态,而将存在目标事件触发向窗口界面中播放连续多帧动画作为触发窗口界面进入高渲染帧数的短期异常状态,实现了不存在目标触发事件触发的情况下,长时间维持该窗口界面的渲染帧数为低渲染帧数,进而降低了终端的计算资源的耗费,减少了能耗,也有利于减少终端的产热。
为了便于理解本申请的方案所带来的有益效果,以计算机设备运行游戏的场景为例进行介绍,如,可以参见图5a、5b、5c、5d、5e和5f分别示出了本申请实施例的一种窗口界面在不同触发事件触发下所引起的渲染帧数的变化示意图。其中,在这几幅图中窗口界面的右上角所显示的数字为针对该窗口界面进行图像渲染的渲染帧数。
如图5a,在打开该窗口界面之后,由于该窗口界面中存在进入动画,此时需要将渲染帧数从每秒5帧的渲染帧数调整为每秒30帧的高渲染帧数,需要说明的是,由于检测间隔为1秒,在将帧率提升到每秒30帧之后,对于持续时间短于1秒的30帧率,测试出的渲染帧数会接近30帧但是低于30帧。如图5a渲染帧数为每秒27帧,以保证进入动画的流畅播放。在进入动画播放完毕之后,计算机设备将该渲染帧数调整为低渲染帧数,如图5b,窗口界面对应的渲染帧数为每秒5帧。
在维持渲染帧数为每秒5帧的过程中,监控到该窗口界面中存在向上滑动列表的触摸事件,由于该触摸事件会触发窗口界面中所显示出的列表发生移动,也就是说,该触摸事件会使得窗口界面的画面图像发生改变,触发启动列表移动动画,因此,计算机设备将渲染帧数提高为每秒30帧,如图5c中,测试出的渲染帧数提升为每秒23帧。相应的,当向上滑动列表的触摸事件释放之后,列表回弹到原处,此时窗口界面中没有其他连续多帧动画需要播放,则窗口界面的渲染帧数降低为每秒5帧,如图5d所示。
进一步的,如果用户点击该窗口界面中的“兑换”按钮,触发兑换奖励动画事件,计算机设备又会将窗口界面的渲染帧数提升为每秒30帧左右,以流畅播放该兑换奖励画面,如图5e所示。相应的,当兑换奖励画面结束之后,计算机设备又会将该窗口界面的渲染帧数降低为每秒5帧,如图5f所示。
对比这几幅图可以看出,如果窗口界面中存在目标触发事件,在该目标触发事件所触发启动的连续动画事件之后,如果连续动画事件对应的连续多帧动画未结束播放,则窗口界面对应的渲染帧数处于较高的渲染帧数;相应的,当目标触发事件所触发的连续动画事件均结束时,终端又会将窗口界面的渲染帧数设置为较低的渲染帧数,以降低能耗。参见图6,其示出了图5a-5f中渲染帧数变化的曲线趋势示意图,由图6可以直观的看出不同目标事件触发下,该窗口界面对应的渲染帧数的变化趋势。
可以理解的是,在本申请实施例中,监控该窗口界面中是否存在尚未结束的连续动画事件可以是实时对该连续动画事件进行监控,以判断该连续动画事件所对应的多帧连续动画是否播放完毕,然而为了实时监控连续动画是否播放完毕,需要预先针对不同的连续动画事件编写不同的监控逻辑,会导致开发成本较高。
为了降低开发成本,可选的,可以预先确定出连续动画事件的持续时长,该持续时长表征该连续动画事件所对应的多帧连续动画播放完毕所需的耗时。相应的,如果监控到该目标触发事件时,则可以获取目标触发事件触发的所述连续动画事件的持续时长;然后,根据该连续动画事件的持续时长,设置计时器的计时时长。如果到达计时器的计时时长,则说明该连续动画事件播放完毕。这样可以直接监控是否存在与窗口界面对应的尚未终止计时的计时器,如果不存在与该窗口界面对应的尚未终止计时的计时器,则确定窗口界面中不存在尚未结束的连续动画事件。
为了便于描述,以在计算机设备中运行游戏为例进行介绍,参见图7,其示出了本申请一种界面渲染方法一个实施例的流程示意图,本实施例的方法可以应用于前面所提到的计算机设备,本实施例的方法可以包括:
S701,在终端开启游戏后,在当前监控到开启或切换至游戏的一个窗口界面时,检测该窗口界面是否为预置的窗口界面集合中的界面,如果是,则执行步骤S702;如果否,则结束;
如果运行游戏过程中打开或切换到的窗口界面不属于预置的窗口界面集合中的界面,则说明没有必要将该窗口界面的渲染帧数设置为以预设的低渲染帧数作为常态,而可以直接按照常规的渲染方式对该窗口界面待输出的画面图像进行渲染。
S702,按照每秒5帧的低渲染帧数,向该窗口界面渲染并输出第一画面图像。
其中,在本申请实施例是以低渲染帧数为每秒5帧为例进行介绍,但是当低渲染帧数设置为其他数值时,也同样适用于本申请实施例。
S703,监控该窗口界面中是否存在属于预置的事件集合的目标触发事件。
可以理解的是,通过前面实施例的其他方式来监控窗口界面中的目标触发事件也同样适用于本实施例,在此不加以限制。
需要说明的是,该步骤S702和步骤S703的顺序并不限于图7所示,在实际应用中,也可以同时执行该步骤S702和步骤S703。
S704,当在该窗口界面中监测到目标触发事件,按照每秒30帧的高渲染帧数以及该目标触发事件所触发启动的连续动画事件,向窗口界面中渲染并输出当前所需展现的第二画面图像。
其中,在本申请实施例是以高渲染帧数为每秒30帧为例进行介绍,但是当高渲染帧数设置为其他数值时,也同样适用于本申请实施例。
S705,判断是否预置有该目标触发事件所触发的连续动画事件的持续时长,如果是,则执行步骤S706;如果否,则执行步骤S711;
可以理解的是,有些连续动画事件的持续时长是可以预先确定的,在该种情况下,可以预先设置连续动画事件的持续时长,从而可以避免针对该连续动画事件单独编写监控逻辑来监控该连续动画事件是否结束,从而可以减少额外的开发成本和风险。
相应的,有些连续动画事件的持续时长无法预先确定,如,有些动画可能需要等待服务器回包驱动的动画,而由于网络延迟不可预先计算,所以无法确定连续动画事件所对应的多帧连续动画需要维持多长时间才可以播放完毕,在该种情况下,就需要针对该连续动画事件设置监控逻辑,以监控该连续动画事件是否结束。
S706,检测当前是否存在计时器,如果是,则执行步骤S707;如果否,则执行步骤S709;
可以理解的是,该计时器可以理解为一个全局计时器,也可以认为是与该窗口界面对应的计时器。
S707,判断该计时器的剩余计时时长t是否大于或等于该连续动画事件的持续时长t1,如果是,则维持该计时器的剩余计时时长不变,并跳转到步骤S710;如果否,则执行步骤S708;
S708,将计时器的剩余计时时长t设置为该连续动画事件的持续时长t1,并执行步骤S710。
S709,生成一个计时器,设置该计时器的计时时长为该连续动画事件的持续时长t1,并将窗口界面对应的计数器的数值加一。
如果当前不存在计时器(或者说,不存在与该窗口界面对应的计时器),则需要新建一个计时器,并将计时器的计时时长设置为该持续时长。
可以理解的是,在本申请实施例中,所有目标触发事件所触发的连续动画事件均对应着一个计时器,通过该计时器来监控所有连续动画事件是否播放结束。
如果当前检测到目标触发事件所触发启动的连续动画事件的持续时长大于该计时器的剩余时长,则说明在到达该计时器的剩余计时时长时,该连续动画事件仍未结束,因此,需要将计时器的剩余时长调整为该连续动画事件的持续时长,以保证计时器可以准确监控连续动画事件是否结束;相应的,如果该计时器的剩余计时时长大于或等于该连续动画事件的持续时长,则不会影响该计时器对该连续动画事件的监控,可以维持计时器的剩余计时时长不变。
需要说明的是,所有目标触发事件所触发的连续动画事件均对应着一个计时器是一种优选实施方式,在实际应用中,也可以分别为每个目标触发事件生成一个计时器,并将目标触发事件对应的计时器的计时时长设置为该目标触发事件所触发启动的连续动画事件的持续时长,这样,当游戏计时器均达到计时时长,或者说,不存在处于计时状态的计时器时,才可以确定窗口界面中不存在尚未结束且可以确定持续时长的连续动画事件。
S710,当检测到计时器到达计时时长时,释放该计时器,并将该计数器的数值减一,跳转到步骤S713;
S711,将计数器的数值加一,并监控该目标触发事件所触发启动的连续动画事件是否结束;
S712,当监控到该连续动画事件结束时,将计数器的数值减一。
需要说明的是,该步骤S711和步骤S712为可选步骤,如果窗口界面中所涉及的所有连续动画事件的持续时长均可以预先确定的话,则无需执行该步骤S711和步骤S712。
S713,监控计数器的数值是否为零,如果是,则执行步骤S714,如果否,则维持该窗口界面对应的渲染帧数处于预设的高渲染帧数。
在本实施例中,计数器的数值用于统计计时器的个数,以及无法预先确定持续时长的连续动画事件的总数量。具体的,如果计数器的数值大于零,则说明窗口界面中仍存在尚未结束的连续动画事件;如果计数器的数值为零,则说明窗口界面中不存在尚未结束的连续动画事件。
可选的,在执行步骤S702的同时,可以先将计数器进行初始化,将计数器的初始值设置为零。这样,每生成一个计时器或者检测到一个无法预先确定持续时长的连续动画事件被触发启动时,就会将计数器的数值加一。相应的,如果计时器结束计时,释放计时器时,则会将计数器的数值减一;而且如果监控到无法预先确定持续时长的连续动画事件结束时,也会将计数器的数值减一,由此可见,只要是窗口界面中存在任意一个目标触发事件所触发启动的连续动画事件未结束,该计数器的数值就不会为零;只有在当前时刻该窗口界面中不存在处于播放状态的连续动画事件,即,所有连续动画事件均结束,该计数器的数值才会为零,因此,通过监控该计数器的数值可以判断当前是否不存在需要以高渲染帧数进行渲染的连续动画。
当然,通过计数器来监控窗口界面中仍存在尚未结束的连续动画事件仅仅是一种优选实施方式,而不是唯一的实现方式。在实际应用中,也可以直接监控当前是否仍存在计时器,以及已经被触发启动且无法获取到持续时长的连续动画事件是否结束,这样,如果监控到当前不存在计时器,而且窗口界面中已经被触发启动且无法获取到持续时长的连续动画事件均结束播放时,则恢复窗口界面的渲染帧数为预设的低渲染帧数。
S714,按照每秒5帧的低渲染帧数,向该窗口界面渲染并输出第三画面图像。
需要说明的是,图7实施例仅仅是为了便于描述,以在计算机设备中运行游戏为例进行说明,当在计算机设备中运行其他应用或者程序时,如果应用或程序中涉及到向窗口界面中渲染图像,均可以采用图7所示的方式,在此不加以限制。
下面对本发明实施例提供的一种界面渲染装置进行介绍,下文描述的一种界面渲染装置可与上文描述的一种界面渲染方法相互对应参照。
参见图8,其示出了本申请一种界面渲染装置的一个实施例的组成结构示意图,本实施例的装置可以包括:
初始渲染单元801,用于如果检测到窗口界面被展现时,按照预设的低渲染帧数,向所述窗口界面中渲染并输出画面图像;
事件监控单元802,用于监控所述窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件,所述目标触发事件用于触发启动连续动画事件,所述连续动画事件为向所述窗口界面中播放连续多帧动画;
帧数调整单元803,用于如果监控到所述目标触发事件时,按照预设的高渲染帧数以及所述连续动画事件,向所述窗口界面中渲染并输出画面图像;
动画监控单元804,用于监控所述窗口界面中是否存在尚未结束的所述连续动画事件;
帧数恢复单元805,用于如果所述窗口界面中不存在尚未结束的所述连续动画事件,则按照所述预设的低渲染帧数,向所述窗口界面中渲染并输出画面图像。
可选的,所述事件监控单元具体为,用于监控所述窗口界面中是否存在属于预置的事件集合的目标触发事件。
可选的,所述初始渲染单元,包括:
界面检测单元,用于如果检测到窗口界面被展现,检测所述窗口界面属于满足预设的低渲染帧数条件的界面;
初始渲染子单元,用于如果所述窗口界面属于满足预设的低渲染帧数条件的界面,按照预设的低渲染帧数,向所述窗口界面中渲染并输出画面图像。
进一步的,所述界面检测单元在检测到所述窗口界面属于满足预设的低渲染帧数条件的界面时,具体用于检测到所述窗口界面属于预置的窗口界面集合中的界面。
可选的,所述低渲染帧数为每秒5帧;所述高渲染帧数大于每秒30帧。
可选的,该装置还可以包括:
时长获取单元,用于在所述事件监控单元监控到所述目标触发事件时,获取所述目标触发事件触发的所述连续动画事件的持续时长;
计时器设置单元,用于根据所述连续动画事件的持续时长,设置计时器的计时时长;
所述动画监控单元,具体为,用于监控是否存在与所述窗口界面对应的尚未终止计时的计时器,如果所不存在与所述窗口界面对应的尚未终止计时的计时器,则确定所述窗口界面中不存在尚未结束的所述连续动画事件。
进一步的,所述计时器设置单元,可以包括:
计时器检测单元,用于检测是否存在计时器;
余时确定单元,用于如果所述计时器检测单元检测到当前存在计时器,则获取所述计时器的剩余计时时长;
第一设置单元,用于如果所述计时器的剩余计时时长大于或等于所述持续时长,则维持计时器的剩余计时时长不变;
第二设置单元,用于如果所述计时器的剩余计时时长小于所述持续时长,则将所述计时器的剩余计时时长更新为所述持续时长;
计时器生成单元,用于如果所述计时器检测单元检测到当前不存在计时器,则为所述窗口界面生成计时器,并设置生成的计时器的计时时长为所述持续时长。
进一步的,该装置还可以包括:
第一计数单元,用于当检测到生成计时器时,将所述窗口界面对应的计数器的数值加一;
第二计数单元,用于当检测到所述计时器到达计时时长时,释放到达计时时长的计时器,并将所述计数器的数值减一;
所述动画监控单元,可以包括:
计数器监控单元,用于监控所述计数器的数值是否为零,如果所述计数器的数值为零时,则确定所述窗口界面中不存在尚未结束的所述连续动画事件。
进一步的,所述装置还可以包括:
时长检测单元,用于在所述时长获取单元获取所述目标触发事件触发的所述连续动画事件的持续时长之前,检测是否存储有所述目标触发事件触发的所述连续动画事件的持续时长;
所述时长获取单元,具体为,用于在所述时长检测单元检测到存储有所述连续动画事件的持续时长时,获取存储的所述目标触发事件触发的所述连续动画事件的持续时长;
状态监控单元,用于如果所述时长检测单元检测到未存储所述连续动画事件的持续时长,将计数器的数值加一,并监控所述连续动画事件是否结束;
第三计数单元,用于当所述状态监控单元监控到所述连续动画事件结束时,将所述计数器的数值减一。
另一方面,本申请实施例还提供了一种计算机设备,该计算机设备的组成可以参见图1所示。其中该计算机设备的存储器中存储的程序具体用于:
如果检测到窗口界面被展现时,按照预设的低渲染帧数,向所述窗口界面中渲染并输出画面图像;
监控所述窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件,所述目标触发事件用于触发启动连续动画事件,所述连续动画事件为向所述窗口界面中播放连续多帧动画;
如果监控到所述目标触发事件时,按照预设的高渲染帧数以及所述连续动画事件,向所述窗口界面中渲染并输出画面图像;
监控所述窗口界面中是否存在尚未结束的所述连续动画事件;
如果所述窗口界面中不存在尚未结束的所述连续动画事件,则按照所述预设的低渲染帧数,向所述窗口界面中渲染并输出画面图像。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (15)
1.一种界面渲染方法,其特征在于,包括:
当检测到窗口界面被展现时,检测所述窗口界面是否属于满足预设的低渲染帧数条件的界面;所述低渲染帧数条件至少包括:窗口界面所呈现出的画面图像中小于预设比例的小部分区域存在动画,且所述小部分区域存在的动画不属于预设的重点显示内容;
当所述窗口界面属于满足预设的低渲染帧数条件的界面时,按照预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第一画面图像;所述预设的低渲染帧数作为所述窗口界面对应的渲染画面图像的常态;
监控所述窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件,所述目标触发事件用于触发连续动画事件,所述连续动画事件为向所述窗口界面中播放连续多帧动画;
监控到所述目标触发事件时,按照预设的高渲染帧数以及所述连续动画事件,向所述窗口界面中渲染并输出当前所需展现的第二画面图像;所述预设的高渲染帧数作为所述窗口界面对应的渲染画面图像的短期异常状态;
监控所述窗口界面中是否存在尚未结束的所述连续动画事件;
在所述窗口界面中不存在尚未结束的所述连续动画事件时,按照所述预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第三画面图像。
2.根据权利要求1所述的界面渲染方法,其特征在于,所述监控所述窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件,包括:
监控所述窗口界面中是否存在属于预置的事件集合的目标触发事件,所述预置的事件集合包括:满足所述提升渲染帧数条件的至少一个触发事件。
3.根据权利要求1所述的界面渲染方法,其特征在于,还包括:
在监控到所述目标触发事件时,获取所述目标触发事件触发的所述连续动画事件的持续时长;
根据所述连续动画事件的持续时长,设置计时器的计时时长;
所述监控所述窗口界面中是否存在尚未结束的所述连续动画事件,包括:
监控是否存在与所述窗口界面对应的尚未终止计时的计时器;
当不存在与所述窗口界面对应的尚未终止计时的计时器,则确定所述窗口界面中不存在尚未结束的所述连续动画事件。
4.根据权利要求3所述的界面渲染方法,其特征在于,所述根据所述连续动画事件的持续时长,设置计时器的计时时长,包括:
检测是否存在计时器;
如果当前存在计时器,则获取所述计时器的剩余计时时长;
如果所述计时器的剩余计时时长大于或等于所述持续时长,则维持计时器的剩余计时时长不变;
如果所述计时器的剩余计时时长小于所述持续时长,则将所述计时器的剩余计时时长更新为所述持续时长;
如果当前不存在计时器,则生成计时器,并设置生成的计时器的计时时长为所述持续时长。
5.根据权利要求4所述的界面渲染方法,其特征在于,还包括:
当检测到生成计时器时,将所述窗口界面对应的计数器的数值加一;
当检测到所述计时器到达计时时长时,释放到达计时时长的计时器,并将所述计数器的数值减一;
所述监控是否存在与所述窗口界面对应的尚未终止计时的计时器,包括:
监控所述计数器的数值是否为零;
当所述计数器的数值为零时,则确定所述窗口界面中不存在尚未结束的所述连续动画事件。
6.根据权利要求5所述的界面渲染方法,其特征在于,在所述获取所述目标触发事件触发的所述连续动画事件的持续时长之前,还包括:
检测是否存储有所述目标触发事件触发的所述连续动画事件的持续时长;
当存储有所述连续动画事件的持续时长,则执行所述获取所述目标触发事件触发的所述连续动画事件的持续时长的操作;
当未存储所述连续动画事件的持续时长时,将计数器的数值加一,并监控所述连续动画事件是否结束;
当监控到所述连续动画事件结束时,将所述计数器的数值减一。
7.根据权利要求1所述的界面渲染方法,其特征在于,所述窗口界面属于满足预设的低渲染帧数条件的界面,包括:
所述窗口界面属于预置的窗口界面集合,所述窗口界面集合包括:至少一个满足所述低渲染帧数条件的窗口界面。
8.根据权利要求1所述的界面渲染方法,其特征在于,所述低渲染帧数为每秒5帧;
所述高渲染帧数大于或等于每秒30帧。
9.一种界面渲染装置,其特征在于,包括:
界面检测单元,用于当检测到窗口界面被展现时,检测所述窗口界面是否属于满足预设的低渲染帧数条件的界面;所述低渲染帧数条件至少包括:窗口界面所呈现出的画面图像中小于预设比例的小部分区域存在动画,且所述小部分区域存在的动画不属于预设的重点显示内容;
初始渲染子单元,用于如果所述窗口界面属于满足预设的低渲染帧数条件的界面,按照预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第一画面图像;所述预设的低渲染帧数作为所述窗口界面对应的渲染画面图像的常态;
事件监控单元,用于监控所述窗口界面中是否存在满足预设的提升渲染帧数条件的目标触发事件,所述目标触发事件用于触发连续动画事件,所述连续动画事件为向所述窗口界面中播放连续多帧动画;
帧数调整单元,用于监控到所述目标触发事件时,按照预设的高渲染帧数以及所述连续动画事件,向所述窗口界面中渲染并输出当前所需展现的第二画面图像;所述预设的高渲染帧数作为所述窗口界面对应的渲染画面图像的短期异常状态;
动画监控单元,用于监控所述窗口界面中是否存在尚未结束的所述连续动画事件;
帧数恢复单元,用于在所述窗口界面中不存在尚未结束的所述连续动画事件时,按照所述预设的低渲染帧数,向所述窗口界面中渲染并输出当前所需展现的第三画面图像。
10.根据权利要求9所述的界面渲染装置,其特征在于,还包括:
时长获取单元,用于在所述事件监控单元监控到所述目标触发事件时,获取所述目标触发事件触发的所述连续动画事件的持续时长;
计时器设置单元,用于根据所述连续动画事件的持续时长,设置计时器的计时时长;
所述动画监控单元,具体为,用于监控是否存在与所述窗口界面对应的尚未终止计时的计时器,当不存在与所述窗口界面对应的尚未终止计时的计时器,则确定所述窗口界面中不存在尚未结束的所述连续动画事件。
11.根据权利要求10所述的界面渲染装置,其特征在于,所述计时器设置单元,包括:
计时器检测单元,用于检测是否存在计时器;
余时确定单元,用于如果所述计时器检测单元检测到当前存在计时器,则获取所述计时器的剩余计时时长;
第一设置单元,用于如果所述计时器的剩余计时时长大于或等于所述持续时长,则维持计时器的剩余计时时长不变;
第二设置单元,用于如果所述计时器的剩余计时时长小于所述持续时长,则将所述计时器的剩余计时时长更新为所述持续时长;
计时器生成单元,用于如果所述计时器检测单元检测到当前不存在计时器,则为所述窗口界面生成计时器,并设置生成的计时器的计时时长为所述持续时长。
12.根据权利要求11所述的界面渲染装置,其特征在于,还包括:
第一计数单元,用于当检测到生成计时器时,将所述窗口界面对应的计数器的数值加一;
第二计数单元,用于当检测到所述计时器到达计时时长时,释放到达计时时长的计时器,并将所述计数器的数值减一;
所述动画监控单元,包括:
计数器监控单元,用于监控所述计数器的数值是否为零,当所述计数器的数值为零时,则确定所述窗口界面中不存在尚未结束的所述连续动画事件。
13.根据权利要求12所述的界面渲染装置,其特征在于,还包括:
时长检测单元,用于在所述时长获取单元获取所述目标触发事件触发的所述连续动画事件的持续时长之前,检测是否存储有所述目标触发事件触发的所述连续动画事件的持续时长;
所述时长获取单元,具体为,用于在所述时长检测单元检测到存储有所述连续动画事件的持续时长时,获取存储的所述目标触发事件触发的所述连续动画事件的持续时长;
状态监控单元,用于当所述时长检测单元检测到未存储所述连续动画事件的持续时长时,将计数器的数值加一,并监控所述连续动画事件是否结束;
第三计数单元,用于当所述状态监控单元监控到所述连续动画事件结束时,将所述计数器的数值减一。
14.一种计算机设备,其特征在于,包括处理器与存储器;
所述存储器用于存放程序;
所述处理器用于调用所述存储器存放的所述程序,以执行如权利要求1~8任一项所述的界面渲染方法。
15.一种存储介质,其特征在于,所述存储介质中存储有程序,所述程序被计算机设备执行时实现如权利要求1~8任一项所述的界面渲染方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710253768.3A CN107071556B (zh) | 2017-04-18 | 2017-04-18 | 一种界面渲染方法和装置 |
PCT/CN2018/082946 WO2018192417A1 (zh) | 2017-04-18 | 2018-04-13 | 一种界面渲染方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710253768.3A CN107071556B (zh) | 2017-04-18 | 2017-04-18 | 一种界面渲染方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107071556A CN107071556A (zh) | 2017-08-18 |
CN107071556B true CN107071556B (zh) | 2019-12-10 |
Family
ID=59599797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710253768.3A Active CN107071556B (zh) | 2017-04-18 | 2017-04-18 | 一种界面渲染方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107071556B (zh) |
WO (1) | WO2018192417A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107071556B (zh) * | 2017-04-18 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 一种界面渲染方法和装置 |
CN108635851B (zh) * | 2018-05-16 | 2021-07-27 | 网易(杭州)网络有限公司 | 一种游戏画面的处理方法和装置 |
CN109101148A (zh) * | 2018-06-28 | 2018-12-28 | 珠海麋鹿网络科技有限公司 | 一种基于操作对象移动获取对象的窗口响应方法及其装置 |
CN109568951A (zh) * | 2018-11-21 | 2019-04-05 | 北京像素软件科技股份有限公司 | 特效显示调整方法及装置 |
CN110147510B (zh) * | 2019-05-07 | 2022-02-25 | 三星电子(中国)研发中心 | 提取视口内容、根据视口内容的自动交互的方法及装置 |
CN110866940B (zh) * | 2019-11-05 | 2023-03-10 | 广东虚拟现实科技有限公司 | 虚拟画面的控制方法、装置、终端设备及存储介质 |
CN113885974B (zh) * | 2020-07-03 | 2024-02-20 | Oppo(重庆)智能科技有限公司 | 信息展示方法、装置、可穿戴设备及存储介质 |
CN113961277A (zh) * | 2020-07-03 | 2022-01-21 | Oppo广东移动通信有限公司 | 信息展示方法、装置、可穿戴设备及存储介质 |
CN113902609B (zh) * | 2021-03-17 | 2022-06-10 | 广州市保伦电子有限公司 | 一种基于OpenGL嵌入式设备流畅渲染控件动画方法及设备 |
CN117909000A (zh) * | 2022-10-19 | 2024-04-19 | 华为技术有限公司 | 界面生成方法及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010038197A1 (en) * | 2008-09-30 | 2010-04-08 | Nxp B.V. | Profile for frame rate conversion |
CN102831209A (zh) * | 2012-08-13 | 2012-12-19 | 优视科技有限公司 | 网页浏览的渲染处理方法及装置和移动终端 |
CN102831630A (zh) * | 2012-07-26 | 2012-12-19 | 北京小米科技有限责任公司 | 一种动画渲染方法及装置 |
CN106407003A (zh) * | 2016-08-29 | 2017-02-15 | 广州视睿电子科技有限公司 | 屏幕界面显示方法和系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286709B2 (en) * | 2009-07-27 | 2016-03-15 | Dreamworks Animation Llc | Variable frame rate rendering and projection |
US8593463B2 (en) * | 2009-10-27 | 2013-11-26 | Microsoft Corporation | Controlling animation frame rate of applications |
CN103077015B (zh) * | 2012-12-25 | 2015-08-05 | 福州博远无线网络科技有限公司 | 一种动态控制游戏帧率的方法 |
KR20150134772A (ko) * | 2014-05-23 | 2015-12-02 | 엘지전자 주식회사 | 이동 단말기 및 그의 동적 프레임 조절 방법 |
CN106227482B (zh) * | 2016-07-25 | 2019-03-15 | 广东小天才科技有限公司 | 一种游戏画面刷新的控制方法及相关设备 |
CN107071556B (zh) * | 2017-04-18 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 一种界面渲染方法和装置 |
-
2017
- 2017-04-18 CN CN201710253768.3A patent/CN107071556B/zh active Active
-
2018
- 2018-04-13 WO PCT/CN2018/082946 patent/WO2018192417A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010038197A1 (en) * | 2008-09-30 | 2010-04-08 | Nxp B.V. | Profile for frame rate conversion |
CN102831630A (zh) * | 2012-07-26 | 2012-12-19 | 北京小米科技有限责任公司 | 一种动画渲染方法及装置 |
CN102831209A (zh) * | 2012-08-13 | 2012-12-19 | 优视科技有限公司 | 网页浏览的渲染处理方法及装置和移动终端 |
CN106407003A (zh) * | 2016-08-29 | 2017-02-15 | 广州视睿电子科技有限公司 | 屏幕界面显示方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107071556A (zh) | 2017-08-18 |
WO2018192417A1 (zh) | 2018-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107071556B (zh) | 一种界面渲染方法和装置 | |
CN110418151B (zh) | 游戏直播中弹幕信息发送、处理方法、装置、设备、介质 | |
WO2018000661A1 (zh) | 弹幕显示方法及装置 | |
US10744409B2 (en) | Method, apparatus, and storage medium for displaying game data on a desktop of a mobile terminal | |
US20140038708A1 (en) | Virtual viewpoint management system | |
WO2020105477A1 (ja) | ライブ動画を配信するためのシステム、方法、及びプログラム | |
US20230013601A1 (en) | Program trial method, system, apparatus, and device, and medium | |
US11924485B2 (en) | Method and system of displaying a video | |
CN108958828A (zh) | 应用程序预加载方法、装置、存储介质及终端 | |
CN111796884B (zh) | 一种访问控制方法、装置、设备和计算机可读存储介质 | |
US20240267586A1 (en) | Display control method and apparatus, and device and storage medium | |
CN106303655A (zh) | 一种媒体内容播放提示方法及装置 | |
CN108664285A (zh) | 应用程序预加载方法、装置、存储介质及移动终端 | |
US20240184434A1 (en) | Display method and apparatus | |
CN113101633B (zh) | 云游戏的模拟操作方法、装置及电子设备 | |
CN112035206B (zh) | 一种消息处理方法及设备 | |
CN111818371A (zh) | 一种互动视频的管理方法以及相关装置 | |
CN115237314B (zh) | 信息推荐方法、装置和电子设备 | |
CN113347478B (zh) | 显示方法和显示装置 | |
CN109726027B (zh) | 消息查看方法、装置及电子设备 | |
CN111610914A (zh) | 多媒体播放方法、装置、电子设备和存储介质 | |
CN113709308A (zh) | 电子设备的使用监测方法和装置 | |
CN112637409A (zh) | 内容输出方法、装置和电子设备 | |
CN112822558A (zh) | 一种基于在线平台的信息广播方法、装置、设备及介质 | |
CN111773716A (zh) | 检测方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |