CN103077015B - 一种动态控制游戏帧率的方法 - Google Patents
一种动态控制游戏帧率的方法 Download PDFInfo
- Publication number
- CN103077015B CN103077015B CN201210572824.7A CN201210572824A CN103077015B CN 103077015 B CN103077015 B CN 103077015B CN 201210572824 A CN201210572824 A CN 201210572824A CN 103077015 B CN103077015 B CN 103077015B
- Authority
- CN
- China
- Prior art keywords
- function call
- picture
- game
- entrance
- frame per
- 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
Landscapes
- Telephone Function (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种动态控制游戏帧率的方法,其将逻辑处理和画面渲染的帧率分开,在每次调用第一函数调用入口后,就统计当前游戏对渲染帧率的需求,来决定是否立即调用第二函数调用入口,以及下一次调用第一函数调用入口或者第二函数调用入口的时间间隔,然后将程序挂起,下次重新运行时,根据记录的上次调用第一函数调用入口的时间,再决定是否调用第一函数调用入口,以及再统计游戏对渲染帧率的需求,从而实现对画面渲染帧率的动态控制。本发明只在需要的时候才画面渲染,这样就在保证正常响应速度和画面流畅度的情况下,最大限度地降低了CPU的占用率,从而降低电池电量的消耗。
Description
【技术领域】
本发明涉及一种动态控制游戏帧率的方法。
【背景技术】
随着智能手机的配置越来越高,市场占有率越来越高,针对手机平台开发的游戏也越来越多,人们随时随地可以打开手机享受游戏的乐趣,但在手机上玩游戏,手机很容易发热,电池电量减少得很快,这就影响到手机的正常使用,一旦电耗完了,就无法进行通信。
手机游戏画面的实现原理和电影一样,在单位时间内使用固定的帧率刷新画面,每刷新一次画面,就要进行一次画面渲染。在个人电脑上的游戏,其帧率一般在30~75左右。使用固定帧率的缺点就是,当游戏画面是静止时,程序刷新画面就显得多余了,这在电脑上问题不大,但在手机上,就消耗了本来可以节省下来的电量。
游戏的主要功能可以划分为,逻辑处理和画面渲染。对于游戏,所述逻辑是指与画面渲染无直接关系的处理,比如网络消息包的接收和发送,鼠标事件的捕获和处理等,逻辑处理只是内存中的数据运算,只占用很少的CPU,真正占用CPU最大的是画面渲染,所以优化从画面渲染入手。CPU占用率越高,电池电量消耗速度越快。
如图1所示,直线表示程序运行时的时间进度,直线上方的椭圆表示逻辑处理的调用,直线下方的椭圆表示画面渲染的调用,游戏都会以一定的帧率来进行逻辑处理和画面渲染,比如60FPS(60Frames per Second),就是每秒刷新60次,每次刷新先进行逻辑处理(比如接收服务器传回的数据,判断做什么样的攻击动作等),然后进行一次画面渲染,显示新的游戏内容。在间隔的时间段里,程序处于挂起状态,不占用CPU,基本不消耗电量。帧率的高低会影响游戏的响应速度和画面流畅度,如果帧率太低,游戏反应变慢,并且游戏画面会显得断断续续。如果帧率太高,则CPU的占用会变高,电量消耗会增加。所以一般会选择一个刚好能使画面显示流畅的帧率,一般手机上休闲类游戏20FPS即能满足需求。如果是动作类游戏,就需要30FPS甚至更高。固定的帧率,就可能在很多不必要的情况下,重新刷新渲染了画面。本发明要解决的技术问题就是通过动态控制帧率降低冗余的画面渲染,使画面保持流畅的情况下,渲染的帧率能够最大限度地降低。
【发明内容】
本发明要解决的技术问题,在于提供一种动态控制游戏帧率的方法,其将逻辑处理和画面渲染的帧率分开,保持逻辑处理的帧率不变,而对画面刷新的帧率进行动态控制。
本发明是这样实现的:
一种动态控制游戏帧率的方法,包括如下步骤:
步骤1、设置第一函数调用入口,所述第一函数调用入口是用于执行逻辑处理的函数调用入口;设置第二函数调用入口,所述第二函数调用入口是用于执行画面渲染的函数调用入口;每调用一次第一函数调用入口,即处理一次游戏逻辑,每调用一次第二函数调用入口,即进行刷新屏幕,进行一次画面渲染;
步骤2、游戏调用一次第一函数调用入口,执行一次游戏的逻辑处理,且记录下此次运行的时刻;
步骤3、分析出所有会对渲染内容和渲染帧率产生影响的地方,统计出游戏对画面渲染帧率的最高需求;
步骤4、判断是否需要调用第二函数调用入口:
若步骤3中的游戏逻辑处理过程中,有修改到渲染的内容,则调用第二函数调用入口,执行步骤5;
若上次调用第二函数调用入口与此次将要调用第二函数调用入口之间的时间间隔超过或等于预设的画面渲染的时间间隔,则调用第二函数调用入口,执行步骤5;所述预设的画面渲染的时间间隔是从预先定义的画面渲染帧率中得到;
若不符合上述两种情况,执行步骤6;
步骤5、进行画面渲染,将游戏画面重新渲染一次,并记录下此次渲染的时刻,然后执行步骤6;
步骤6、计算出最短的程序挂起时间,然后将程序挂起,所述将程序挂起就是使程序线程进入暂停状态,暂停使用CPU;程序挂起时,将不占用CPU,相应的电量消耗就会减少。
步骤7、当程序挂起时间消耗完毕,程序苏醒,即程序的线程由暂停状态变为执行状态,此时程序将重新占用CPU;
步骤8、判断是否调用第一函数调用入口:若上一次调用第一函数调用入口的时刻和当前时刻的时间间隔,超过或等于预设的逻辑处理的时间间隔,所述预设的逻辑处理的时间间隔是从预先定义的逻辑处理帧率中得,若是,执行步骤2,若否,则直接执行步骤4;
上述步骤2至步骤8在游戏运行过程中,反复循环,直至退出游戏,循环停止。
进一步地,所述步骤3中,会对渲染内容和渲染帧率产生影响的地方包括四种模型:
A、即时影响:在调用第一函数调用入口进行逻辑处理时,对游戏内容做了修改,需要尽快从画面上反应出来;
B、最小渲染时间间隔:在调用第二函数调用入口过程中进行,收集游戏中所有对帧率有要求的地方,取各地方帧率要求中最大的帧率作为画面渲染对帧率的要求,这样能保证游戏中所有地方都能流畅显示;
C、渲染事件需求:对渲染时间间隔的要求由事件来触发和结束;
D、最大渲染事件需求:对渲染时间间隔的要求是由事件触发和结束,但它对渲染的需求更高,必须将画面渲染帧率提高到预先定义的最大画面渲染帧率,这样才能保证画面的流畅显示。
进一步地,所述步骤6具体为:首先计算当前到下一次调用第一函数调用入口进行逻辑处理的时间,再计算当前到下一次调用第二函数调用入口进行画面渲染的时间,取两者的最小值为程序挂起时间,然后将程序挂起。
本发明具有如下优点:
通过追踪并统计当前屏幕范围内所有可见内容的变化情况,包括当前是否有变化以及下一次变化的时间间隔,然后决定当前是否需要画面渲染以及下一次画面渲染的时间。因此只在需要的时候才画面渲染,这样就在保证正常响应速度和画面流畅度的情况下,最大限度地降低了CPU的占用率,从而降低电池电量的消耗。
【附图说明】
下面参照附图结合实施例对本发明作进一步的说明。
图1为现有技术的示意图。
图2为本发明的流程图。
图3为本发明的效果图。
【具体实施方式】
请参阅图2,一种动态控制游戏帧率的方法,包括如下步骤:
步骤1、设置第一函数调用入口,例如可将第一函数调用入口自定义为Process(),所述第一函数调用入口是用于执行逻辑处理的函数调用入口;设置第二函数调用入口,例如可将第二函数调用入口自定义为Render(),所述第二函数调用入口是用于执行画面渲染的函数调用入口;每调用一次第一函数调用入口,即处理一次游戏逻辑,每调用一次第二函数调用入口,即进行刷新屏幕,进行一次画面渲染;
步骤2、游戏调用一次第一函数调用入口,执行一次游戏的逻辑处理,且记录下此次运行的时刻;
步骤3、分析出所有会对渲染内容和渲染帧率产生影响的地方,统计出游戏对画面渲染帧率的最高需求(也就是帧与帧之间的时间间隔的最小值)。帧率是指单位时间(通常是一秒)内,画面进行了多少次渲染。比如帧率是30,指一秒内游戏画面刷新渲染了30次,对应的帧与帧之间的时间间隔就是1/30=0.033秒);
所述会对渲染内容和渲染帧率产生影响的地方包括四种模型:
A、即时影响:在调用第一函数调用入口进行逻辑处理时,对游戏内容做了修改,需要尽快从画面上反应出来;例如,在调用第一函数调用入口里对游戏内容作出了修改,需要尽快从画面上反应出来,又如,修改了界面控件上显示的文字,修改了人物当前的动作等,需要尽快从画面上反应出来;
B、最小渲染时间间隔:在调用第二函数调用入口过程中进行,收集游戏中所有对帧率有要求的地方,例如界面在显示有闪烁效果的文字,那它对帧率的时间间隔要求就是它的闪烁间隔时间,又如人物在行走,行走动作1秒完成一次,动作资源共有20帧,那么1秒就需要播放20次,即它要求的渲染时间间隔就是50毫秒;取各地方帧率要求中最大的帧率作为画面渲染对帧率的要求,这样能保证游戏中所有地方都能流畅显示;
C、渲染事件需求:对渲染时间间隔的要求由事件来触发和结束;例如手势产生的滑动效果,例如翻页的效果模拟,当在屏幕上划一下手指时,书面由静止变为运行,对帧率的需求开始,翻到下一页后,书面又静止,对帧率的需求就结束了,游戏过程中可能会有多个这样的事件同步发生,只要发生一个,就会提高帧率,一般情况下这类型渲染事件需求,画面渲染帧率设置成与逻辑处理帧率相同的帧率即可完成;
D、最大渲染事件需求:对渲染时间间隔的要求是由事件触发和结束,但它对渲染的需求更高,必须将画面渲染帧率提高到预先定义的最大画面渲染帧率,这样才能保证画面的流畅显示。例如,打开界面时,会播放一个界面由小到大的渐变效果,因为界面渐变过程要在很短的时间内播放完,且要显示得很流畅,与逻辑处理帧率相同的帧率值已经不能满足了,需要较高的帧率,才能保证流畅度;
步骤4、判断是否需要调用第二函数调用入口:
符合以下两种情况,则调用第二函数调用入口,执行步骤5,所述两种情况具体为:一、若步骤3中的游戏逻辑处理过程中,有修改到渲染的内容;二、若上次调用第二函数调用入口与此次调用第二函数调用入口之间的时间间隔超过或等于预设的画面渲染的时间间隔;所述预设的画面渲染的时间间隔是从预先定义的画面渲染帧率中得到;比如当前时刻与上次调用的时刻相差55毫秒,而当前对画面渲染帧率的要求是20帧每秒,即每帧时间间隔是1000毫秒除以20帧,等于50毫秒,55毫秒已经超过了50毫秒,所以就需要调用第二函数调用入口,执行一次游戏画面渲染;
若不符合上述两种情况,执行步骤6;
步骤5、进行画面渲染,将游戏画面重新渲染一次,然后执行步骤6;
步骤6、计算出最短的程序挂起时间,将程序挂起,具体为:首先计算当前到下一次需要调用第一函数调用入口进行逻辑处理的时间,再计算当前到下一次需要调用第二函数调用入口进行画面渲染的时间,取两者的最小值为程序挂起时间,然后将程序挂起;
所述将程序挂起就是使程序线程进入暂停状态,暂停使用CPU;比如在Windows平台上,就是使用Windows API提供的Sleep()函数使程序进入暂停状态;
步骤7、当程序挂起时间消耗完毕,程序苏醒,即程序的线程由暂停状态变为执行状态,此时程序将重新使用CPU;
步骤8、判断是否需要调用第一函数调用入口:若上一次调用第一函数调用入口的时刻和当前时刻的时间间隔,超过或等于预设的逻辑处理的时间间隔,所述预设的逻辑处理的时间间隔是从预先定义的逻辑处理帧率中得,若是,执行步骤2,若否,直接执行步骤4;
上述步骤2至步骤8在游戏运行过程中,反复循环,直至退出游戏,循环停止。
请参阅图3,图中显示实施本发明动态控制游戏帧率方法后的效果图。图中直线表示程序运行时的时间进度,直线上方的椭圆表示逻辑处理的调用,直线下方的椭圆表示画面渲染的调用。本发明在实际游戏项目《91富人国》中,成功将画面渲染的帧率最低降到5帧,使得CPU占用率在绝大情况下小于10%,玩一整天的游戏,手机背后也不会发热,手机电池的续航能力显著增加。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (3)
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具体为:首先计算当前到下一次调用第一函数调用入口进行逻辑处理的时间,再计算当前到下一次调用第二函数调用入口进行画面渲染的时间,取两者的最小值为程序挂起时间,然后将程序挂起。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210572824.7A CN103077015B (zh) | 2012-12-25 | 2012-12-25 | 一种动态控制游戏帧率的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210572824.7A CN103077015B (zh) | 2012-12-25 | 2012-12-25 | 一种动态控制游戏帧率的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103077015A CN103077015A (zh) | 2013-05-01 |
CN103077015B true CN103077015B (zh) | 2015-08-05 |
Family
ID=48153553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210572824.7A Active CN103077015B (zh) | 2012-12-25 | 2012-12-25 | 一种动态控制游戏帧率的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103077015B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103366391B (zh) * | 2013-06-26 | 2016-07-06 | 广州市动景计算机科技有限公司 | 动态图像的画面渲染方法及画面渲染装置 |
CN103778656B (zh) * | 2014-02-12 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 一种图像渲染方法、装置及电子设备 |
CN105611316B (zh) * | 2014-11-21 | 2019-05-03 | 华为终端(东莞)有限公司 | 一种调整帧率的方法、装置及系统 |
CN105049609B (zh) * | 2015-06-29 | 2019-05-03 | 惠州Tcl移动通信有限公司 | 一种优化游戏画面的方法及系统 |
CN105975355B (zh) * | 2016-05-24 | 2019-06-25 | 四川苏格通讯技术有限公司 | 一种绘图方法、装置及移动设备 |
JP6288882B1 (ja) * | 2016-12-12 | 2018-03-07 | 株式会社コナミデジタルエンタテインメント | ゲーム制御装置、ゲームシステム、及びプログラム |
WO2018157376A1 (zh) * | 2017-03-03 | 2018-09-07 | 小天才科技有限公司 | 一种绘图操作的控制方法、装置及游戏机 |
CN106817755A (zh) * | 2017-03-20 | 2017-06-09 | 北京白鹭时代信息技术有限公司 | 一种降低移动终端耗电的方法及装置 |
CN107071556B (zh) * | 2017-04-18 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 一种界面渲染方法和装置 |
CN108984293B (zh) * | 2017-06-01 | 2021-12-21 | 网易(杭州)网络有限公司 | 游戏内容的显示方法及装置、存储介质、处理器和终端 |
CN107222510B (zh) * | 2017-07-21 | 2018-10-09 | 腾讯科技(深圳)有限公司 | 一种游戏同步方法、系统及相关设备 |
CN108721898B (zh) * | 2018-06-01 | 2022-02-22 | 深圳市腾讯网络信息技术有限公司 | 帧率的确定方法和装置、存储介质、电子装置 |
CN108810554B (zh) | 2018-06-15 | 2021-06-22 | 腾讯科技(深圳)有限公司 | 虚拟场景的场景图像传输方法、计算机设备及存储介质 |
CN109985384B (zh) * | 2019-03-21 | 2022-10-04 | 网易(杭州)网络有限公司 | 贴图动态调整方法及装置 |
CN112789651B (zh) | 2019-03-27 | 2023-07-18 | 华为技术有限公司 | 一种应用于终端的频率调整方法、装置及电子设备 |
CN111494942B (zh) * | 2020-04-16 | 2022-02-22 | 腾讯科技(深圳)有限公司 | 动画播放方法、装置、终端和存储介质 |
CN114510274A (zh) * | 2020-11-16 | 2022-05-17 | 深圳市万普拉斯科技有限公司 | 电子设备的画面帧率调整方法、电子装置及存储介质 |
CN113316020B (zh) * | 2021-05-28 | 2023-09-15 | 上海曼恒数字技术股份有限公司 | 一种渲染方法、装置、介质及设备 |
CN113750527B (zh) * | 2021-09-10 | 2023-09-01 | 福建天晴数码有限公司 | 一种高准确度的帧率控制方法及其系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102736940A (zh) * | 2012-06-21 | 2012-10-17 | 北京像素软件科技股份有限公司 | 一种资源加载方法 |
CN102831209A (zh) * | 2012-08-13 | 2012-12-19 | 优视科技有限公司 | 网页浏览的渲染处理方法及装置和移动终端 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100460009B1 (ko) * | 2004-06-23 | 2004-12-04 | 엔에이치엔(주) | 이미지 리소스를 로딩하는 방법 및 이미지 리소스 로딩시스템 |
US7890985B2 (en) * | 2006-05-22 | 2011-02-15 | Microsoft Corporation | Server-side media stream manipulation for emulation of media playback functions |
-
2012
- 2012-12-25 CN CN201210572824.7A patent/CN103077015B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102736940A (zh) * | 2012-06-21 | 2012-10-17 | 北京像素软件科技股份有限公司 | 一种资源加载方法 |
CN102831209A (zh) * | 2012-08-13 | 2012-12-19 | 优视科技有限公司 | 网页浏览的渲染处理方法及装置和移动终端 |
Also Published As
Publication number | Publication date |
---|---|
CN103077015A (zh) | 2013-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103077015B (zh) | 一种动态控制游戏帧率的方法 | |
CN114242019B (zh) | 控制显示性能 | |
RU2627222C2 (ru) | Энергоэффективная передача контента по беспроводному соединению | |
US8754904B2 (en) | Virtualization method of vertical-synchronization in graphics systems | |
CN109308173B (zh) | 显示方法及装置、显示终端及计算机存储介质 | |
US20200410738A1 (en) | Controlling display performance using display statistics and feedback | |
CN102968978A (zh) | 一种显示刷新率的控制方法及装置 | |
CN103444236B (zh) | 管理入口应用程序的方法和移动装置 | |
JP6708734B2 (ja) | ナビゲーション画像の描画方法、装置及び記憶媒体 | |
WO2021161174A1 (en) | Preloading of applications and in-application content in user devices | |
CN105446593A (zh) | 一种游戏动态图标控制方法及装置 | |
CN108845840A (zh) | 应用程序声音的管理方法、装置、存储介质及智能终端 | |
Peters et al. | Phase-aware web browser power management on hmp platforms | |
CN103513974A (zh) | 一种动态图标按钮的实现方法和装置 | |
CN109429091A (zh) | 提升直播观看体验的方法、存储介质、电子设备及系统 | |
US8773442B2 (en) | Aligning animation state update and frame composition | |
CN102521866A (zh) | 一种角色动画实现方法及系统 | |
Chen et al. | A User-Centric CPU-GPU Governing Framework for 3-D Mobile Games | |
KR20150008010A (ko) | 스마트 디바이스의 사용을 관리하기 위한 방법, 비일시성의 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
Peters et al. | API for power-aware application design on mobile systems | |
CN102402968B (zh) | 一种根据预设帧率进行刷屏的方法和装置 | |
US10643525B2 (en) | Dynamic sleep for a display panel | |
US20230196498A1 (en) | Scheduling techniques in split rendering | |
KR20220155422A (ko) | 정보 디스플레이 방법 및 장치, 단말기, 저장 매체 및 컴퓨터 프로그램 제품 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160107 Address after: 100000, No. two, building 17, Zhongguancun Software Park, 8 northeast Wang Xi Road, Beijing, Haidian District, A2 Patentee after: BAIDU.COM TIMES TECHNOLOGY (BEIJING) Co.,Ltd. Address before: 350000, 403A building, four floor, Torch Innovation Building, 8 star road, Fuzhou Development Zone, Fuzhou, Fujian, China Patentee before: Fuzhou Boyuan Wireless Network Technology Co., Ltd. |