[发明专利]一种动态控制游戏帧率的方法有效
申请号: | 201210572824.7 | 申请日: | 2012-12-25 |
公开(公告)号: | CN103077015A | 公开(公告)日: | 2013-05-01 |
发明(设计)人: | 郭锐;刘德建;陈宏展 | 申请(专利权)人: | 福州博远无线网络科技有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 福州市鼓楼区京华专利事务所(普通合伙) 35212 | 代理人: | 宋连梅 |
地址: | 350000 福建省福州市福州*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 动态控制 游戏 方法 | ||
1.一种动态控制游戏帧率的方法,其特征在于:包括如下步骤:
步骤1、设置第一函数调用入口,所述第一函数调用入口是用于执行逻辑处理的函数调用入口;设置第二函数调用入口,所述第二函数调用入口是用于执行画面渲染的函数调用入口;每调用一次第一函数调用入口,即处理一次游戏逻辑,每调用一次第二函数入口,即进行刷新屏幕,进行一次画面渲染;
步骤2、游戏调用一次第一函数调用入口,执行一次游戏的逻辑处理,且记录下此次运行的时刻;
步骤3、分析出所有会对渲染内容和渲染帧率产生影响的地方,统计出游戏对画面渲染帧率的最高需求;
步骤4、判断是否需要调用第二函数调用入口:
若步骤3中的游戏逻辑处理过程中,有修改到渲染的内容,则调用第二函数调用入口,执行步骤5;
若上次调用第二函数调用入口与此次将要调用第二函数调用入口之间的时间间隔超过或等于预设的画面渲染的时间间隔,则调用第二函数调用入口,执行步骤5;所述预设的画面渲染的时间间隔是从预先定义的画面渲染帧率中得到;
若不符合上述两种情况,执行步骤6;
步骤5、进行画面渲染,将游戏画面重新渲染一次,并记录下此次渲染的时刻,然后执行步骤6;
步骤6、计算出最短的程序挂起时间,然后将程序挂起;所述将程序挂起就是使程序线程进入暂停状态,暂停使用CPU;
步骤7、当程序挂起时间消耗完毕,程序苏醒,即程序的线程由暂停状态变为执行状态,此时程序将重新占用CPU;
步骤8、判断是否需要调用第一函数调用入口:若上一次调用第一函数调用入口的时刻和当前时刻的时间间隔,超过或等于预设的逻辑处理的时间间隔,所述预设的逻辑处理的时间间隔是从预先定义的逻辑处理帧率中得,若是,执行步骤2,若否,则直接执行步骤4;
上述步骤2至步骤8在游戏运行过程中,反复循环,直至退出游戏,循环停止。
2.根据权利要求1所述的一种动态控制游戏帧率的方法,其特征在于:所述步骤3中,会对渲染内容和渲染帧率产生影响的地方包括四种模型:
A、即时影响:在调用第一函数调用入口进行逻辑处理时,对游戏内容做了修改,需要尽快从画面上反应出来;
B、最小渲染时间间隔:在调用第二函数调用入口过程中进行,收集游戏中所有对帧率有要求的地方,取各地方帧率要求中最大的帧率作为画面渲染对帧率的要求,这样能保证游戏中所有地方都能流畅显示;
C、渲染事件需求:对渲染时间间隔的要求由事件来触发和结束;
D、最大渲染事件需求:对渲染时间间隔的要求是由事件触发和结束,但它对渲染的需求更高,必须将画面渲染帧率提高到所述预先定义的最大画面渲染帧率,这样才能保证画面的流畅显示。
3.根据权利要求1所述的一种动态控制游戏帧率的方法,其特征在于:所述步骤6具体为:首先计算当前到下一次调用第一函数调用入口进行逻辑处理的时间,再计算当前到下一次调用第二函数调用入口进行画面渲染的时间,取两者的最小值为程序挂起时间,然后将程序挂起。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州博远无线网络科技有限公司,未经福州博远无线网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210572824.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种TCR型无功补偿装置模型辨识方法
- 下一篇:磁选装置和方法