发明内容
本发明为了解决上述问题点而作出,其目的在于提供一种采用动态变帧处理进行画面渲染的动态图像的画面渲染方法及其装置,根据移动通信终端的配置条件,动态地改变画面渲染用帧率,从而提高动态图像的画面渲染效果。
根据本发明的一个方面,提供了一种动态图像的画面渲染方法,以N帧图像作为基准单位进行画面渲染,其包括:优化渲染帧率计算步骤,每次进行画面渲染时,根据对该N帧图像进行画面渲染所需的时间和当前渲染帧率,计算对下一个N帧图像进行画面渲染所用的优化渲染帧率;以及画面渲染步骤,利用上述优化渲染帧率对上述下一个N帧图像进行画面渲染,直到完成对所有图像的渲染;其中,N是1以上的整数。
此外,优选地,在上述优化渲染帧率计算步骤中,根据以下式3计算优化渲染帧率,
优化渲染帧率=INT(1000*N/T)*k (式3)
其中,INT是取整函数,N是每次进行画面渲染时的图像帧数,T是此次渲染上述N帧图像所用的时间,k是优化系数,并且满足0.1≤k≤1.0。
另外,优选地,在上述优化渲染帧率计算步骤之后,还包括阈值条件判断步骤,判断由上述优化渲染帧率计算步骤计算出的优化渲染帧率是否满足阈值条件,如果不满足阈值条件,则重新设定上述优化渲染帧率。
此外,优选地,在上述阈值条件判断步骤中,按照以下式4进行判断,
|优化渲染帧率-当前渲染帧率|/当前渲染帧率≤m (式4)
当不满足上述式4时,将上述优化渲染帧率设定为(1+m)×当前渲染帧率和(1-m)×当前渲染帧率中的最接近上述计算出的优化渲染帧率的值,其中,m是预定的阈值。
另外,优选地,还包括以下步骤:将上述优化渲染帧率同预定的最小帧率及最大帧率进行比较,若小于上述最小帧率,则将上述优化渲染帧率设定成上述最小帧率;若大于上述最大帧率,则将上述优化渲染帧率设定成上述最大帧率。
再者,根据本发明的另一个方面,提供了一种动态图像的画面渲染装置,以N帧图像作为基准单位进行画面渲染处理,其包括:优化渲染帧率计算单元,每次进行画面渲染时,根据对该N帧图像进行画面渲染所需的时间和当前渲染帧率,计算对下一个N帧图像进行画面渲染所用的优化渲染帧率;以及画面渲染单元,利用上述优化渲染帧率对上述下一个N帧图像进行画面渲染,直到完成对所有图像的渲染;其中,N是1以上的整数。
此外,优选地,上述优化渲染帧率计算单元根据以下式3计算优化渲染帧率,
优化渲染帧率=INT(1000*N/T)*k (式3)
其中,INT是取整函数,N是每次进行画面渲染时的图像帧数,T是此次渲染上述N帧图像所用的时间,k是优化系数,并且满足0.1≤k≤1.0。
另外,优选地,还包括阈值条件判断单元,判断由上述优化渲染帧率计算单元计算出的优化渲染帧率是否满足阈值条件,如果不满足阈值条件,则重新设定上述优化渲染帧率。
此外,优选地,上述阈值条件判断单元按照以下式4进行判断,
|优化渲染帧率-当前渲染帧率|/当前渲染帧率≤m (式4)
当不满足上述式4时,将上述优化渲染帧率设定为(1+m)×当前渲染帧率和(1-m)×当前渲染帧率中的最接近上述计算出的优化渲染帧率的值,其中,m是预定的阈值。
另外,优选地,进一步将上述优化渲染帧率同预定的最小帧率及最大帧率进行比较,若小于上述最小帧率,则将上述优化渲染帧率设定成上述最小帧率;若大于上述最大帧率,则将上述优化渲染帧率设定成上述最大帧率。
根据如上所述的本发明,可以动态地改变对每个N帧图像的组进行画面渲染时所用的渲染帧率,使得动态图像的画面渲染效果最优化。
具体实施方式
下面,参照附图来描述本发明涉及的动态图像的画面像渲染方法及其装置。
图1是示出本发明涉及的动态图像的画面渲染方法的流程图。
在移动通信装置中显示游戏画面等动态图像时,对动态图像的画面渲染处理都是以N帧为基准单位进行的,即每次都同样地对N帧图像进行画面渲染。本发明涉及的动态图像的画面渲染方法的要点在于,在按照某一渲染帧率对当前的N帧图像进行画面渲染的同时,计算出对下一个N帧图像进行画面渲染所用的渲染帧率,然后,按照所计算出的该渲染帧率对下一个N帧图像进行画面渲染,依此向后类推直至渲染所有图像。在此,N是根据显示图像的帧率设定的正整数,N值越小,其显示图像的画面显示效果越精细。
具体而言,如图1所示,在开始运行动态图像时,首先在步骤S110进行渲染帧率的初始化,即,将对最初的N帧图像进行画面渲染时所用的当前渲染帧率FPS设定为初始值fps0(即初始渲染帧率)。该初始值fps0可以是根据终端型号(硬件参数)或动态图像的帧率等显示要求而预先设定的渲染帧率,例如可以设定为在该动态图像的测试阶段得到的较佳渲染帧率,也可以根据显示要求设定为其它值。
然后,按照该当前渲染帧率对最初的N帧图像进行画面渲染(步骤120)。
在进行如上所述的画面渲染的同时,计算对下一个N帧图像进行画面渲染时所需要的优化渲染帧率(步骤130)。
计算上述优化渲染帧率的示例如图2所示。首先,在步骤S131,采集按照上述当前渲染帧率(最初为fps0)对当前渲染对象的N帧图像进行画面渲染所需要的时间T,并计算出渲染每帧图像所需要的平均渲染时间Avg,该平均渲染时间按照以下式1计算。
Avg=T/N (式1)
然后,在步骤S132,利用计算出的渲染每帧图像所需要的平均渲染时间Avg,按照如下式2计算所使用的移动通信终端满负荷运行时的最大帧率Ultra_FPS。
Ultra_FPS=INT(1000/Avg) (式2)
在上述式2中,INT是取整函数。
接着,在步骤S133,为了避免移动通信终端在满负荷运行下会产生的界面操作响应迟滞等问题,对取得的上述最大帧率乘以优化系数k,计算出最终的对下一个N帧图像进行画面渲染时所需要的优化渲染帧率Ultra_FPS*k,其中,0.1≤k≤1.0,该优化系数根据移动通信终端的配置条件、操作系统的参数等预先设定。
因此,最终计算出的优化渲染帧率Optimize_FPS如以下式3所示。
Optimize_FPS=INT(1000*N/T)*k (式3)
此外,在如上所述地计算出优化渲染帧率之后,为了使动态图像的画面切换更加平滑,还可以设置判断该优化渲染帧率是否满足阈值条件的步骤(步骤S140)。具体地说,判断是否满足阈值条件的基准是,确认|Optimize_FPS-FPS|/FPS的值是否不大于预先设定的阈值m。该阈值m根据移动通信终端的配置条件和图像显示要求而预先设定,例如该阈值m可以设定为0.1≤m≤1.0。
当|Optimize_FPS-FPS|/FPS的值大于上述阈值m时(步骤S140的“否”),将对下一个N帧图像进行画面渲染所用的优化渲染帧率设定为能够使|Optimize_FPS-FPS|/FPS≤m的渲染帧率,即(1+m)*FPS和(1-m)*FPS中的最接近上述计算出的优化渲染帧率的值(步骤S150)。否则(步骤S140的“是”),不必重新设定优化渲染帧率。
再者,为了保证动态图像的画面渲染质量在可控范围内,还可以限定画面渲染所用的上述优化渲染帧率处于最小帧率和最大帧率之间,其中最大帧率是能够完美地运行动态图像所需要的最大帧率值,最小帧率是运行动态图像时可以容忍的最小帧率值。即,将上述优化渲染帧率同该最小帧率及最大帧率进行比较,如果上述优化渲染帧率小于该最小帧率,则将上述优化渲染帧率设定成该最小帧率;如果上述优化渲染帧率大于该最大帧率,则将上述优化渲染帧率设定成该最大帧率。
然后,在步骤S160,将当前渲染帧率设定为上述最终得到的优化渲染帧率,准备对下一个N帧图像进行画面渲染。
接着,在步骤S170判断是否已经对所有动态图像执行了画面渲染,如果还有未渲染的动态图像(步骤S170的“否”),则按照更新后的当前渲染帧率对下一个N帧图像进行画面渲染。依此类推,直到完成所有动态图像的画面渲染工作。
当已经完成所有图像的画面渲染时(步骤S170的“是”),结束画面渲染处理。
如上所述,本发明涉及的动态图像画面渲染方法中,可以动态地改变对每个N帧图像的组进行画面渲染时所用的渲染帧率,使得动态图像的画面渲染效果最优化。
图3是示出本发明涉及的动态图像画面渲染装置的结构示意图。
如图3所示,本发明涉及的动态图像的画面渲染装置包括:渲染帧率初始化单元310、优化渲染帧率计算单元320、阈值判断单元330以及画面渲染单元340。同样,在该动态图像的画面渲染装置中,同样以N帧图像作为基准单位对动态图像进行渲染。
其中,渲染帧率初始化单元310执行渲染帧率的初始化,即,将对最初的N帧图像进行画面渲染时所用的当前渲染帧率FPS设定为初始值fps0(即初始渲染帧率)。该初始值fps0是根据动态图像的分辨率等显示要求而预先设定的渲染帧率,例如可以设定为在该动态图像的测试阶段得到的较佳渲染帧率。
优化渲染帧率计算单元320计算对下一个N帧图像进行画面渲染时所用的优化渲染帧率。具体地说,根据以下式3计算优化渲染帧率Optimize_FPS。
Optimize_FPS=INT(1000*N/T)*k (式3)
其中,N是每次进行画面渲染时的图像帧数,T是此次渲染N帧图像所用的时间,k是优化系数,该优化系数根据移动通信终端的配置条件、操作系统的参数等预先设定,并且满足0.1≤k≤1.0。
再者,阈值判断单元330判断上述计算得到的优化渲染帧率是否满足阈值条件。如果满足阈值条件,则将该优化渲染帧率设定成对下一个N帧图像进行画面渲染时所用的当前渲染帧率。如果不满足阈值条件,则重新设定上述优化渲染帧率的值,并且将重新设定的优化渲染帧率作为对下一个N帧图像进行画面渲染时所用的当前渲染帧率。阈值判断的内容和重新设定优化渲染帧率的内容,同如上所述的画面渲染方法的说明中记载的阈值判断步骤及重新设定优化渲染帧率的步骤基本相同,在此省略对其说明。画面渲染单元340利用上述优化渲染帧率对下一个N帧图像进行画面渲染。
此外,还可以将上述优化渲染帧率同最小帧率及最大帧率进行比较,如果上述优化渲染帧率小于该最小帧率,则将上述优化渲染帧率设定成该最小帧率;如果上述优化渲染帧率大于该最大帧率,则将上述优化渲染帧率设定成该最大帧率。
在如上所述的动态图像的画面渲染装置中,也是在按照已设定的渲染帧率对当前的N帧图像进行画面渲染的同时,计算出对下一个N帧图像进行画面渲染时要使用的优化渲染帧率,然后按照该优化渲染帧率对下一个N帧图像进行渲染,如此重复,直到对所有图像进行了画面渲染。
如上所述,根据本发明,基于动态图像的画面渲染作业的状况,对作为渲染对象的每组N帧图像动态地计算渲染帧率,因此,能够提高动态图像的渲染效果,使得动态图像的现实效果最佳。
在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上对本发明所提供的动态图像的画面渲染方法和装置进行改进,而这些改进都落在本发明的保护范围内。本领域技术人员应该明白,上述的具体描述只是更好地解释本发明的目的,本发明的保护范围由权利要求及其等同物限定。