CN114632329B - 终端设备性能调节方法和相关装置 - Google Patents
终端设备性能调节方法和相关装置 Download PDFInfo
- Publication number
- CN114632329B CN114632329B CN202210525898.9A CN202210525898A CN114632329B CN 114632329 B CN114632329 B CN 114632329B CN 202210525898 A CN202210525898 A CN 202210525898A CN 114632329 B CN114632329 B CN 114632329B
- Authority
- CN
- China
- Prior art keywords
- game
- scene
- game scene
- instruction stream
- rendering instruction
- 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
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000009877 rendering Methods 0.000 claims abstract description 213
- 238000004590 computer program Methods 0.000 claims description 18
- 230000006870 function Effects 0.000 description 22
- 238000004891 communication Methods 0.000 description 20
- 230000006854 communication Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 16
- 238000007726 management method Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 239000012141 concentrate Substances 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000001356 surgical procedure Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3265—Power saving in display device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1407—General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/10—Intensity circuits
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/552—Details of game data or player data management for downloading to client devices, e.g. using OS version, hardware or software profile of the client device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5012—Processor sets
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Controls And Circuits For Display Device (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例提供一种终端设备性能调节方法和相关装置,应用于终端技术领域。方法包括:获取游戏渲染指令流;根据游戏渲染指令流,确定游戏场景;其中,游戏场景用于表示游戏应用中的运行阶段;根据游戏场景,调节终端设备的性能,终端设备的性能包括:屏幕刷新率、处理器性能和/或屏幕亮度。终端设备在进入游戏应用程序后,通过获取游戏渲染指令来确定游戏场景,并根据游戏场景来调节屏幕刷新率和其它设备性能,可以通过调节屏幕刷新率来提升游戏的帧率,从而使得终端设备在游戏中不再受限于某一固定的屏幕刷新率,提升游戏的流畅性;也可以根据不同游戏场景来调节处理器性能和/或屏幕亮度,增加用户的游戏体验。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种终端设备性能调节方法和相关装置。
背景技术
随着终端技术的发展,越来越多的终端设备支持游戏应用,游戏应用对终端设备的屏幕刷新率和设备性能有一定要求,例如,要在游戏应用中达到流畅的视觉效果和人机交互,终端设备往往需要较高的屏幕刷新率和较好的设备性能。
一种实现中,为了达到较好的游戏效果,终端设备在进入游戏应用后,会根据游戏应用当前的显示帧率调节终端设备的屏幕刷新率,使得终端设备的屏幕刷新率与游戏应用的显示帧率相适应,并且终端设备会保持该调节后的屏幕刷新率,直到退出该游戏应用。
但是,在上述实现中,经常会出现游戏应用的流畅性差的问题。
发明内容
本申请实施例提供一种终端设备性能调节方法和相关装置,应用于终端设备。根据游戏场景来调节屏幕刷新率和其它设备性能,进而改善游戏应用中出现的流畅性问题。
第一方面,本申请实施例提出一种终端设备性能调节方法,应用于终端设备,该方法包括:获取游戏渲染指令流;根据游戏渲染指令流,确定游戏场景;其中,游戏场景用于表示游戏应用中的运行阶段;根据游戏场景,调节终端设备的性能,终端设备的性能包括:屏幕刷新率、处理器性能和/或屏幕亮度。
这样,终端设备在进入游戏应用程序后,通过获取游戏渲染指令来确定游戏场景,并根据游戏场景来调节屏幕刷新率和其它设备性能,可以通过调节屏幕刷新率来提升游戏的帧率,从而使得终端设备在游戏中不再受限于某一固定的屏幕刷新率,提升游戏的流畅性;也可以根据不同游戏场景来调节处理器性能和/或屏幕亮度,增加用户的游戏体验。
可选的,根据游戏渲染指令流,确定游戏场景,包括:获取游戏渲染指令流中的顶点数量和调用绘制指令次数;根据顶点数量和/或调用绘制指令次数,确定游戏渲染指令流对应的游戏场景。
这样,在获取到游戏渲染指令流后,可以根据游戏渲染指令流中的顶点数量和/或调用绘制指令次数,来确定游戏渲染指令流对应的游戏场景,进而可以根据游戏场景对终端设备的性能进行调节,使得用户在不同的游戏场景下均可以获得较好的游戏体验。
可选的,根据顶点数量和/或调用绘制指令次数,确定游戏渲染指令流对应的游戏场景,包括:根据游戏渲染指令流中的顶点数量、调用绘制指令次数和渲染通道数量,确定变异系数;当变异系数小于或等于第一阈值时,根据顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景;场景查询表中包括各游戏场景与各游戏场景中的顶点数量范围和/或调用绘制指令次数范围的对应关系。
这样,当变异系数大于第一阈值时,则认为游戏场景发生了变化,表示游戏应用程序没有稳定在某一游戏场景下,而是在场景切换的过程中,此时,游戏场景状态不稳定,获取到的游戏场景不准确。当变异系数小于或等于第一阈值时,则表示游戏场景没有发生变化,保持在某一游戏场景下。当变异系数小于或等于第一阈值时,根据顶点数量和/或所述调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,可以获取到较准确的游戏场景。
可选的,根据顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,包括:获取游戏渲染指令流中N帧的顶点数量和/或调用绘制指令次数,N为大于1的整数;根据N帧对应的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
这样,根据多种情况在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,查询方法较灵活。根据顶点数量或调用绘制指令次数任一种因素进行查询,查询起来较为简单快速,节约终端设备的计算资源;根据顶点数量和调用绘制指令次数两种因素进行查询,查询的准确率较高。
可选的,根据N帧对应的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,包括:根据N帧中各帧的顶点数量和/或调用绘制指令次数,确定顶点数量的平均值和/或调用绘制指令次数的平均值;根据顶点数量的平均值和/或调用绘制指令次数的平均值,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
这样,通过计算N帧中各帧的顶点数量的平均值和/或N帧中各帧的调用绘制指令次数的平均值,可以减少单帧误差造成的查询错误,提高准确率。
可选的,根据N帧对应的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,包括:根据N帧中任一帧的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
这样,获取到N帧中任一帧的顶点数量和/或调用绘制指令次数后,可以直接在场景查询表中进行查询,可以减少计算,节约终端设备的计算资源。
可选的,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,包括:在场景查询表中确定顶点数量对应的第一预设区间和/或调用绘制指令次数对应的第二预设区间;根据第一预设区间对应的游戏场景和/或第二预设区间对应的游戏场景,确定游戏渲染指令流对应的游戏场景。
这样,在场景查询表中进行查询时,可以根据顶点数量和/或调用绘制指令次数查询到相应的区间,并根据该区间确定对应的游戏场景,操作较为简单,不会造成终端设备过多的资源占用。
可选的,根据第一预设区间对应的游戏场景和/或第二预设区间对应的游戏场景,确定游戏渲染指令流对应的游戏场景,包括:将第一预设区间对应的游戏场景,或者,第二预设区间对应的游戏场景中的任一个,确定为游戏渲染指令流对应的游戏场景;或者,在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,得到游戏渲染指令流对应的游戏场景。
这样,获取到顶点数量或调用绘制指令次数后,根据场景查询表中该顶点数量对应的第一预设区间或该调用绘制指令次数对应的第二预设区间中任一区间对应的游戏场景,来确定游戏渲染指令流对应的游戏场景时,较为简单快速;在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,可以得到游戏渲染指令流对应的游戏场景,通过该方法得到的游戏场景较为准确。
可选的,获取游戏渲染指令流之前,还包括:在确定进入游戏应用程序时,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率;获取第一预设时间段内游戏应用程序的显示帧率;若第一预设时间段内游戏应用程序的显示帧率稳定在第一帧率,调节终端设备的屏幕刷新率为第一刷新率,第一刷新率大于所述第一帧率,且第一刷新率与第一帧率的差值小于第一预设值;获取游戏渲染指令流,包括:在第一帧率小于最高屏幕刷新率时,获取游戏渲染指令流。
这样,当根据游戏场景对应的显示帧率,调节终端设备的屏幕刷新率时,为确保该游戏应用程序可以达到可达到的最高的显示帧率,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率,并根据该游戏场景对应的显示帧率,实时调节屏幕刷新率,既可以保证游戏的流畅性,以满足用户的游戏体验,又可以降低终端设备的功耗。
可选的,根据游戏渲染指令流,确定游戏场景,包括:根据游戏渲染指令流,确定游戏应用程序依次经过M个预设游戏场景后切换到该游戏场景,M为正整数。
这样,通过获取游戏渲染指令来确定游戏场景的顺序,根据各个游戏场景的不同,来实时调节终端设备的性能。
可选的,M个预设游戏场景包括:大厅界面游戏场景和加载界面游戏场景,游戏场景包括对局内游戏场景。
这样,通过获取游戏渲染指令来确定游戏场景的顺序为大厅界面游戏场景、加载界面游戏场景和对局内游戏场景,根据各个游戏场景对应的显示帧率不同,来实时调节终端设备的屏幕刷新率,尤其是当识别到经过加载界面游戏场景进入到对局内游戏场景时,根据对局内游戏场景的显示帧率,调节终端设备的屏幕刷新率,从而可以提高对局内游戏场景的流畅性,增加用户体验。
可选的,根据游戏场景,调节终端设备的性能,包括:将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率;获取第二预设时间段内游戏场景的显示帧率;若第二预设时间段内游戏场景的显示帧率稳定在第二帧率,调节终端设备的屏幕刷新率为第二刷新率,第二刷新率大于第二帧率,且第二刷新率与第二帧率的差值小于第二预设值。
这样,当根据游戏场景对应的帧率,调节终端设备的屏幕刷新率时,为确保该游戏应用程序可以达到可达到的最高帧率,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率,并根据该游戏场景对应的帧率,实时调节屏幕刷新率,既可以保证游戏的流畅性,以满足用户的游戏体验,又可以降低终端设备的功耗。
可选的,根据游戏场景,调节终端设备的性能,包括:在游戏场景为加载界面游戏场景时,提高终端设备的处理器频率和/或降低终端设备的屏幕亮度;和/或,在游戏场景为对局内游戏场景时,提高终端设备的处理器频率和/或提高终端设备的屏幕亮度。
这样,当游戏场景为加载界面游戏场景时,用户不需要关注游戏界面,则将终端设备的屏幕亮度相应的调低;但由于在加载过程中会进行资源加载、场景预渲染等处理操作,则将终端设备的处理器性能相应的调高,以保证不会掉帧,提升游戏的流畅性。
同时,当游戏场景为对局内游戏场景时,用户需要专注于游戏界面,将终端设备的屏幕亮度相应的调高;由于对局内游戏场景较复杂、对局内游戏角色较多等因素,也会将终端设备的处理器性能随之调高,以保证对局内不会掉帧,提升游戏的流畅性。
第二方面,本申请实施例提供一种终端设备,终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。
该终端设备包括:触摸屏,其中,触摸屏包括触控面板和显示屏;一个或多个处理器;存储器;多个应用程序;以及一个或多个计算机程序,其中一个或多个计算机程序被存储在存储器中,一个或多个计算机程序包括指令,当指令被终端设备执行时,使得终端设备执行以下步骤:获取游戏渲染指令流;根据游戏渲染指令流,确定游戏场景;其中,游戏场景用于表示游戏应用中的运行阶段;根据游戏场景,调节终端设备的性能,终端设备的性能包括:屏幕刷新率、处理器性能和/或屏幕亮度。
可选的,终端设备性能调节装置具体用于执行以下步骤:获取游戏渲染指令流中的顶点数量和调用绘制指令次数;根据顶点数量和/或调用绘制指令次数,确定游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:根据游戏渲染指令流中的顶点数量、调用绘制指令次数和渲染通道数量,确定变异系数;当变异系数小于或等于第一阈值时,根据顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景;场景查询表中包括各游戏场景与各游戏场景中的顶点数量范围和/或调用绘制指令次数范围的对应关系。
可选的,终端设备性能调节装置具体用于执行以下步骤:获取游戏渲染指令流中N帧的顶点数量和/或调用绘制指令次数,N为大于1的整数;根据N帧对应的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:根据N帧中任一帧的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:在场景查询表中确定顶点数量对应的第一预设区间和/或调用绘制指令次数对应的第二预设区间;根据第一预设区间对应的游戏场景和/或第二预设区间对应的游戏场景,确定游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:将第一预设区间对应的游戏场景,或者,第二预设区间对应的游戏场景中的任一个,确定为游戏渲染指令流对应的游戏场景;或者,在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,得到游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:在确定进入游戏应用程序时,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率;获取第一预设时间段内游戏应用程序的显示帧率;若第一预设时间段内游戏应用程序的显示帧率稳定在第一帧率,调节终端设备的屏幕刷新率为第一刷新率,第一刷新率大于所述第一帧率,且第一刷新率与第一帧率的差值小于第一预设值;在第一帧率小于最高屏幕刷新率时,获取游戏渲染指令流。
可选的,终端设备性能调节装置具体用于执行以下步骤:根据游戏渲染指令流,确定游戏应用程序依次经过M个预设游戏场景后切换到游戏场景,M为正整数。
可选的,大厅界面游戏场景和加载界面游戏场景,游戏场景包括对局内游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率;获取第二预设时间段内游戏场景的显示帧率;若第二预设时间段内游戏场景的显示帧率稳定在第二帧率,调节终端设备的屏幕刷新率为第二刷新率,第二刷新率大于第二帧率,且第二刷新率与第二帧率的差值小于第二预设值。
可选的,终端设备性能调节装置具体用于执行以下步骤:在游戏场景为加载界面游戏场景时,提高终端设备的处理器频率和/或降低终端设备的屏幕亮度;和/或,在游戏场景为对局内游戏场景时,提高终端设备的处理器频率和/或提高终端设备的屏幕亮度。
第三方面,本申请实施例提供一种终端设备,包括:处理器和存储器,处理器用于调用存储器中的程序以使终端设备执行上述第一方面所提供的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,当计算机指令在终端设备上运行时,使得终端设备执行上述第一方面所提供的方法。
第五方面,本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行上述第一方面所提供的方法。
上述第二方面至第五方面的各可能的实现方式,其有益效果可以参见上述第一方面所带来的有益效果,在此不加赘述。
附图说明
图1a为本申请实施例所适用的场景中触发游戏应用程序的操作示意图;
图1b为本申请实施例所适用的场景中触发开始游戏的操作示意图;
图1c为本申请实施例所适用的场景中游戏加载界面示意图;
图1d为本申请实施例所适用的场景中游戏对局内界面示意图;
图2为本申请实施例所提供的终端设备的结构示意图;
图3为本申请实施例所提供的终端设备的软件结构框图;
图4为本申请实施例所提供的一种终端设备性能调节方法的流程示意图;
图5为本申请实施例所提供的一种终端设备的屏幕刷新率调节方法的流程示意图;
图6示出了本申请实施例提供的一种终端设备性能调节装置的结构示意图;
图7为本申请实施例提供的一种终端设备性能调节装置的硬件结构示意图。
具体实施方式
为了便于清楚描述本申请实施例的技术方案,以下,对本申请实施例中所涉及的部分术语和技术进行简单介绍:
1)渲染:用软件从模型生成图像的过程。模型是用严格定义的语言或者数据结构对于三维物体的描述,它包括几何、视点、纹理以及照明信息。将三维场景中的模型,按照设定好的环境、灯光、材质及渲染参数,二维投影成数字图像的过程。
2)游戏场景:表示游戏应用中的运行阶段,例如大厅界面游戏场景、加载界面游戏场景或对局内游戏场景等。
3)帧率:每秒显示的帧数,其单位是每秒传输帧数(frames per second,FPS)。帧是影像动画中最小单位的单幅影像画面,一帧就是一幅静止的画面,连续的帧就形成了动画。高的帧率可以得到更流畅和更逼真的动画。每秒钟帧数越多,所显示的动作就会越流畅。
帧率包括输出帧率和显示帧率。输出帧率是指界面或应用程序通过显卡输出给显示屏的帧率。显示帧率是指显示帧率是指界面或应用程序在显示屏上实际显示的帧率。
4)屏幕刷新率:指屏幕每秒画面被刷新的次数,其单位是赫兹(hertz,Hz)。
屏幕刷新率越高,其能支持的帧率越高。例如,如果一个显示屏的刷新率是120Hz,则其既能支持60FPS的帧率,又能支持90FPS的帧率,其最大能支持120FPS的帧率。
但如果屏幕刷新率不够,即使输出帧率较高,最终的显示帧率最多也只能达到屏幕刷新率的值。例如,如果一个显示屏的刷新率为60Hz,即使应用程序的输出帧率是100FPS,最终的显示帧率最多也只能到60FPS。
5)处理器性能:中央处理器(central processing unit,CPU)性能,CPU性能大致上反映出了它所配置的计算机的性能,CPU性能主要取决于其主频和工作效率。
6)屏幕亮度:显示器屏幕的亮度,亮度是衡量显示器屏幕发光强度的重要指标,对于显示器面板来说,高亮度也意味着对其工作环境的抗干扰能力更高。
7)其他术语
在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一芯片和第二芯片仅仅是为了区分不同的芯片,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a--c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
随着终端技术的发展,越来越多的终端设备支持游戏应用,游戏应用对终端设备的屏幕刷新率和设备性能有一定要求。本申请的技术方案可以应用于支持游戏应用的终端设备中,尤其是当终端设备进入游戏应用时,根据游戏场景的不同,对终端设备的屏幕刷新率和设备性能进行调节。
若要在游戏应用中达到流畅的视觉效果和人机交互,终端设备往往需要较高的屏幕刷新率和较好的设备性能。然而,若屏幕持续运行在高刷新率状态下,则会导致终端设备的功耗过高。
在一些实现中,为了达到较好的游戏效果,并且为了避免终端设备产生过高的功耗,终端设备在进入游戏应用后,会根据游戏应用当前所需的显示帧率调节终端设备的屏幕刷新率,使得终端设备的屏幕刷新率与游戏应用的显示帧率相适应。
而在游戏中,不同游戏场景需要的显示帧率不同,例如大厅界面游戏场景或加载界面游戏场景,游戏所需的显示帧率较低,而当游戏进入到对局内游戏场景时,游戏所需的显示帧率较高。
然而,上述根据游戏的显示帧率调节屏幕刷新率的方法中,以游戏中将依次经过大厅界面游戏场景、加载界面游戏场景和对局内游戏场景为例,在进入游戏应用后,终端设备根据大厅界面游戏场景所需的显示帧率,可以将屏幕刷新率固定为某一较低屏幕刷新率,而游戏进入对局内游戏场景时,游戏实际需要更高的显示帧率运行,而受限于终端设备的性能,游戏的显示帧率不可能高于终端设备的屏幕刷新率,这样会导致游戏的显示帧率一直低于该较低屏幕刷新率,以游戏的显示帧率为依据,无法得出需要提升终端设备屏幕刷新率的需求,导致终端设备持续运行在该较低屏幕刷新率,进而会出现流畅性差的问题,影响用户体验。
有鉴于此,本申请实施例提供的终端设备性能调节方法,终端设备在进入游戏应用程序后,通过获取游戏渲染指令流来确定游戏场景,并根据游戏场景来调节屏幕刷新率和其它设备性能,可以通过调节屏幕刷新率来提升游戏的显示帧率,从而使得终端设备在游戏中不再受限于某一固定的屏幕刷新率,提升游戏的流畅性,也可以根据不同游戏场景来调节处理器性能和/或屏幕亮度,增加用户的游戏体验。
本申请实施例提供的方法可以应用于终端设备。终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本申请的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
图1a-图1d示出了本申请实施例的终端设备性能调节方法适用的场景示意图。
当用户点击进入游戏应用程序后,终端设备依次进入到大厅界面游戏场景、加载界面游戏场景和对局内游戏场景。示例性的,当终端设备在图1a所示的界面中,接收到用户点击、触摸等操作触发游戏应用程序101时,终端设备进入游戏应用程序,终端设备的界面显示的内容发生变化,变为图1b所示的界面。
当用户通过点击、触摸等操作触发开始游戏102时,终端设备通过加载界面进入到对局内,终端设备由图1c所示的界面变为图1d所示的界面。
在上述游戏应用运行过程中,终端设备可以根据游戏应用程序中的不同游戏场景,调节终端设备的性能。
示例性的,以终端设备调节屏幕刷新率为例。在确定进入游戏应用程序时,终端设备可以获取游戏渲染指令流来确定游戏场景,并根据游戏场景来调节屏幕刷新率。例如,根据游戏渲染指令流确定游戏场景为大厅界面游戏场景和加载界面游戏场景时,可以调整终端设备为较低的屏幕刷新率,根据游戏渲染指令流确定游戏场景为对局内游戏场景时,可以调整终端设备为较高的屏幕刷新率。
为了能够更好地理解本申请实施例,下面对本申请实施例的终端设备的结构进行介绍:
图2示出了终端设备100的结构示意图。终端设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integratedcircuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现终端设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。I2S接口和PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现终端设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现终端设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为终端设备100充电,也可以用于终端设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,是示意性说明,并不构成对终端设备100的结构限定。在本申请另一些实施例中,终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过终端设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
终端设备100通过图形处理器(graphics processing unit,GPU),显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像、显示视频和接收滑动操作等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organiclight-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diod,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dotlightemitting diodes,QLED)等。在一些实施例中,终端设备100可以包括1个或N个显示屏194,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行终端设备100的各种功能应用以及数据处理。
终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
终端设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构,等。本申请实施例以分层架构的Android系统为例,示例性说明终端设备100的软件结构。
图3是本申请实施例的终端设备的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用层,应用程序框架层,安卓运行时(Androidruntime)和系统库,以及内核层。
应用层可以包括一系列应用程序包。如图3所示,应用程序包可以包括游戏、电话、邮箱、日历、相机等应用程序。
应用程序框架层为应用层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图3所示,应用程序框架层可以包括图形系统、窗口管理器、包管理器、通知管理器、资源管理器等。
图形系统用于管理各个应用程序的图形数据,包括帧缓存、图形绘制流水线等。
窗口管理器(window manager service,WMS)用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
包管理器用于系统内的程序管理,例如:应用程序安装、卸载和升级等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端设备振动,指示灯闪烁等。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
Android runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用层和应用程序框架层运行在虚拟机中。虚拟机将应用层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。虚拟机中还运行有显示合成进程(例如,surfaceflinger)。显示合成进程用于控制图像的合成。
系统库可以包括多个功能模块。例如:场景检测模块、帧率检测模块、屏幕刷新率调节模块、图层管理模块、硬件加速渲染管线和图形渲染库等。
硬件加速渲染管线通过从应用程序框架层中的图形系统中获取图形渲染数据。
场景检测模块通过截获硬件加速渲染管线中开放图形库(Open GraphicsLibrary,OpenGL)或其它图形渲染库中的指令流来实现场景识别。
帧率检测模块与图层管理模块进行交互从而计算得到游戏实时帧率,并通过图层管理模块将每帧图像发送给显示驱动,以在显示器上进行显示。
屏幕刷新率调节模块从内核层中的显示驱动中获取终端设备的屏幕性能信息,并根据从帧率检测模块中获取的游戏实时帧率进行屏幕刷新率的调节。
内核层是硬件和软件之间的层。内核层用于驱动硬件,使得硬件工作。内核层至少包含中央处理器驱动、传感器驱动、显示驱动、音频驱动、摄像头驱动、背光驱动和图形处理器驱动等。
硬件可以是音频设备、蓝牙设备、传感器等。
下面通过具体的实施例对本申请实施例的终端设备性能调节方法进行详细说明。下面的实施例可以相互结合或独立实施,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图4为本申请实施例所提供的一种终端设备性能调节方法的流程示意图。如图4所示,该方法可以包括:
S401、获取游戏渲染指令流。
在本申请实施例中,游戏渲染指令流可以用于反映游戏中所需的帧率的高低,例如,游戏渲染指令流中的渲染指令越多,代表游戏所需的帧率越高。示例性的,游戏渲染指令流可以为图形渲染库OpenGL或Vulkan中的指令流。该游戏渲染指令流中可以包括设置绘制状态指令、绘制指令等。
一种可能的实现中,终端设备可以在确定进入游戏应用后,截获游戏渲染指令流,进而通过游戏渲染指令流执行后续的确定游戏场景的步骤。
另一种可能的实现中,终端设备进入游戏应用后,可以进一步在确定终端设备的屏幕刷新率低于最高屏幕刷新率时,再获取游戏渲染指令流,因为如果终端设备的屏幕刷新率等于最高屏幕刷新率,则不会对游戏的帧率造成影响,这样,可以在终端设备的屏幕刷新率等于最高屏幕刷新率时,不进行获取游戏渲染指令流等步骤,节约终端设备的计算资源。
S402、根据游戏渲染指令流,确定游戏场景。
在本申请实施例中,游戏场景用于表示游戏应用中的运行阶段,例如大厅界面游戏场景、加载界面游戏场景或对局内游戏场景等。
一种的可能的实现中,分析渲染指令流中的信息可以得到顶点数量、调用绘制指令次数和/或渲染通道数量等。
示例性的不同的游戏场景可以对应不同的顶点数量和不同的调用绘制指令次数。例如,在一些游戏中,大厅界面游戏场景对应的顶点数量和调用绘制指令次数较少,而对局内游戏场景对应的顶点数量和调用绘制指令次数较多。
可选的,可以将各游戏场景和对应的顶点数量、调用绘制指令次数和/或渲染通道数量等的对应关系存储在终端设备中,终端设备通过顶点数量、调用绘制指令次数和/或渲染通道数量等来查询对应的游戏场景。
S403、根据游戏场景,调节终端设备的性能。
本申请实施例中,终端设备的性能可以包括:屏幕刷新率、处理器性能和/或屏幕亮度。例如,终端设备的屏幕刷新率越高,游戏画面的流畅性越高。
示例性的,可以根据游戏场景的不同,相应的调节终端设备的性能。
在一种可能的实现中,当游戏场景为加载界面游戏场景时,用户不需要关注游戏界面,则将终端设备的屏幕亮度相应的调低;当游戏场景为对局内游戏场景时,用户需要专注于游戏界面,将终端设备的屏幕亮度相应的调高。
在另一种可能的实现中,当游戏场景为加载界面游戏场景时,由于在加载过程中会进行资源加载、场景预渲染等处理操作,则将终端设备的处理器性能相应的调高;当游戏场景为对局内游戏场景时,由于场景较复杂、对局内游戏角色较多等因素,也会将终端设备的处理器性能随之调高,以保证对局内不会掉帧,提升游戏的流畅性。
在又一种可能的实现中,当游戏场景为对局内游戏场景时,由于该场景对应的帧率较高,则将终端设备的屏幕刷新率相应的调高,通过提高屏幕刷新率来提升游戏的帧率,从而提升游戏的流畅性。
需要说明的是,根据游戏场景的不同,可以分别调节终端设备的屏幕刷新率、处理器性能和屏幕亮度,也可以同时调节屏幕刷新率、处理器性能和屏幕亮度的两种或三种性能。
本申请实施例提供的终端设备性能调节方法,通过获取游戏渲染指令流,根据游戏渲染指令流,确定游戏场景,根据游戏场景,调节终端设备的性能,终端设备的性能包括:屏幕刷新率、处理器性能和/或屏幕亮度。在该方法中,终端设备在进入游戏应用程序后,通过获取游戏渲染指令来确定游戏场景,并根据游戏场景来调节屏幕刷新率和其它设备性能,可以通过调节屏幕刷新率来提升游戏的帧率,从而使得终端设备在游戏中不再受限于某一固定的屏幕刷新率,提升游戏的流畅性;也可以根据不同游戏场景来调节处理器性能和/或屏幕亮度,增加用户的游戏体验。
可选的,在图4对应的实施例的基础上,本申请实施例的方法中:
一种可能的实现中,在根据游戏渲染指令流,确定游戏场景时,获取游戏渲染指令流中的顶点数量和/或调用绘制指令次数,根据顶点数量和/或调用绘制指令次数,确定游戏渲染指令流对应的游戏场景。
在本申请实施例中,在对游戏中的场景进行图形渲染时,以游戏场景里面的物体对应的模型的顶点位置为基础来进行渲染,游戏场景越复杂,对应的顶点数量就越多。调用绘制指令可以用于CPU调用图形编程接口,来命令GPU进行渲染的操作。调用绘制指令可以理解为实际绘制指令,调用绘制指令次数的多少,则表示实际绘制了多少次,例如,调用绘制指令次数为27,则表示实际进行了27次的绘制。
在本申请实施例中,在对游戏场景进行图形渲染的过程中,不同的游戏场景对应不同的顶点数量和调用绘制指令次数。因此,在获取到游戏渲染指令流后,可以根据游戏渲染指令流中的顶点数量和/或调用绘制指令次数,来确定游戏渲染指令流对应的游戏场景,进而可以根据游戏场景对终端设备的性能进行调节,使得用户在不同的游戏场景下均可以获得较好的游戏体验。
一种可能的实现中,在根据顶点数量和/或调用绘制指令次数,确定游戏渲染指令流对应的游戏场景时,根据游戏渲染指令流中的顶点数量、调用绘制指令次数和渲染通道数量,确定变异系数,当变异系数小于或等于第一阈值时,根据顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
在本申请实施例中,场景查询表中可以包括各游戏场景与各游戏场景中的顶点数量范围和/或调用绘制指令次数范围等的对应关系。该场景查询表存储在终端设备的系统配置文件中,表1为一种场景查询表。
表1 场景查询表
在本申请实施例中,变异系数(coefficient of variation,C.V)又称“标准差率”,可以用于衡量变异程度,表示为标准差与平均值的比值的形式,记为C.V。变异系数越小,变异就越小。其中,变异系数的表达式可以如下式(1):
示例性的,当变异系数大于第一阈值时,则认为游戏场景发生了变化,表示游戏应用程序没有稳定在某一游戏场景下,而是在场景切换的过程中,此时,游戏场景状态不稳定,获取到的游戏场景不准确。当变异系数小于或等于第一阈值时,则表示游戏场景没有发生变化,保持在某一游戏场景下。
在本申请实施例中,当变异系数小于或等于第一阈值时,根据顶点数量和/或所述调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,可以获取到较准确的游戏场景。
需要说明的是,不同游戏对应的第一阈值可以一样,也可以不一样。示例性的,可以通过抓取同一游戏下不同场景的渲染指令,统计分析得到第一阈值。第一阈值可以根据实际情况或者经验进行设置,对于第一阈值的具体值,本申请实施例在此不做限制。
示例性的,获取游戏渲染指令流中N帧的顶点数量和/或调用绘制指令次数,根据N帧对应的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
在本申请实施例中,N为大于1的整数。N帧可以为连续获取的。
第一种可能的实现中,根据N帧中各帧的顶点数量和/或调用绘制指令次数,确定顶点数量的平均值和/或调用绘制指令次数的平均值,根据顶点数量的平均值和/或调用绘制指令次数的平均值,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
示例性的,可以根据N帧中各帧的顶点数量的平均值和N帧中各帧的调用绘制指令次数的平均值中的任一个或两个,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
在本申请实施例中,通过计算N帧中各帧的顶点数量的平均值和/或N帧中各帧的调用绘制指令次数的平均值,可以减少单帧误差造成的查询错误,提高准确率。例如,当根据5帧顶点数量在场景查询表中进行查询时,各帧的顶点数量分别为27、30、28、24、31,各帧之间的顶点数量存在差异,若大厅界面游戏场景中的顶点数量范围为25-30,则根据单帧顶点数量进行查询时,若根据第5帧的顶点数量,查询到的游戏场景可能是错的,但5帧中各帧的顶点数量的平均值为28,在该游戏场景中的顶点数量范围内。因此,根据5帧中各帧的顶点数量的平均值进行查询,可以缩小单帧顶点数量误差,提高准确率。
第二种可能的实现中,根据N帧中任一帧的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
示例性的,可以根据N帧中任一帧的顶点数量和N帧中任一帧的调用绘制指令次数中的任一个或两个,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
在本申请实施例中,获取到N帧中任一帧的顶点数量和/或调用绘制指令次数后,可以直接在场景查询表中进行查询,可以减少计算,节约终端设备的计算资源。
在本申请实施例中,可以根据多种情况在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景,查询方法较灵活。根据N帧中任一帧的顶点数量和/或调用绘制指令次数在场景查询表中进行查询时,不需要进行计算,查询起来较为简单快速,节约终端设备的计算资源;根据N帧中各帧的顶点数量的平均值和/或N帧中各帧的调用绘制指令次数在场景查询表中进行查询时,得到的游戏场景较为准确。并且,根据顶点数量和调用绘制指令次数两种因素进行查询时,相比根据顶点数量或调用绘制指令次数任一种因素进行查询来说,可以提高查询的准确率。
示例性的,在场景查询表中进行查询时,在场景查询表中确定顶点数量对应的第一预设区间和/或调用绘制指令次数对应的第二预设区间,并根据第一预设区间对应的游戏场景和/或第二预设区间对应的游戏场景,来确定游戏渲染指令流对应的游戏场景。
在本申请实施例中,顶点数量可以包括任一帧的顶点数量或N帧的顶点数量平均值;调用绘制指令次数包括任一帧的调用绘制指令次数或N帧的调用绘制指令次数平均值。
在本申请实施例中,根据顶点数量对应的第一预设区间和/或调用绘制指令次数对应的第二预设区间,以及第一预设区间对应的游戏场景和/或第二预设区间对应的游戏场景,在场景查询表中进行查询时,可以根据顶点数量和/或调用绘制指令次数查询到相应的区间,并根据该区间确定对应的游戏场景,操作较为简单,不会造成终端设备过多的资源占用。
第一种可能的实现中,将第一预设区间对应的游戏场景,或者,第二预设区间对应的游戏场景中的任一个,确定为游戏渲染指令流对应的游戏场景。
示例性的,获取到顶点数量或调用绘制指令次数后,根据场景查询表中该顶点数量对应的第一预设区间或该调用绘制指令次数对应的第二预设区间中任一区间对应的游戏场景,来确定游戏渲染指令流对应的游戏场景时,较为简单快速。
例如,顶点数量为7798时,在场景查询表中找到7798对应的顶点数量区间,根据该区间得到游戏场景为加载界面游戏场景,或者,调用绘制指令次数为28时,在场景查询表中找到28对应的调用绘制指令次数区间,根据该区间得到游戏场景为大厅界面游戏场景。
第二种可能的实现中,在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,得到游戏渲染指令流对应的游戏场景。
示例性的,根据场景查询表中顶点数量对应的第一预设区间和调用绘制指令次数对应的第二预设区间这两个预设区间,来确定游戏渲染指令流对应的游戏场景时,在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,可以得到游戏渲染指令流对应的游戏场景,若在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景不相同,则需要重新获取游戏渲染指令流中的顶点数量和调用绘制指令次数,通过该方法得到的游戏场景较为准确。
例如,顶点数量为7798,调用绘制指令次数为28,根据顶点数量得到游戏场景为加载界面游戏场景,根据调用绘制指令次数得到游戏场景为大厅界面游戏场景,此时,通过顶点数量和调用绘制指令次数获取到的区间不同,则可以看出通过顶点数量或调用绘制指令次数任一个来获取游戏场景时,可能存在错误。然而,通过顶点数量和调用绘制指令次数来获取游戏场景时,当查询到的区间相同时,才可以获取到游戏场景,可以提高准确率。
示例性的,在以上实施例的基础上,以调节终端设备的调整刷新率为例,图5示出了一种本申请实施例所提供的终端设备的屏幕刷新率调节方法的流程示意图,具体的步骤可以为:
S501、在确定进入游戏应用程序时,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率。
在本申请实施例中,通过截取渲染指令,可以得到该渲染指令所在的应用程序的进程号,并根据该进程号可以识别所进入的应用程序是否为游戏应用程序,其中,该进程号被存储在应用程序中,不同的应用程序对应不同的进程号。
示例性的,当确定进入的应用程序为游戏应用程序时,为确保该游戏应用程序可以达到可达到的最高的显示帧率,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率。例如,终端设备所支持的屏幕刷新率档位为:60Hz、120Hz和240Hz,则将终端设备的屏幕刷新率调节为240Hz。
S502、获取第一预设时间段内游戏应用程序的显示帧率。
在本申请实施例中,第一预设时间段可以根据实际情况或者经验进行设置,例如可以设置为5秒或者7秒等,对于第一预设时间段的具体值,本申请实施例在此不做限制。
示例性的,在进入该游戏应用程序后,获取该游戏应用程序当前的第一预设时间内的显示帧率。例如,进入该游戏应用程序后的游戏场景为大厅界面游戏场景,则获取该大厅界面游戏场景下第一预设时间段内的显示帧率。
S503、若第一预设时间段内游戏应用程序的显示帧率稳定在第一帧率,调节终端设备的屏幕刷新率为第一刷新率。
在本申请实施例中,第一刷新率大于第一帧率,且第一刷新率与第一帧率的差值小于第一预设值。
示例性的,当该游戏应用程序的帧率在第一预设时间段内保持稳定时,将该游戏应用程序的帧率确定为第一帧率,相应的,将终端设备的屏幕刷新率调节为第一刷新率,该第一刷新率为最接近且大于等于第一帧率的屏幕刷新率。
例如,将第一预设时间段设置为5秒,5秒内游戏应用程序的显示帧率稳定在55FPS,终端设备所支持的屏幕刷新率档位为:60Hz、120Hz和240Hz,则将终端设备的屏幕刷新率调节为60Hz。
示例性的,当根据游戏场景对应的显示帧率,调节终端设备的屏幕刷新率时,为确保该游戏应用程序可以达到可达到的最高的显示帧率,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率,并根据该游戏场景对应的显示帧率,实时调节屏幕刷新率,既可以保证游戏的流畅性,以满足用户的游戏体验,又可以降低终端设备的功耗。
S504、在第一帧率小于最高屏幕刷新率时,获取游戏渲染指令流。
示例性的,当第一帧率等于最高屏幕刷新率时,由于屏幕刷新率不能从高向低调节,因此,不再根据显示帧率对屏幕刷新率进行调节,可以节约终端设备的计算资源。例如,将终端设备的屏幕刷新率调节为最高屏幕刷新率240Hz,游戏场景的显示帧率最大可以为240FPS,当游戏场景的显示帧率为40FPS,无法将终端设备的屏幕刷新率从最高屏幕刷新率向低调节。
S505、根据游戏渲染指令流,确定游戏场景。
示例性的,对于步骤S505的具体实现,可以参照步骤S5051-S5053。
S5051、根据游戏渲染指令流中的顶点数量、调用绘制指令次数和渲染通道数量,确定变异系数。
S5052、当变异系数小于或等于第一阈值时,获取游戏渲染指令流中N帧的顶点数量和/或调用绘制指令次数。
S5053、根据N帧对应的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。具体可以分为以下几种情况:
第一种可能的实现中,根据N帧中各帧的顶点数量或N帧中各帧的调用绘制指令次数,确定顶点数量的平均值或调用绘制指令次数的平均值,根据场景查询表中顶点数量的平均值对应的第一预设区间或调用绘制指令次数的平均值对应的第二预设区间,以及第一预设区间对应的游戏场景或第二预设区间对应的游戏场景,来确定游戏渲染指令流对应的游戏场景。
第二种可能的实现中,根据N帧中各帧的顶点数量和N帧中各帧的调用绘制指令次数,确定顶点数量的平均值和调用绘制指令次数的平均值,根据顶点数量的平均值对应的第一预设区间和调用绘制指令次数的平均值对应的第二预设区间,以及第一预设区间对应的游戏场景和第二预设区间对应的游戏场景,在场景查询表中进行查询,在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,将该游戏场景确定为游戏渲染指令流对应的游戏场景。
第三种可能的实现中,根据N帧中任一帧的顶点数量或N帧中任一帧的调用绘制指令次数,在场景查询表中确定N帧中任一帧的顶点数量对应的第一预设区间或N帧中任一帧的调用绘制指令次数对应的第二预设区间,以及第一预设区间对应的游戏场景或第二预设区间对应的游戏场景,来确定游戏渲染指令流对应的游戏场景。
第四种可能的实现中,根据N帧中任一帧的顶点数量和N帧中任一帧的调用绘制指令次数,在场景查询表中确定N帧中任一帧的顶点数量对应的第一预设区间和N帧中任一帧的调用绘制指令次数对应的第二预设区间,以及第一预设区间对应的游戏场景和第二预设区间对应的游戏场景,在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,将该游戏场景确定为游戏渲染指令流对应的游戏场景。
一种可能的实现中,根据游戏渲染指令流,可以确定游戏应用程序依次经过M个预设游戏场景后切换到该游戏场景,其中,M为正整数,M个预设游戏场景包括:大厅界面游戏场景和加载界面游戏场景,该游戏场景包括对局内游戏场景。
例如,根据游戏渲染指令流,识别到游戏应用程序依次经过大厅界面游戏场景和加载界面游戏场景,进入到对局内游戏场景。根据游戏渲染指令流,识别到大厅界面游戏场景、加载界面游戏场景、对局内游戏场景的具体步骤均可以参照步骤S505。
在本申请实施例中,可以通过获取游戏渲染指令来确定游戏场景的顺序为大厅界面游戏场景、加载界面游戏场景和对局内游戏场景,根据各个游戏场景对应的显示帧率不同,来实时调节终端设备的屏幕刷新率,尤其是当识别到经过加载界面游戏场景进入到对局内游戏场景时,根据对局内游戏场景的显示帧率,调节终端设备的屏幕刷新率,从而可以提高对局内游戏场景的流畅性,增加用户体验。
S506、根据游戏场景,调节终端设备的屏幕刷新率。
示例性的,对于步骤S506的具体实现,可以参照步骤S5061-S5063。
S5061、确定游戏场景后,将终端设备的屏幕刷新率调整调节为终端设备所支持的最高刷新率。
S5062、获取第二预设时间段内游戏场景的显示帧率。
S5063、若第二预设时间段内游戏场景的显示帧率稳定在第二帧率,调节终端设备的屏幕刷新率为第二刷新率。
在本申请实施例中,第二刷新率大于第二帧率,且第二刷新率与第二帧率的差值小于第二预设值。
在本申请实施例中,第二预设时间段可以根据实际情况或者经验进行设置,例如可以设置为5秒或者7秒等,对于第二预设时间段的具体值,本申请实施例在此不做限制。
示例性的,当根据游戏场景对应的帧率,调节终端设备的屏幕刷新率时,为确保该游戏应用程序可以达到可达到的最高帧率,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率,并根据该游戏场景对应的帧率,实时调节屏幕刷新率,既可以保证游戏的流畅性,以满足用户的游戏体验,又可以降低终端设备的功耗。
示例性的,当游戏场景为对局内游戏场景时,由于该场景对应的帧率较高,则将终端设备的屏幕刷新率相应的调高,通过提高屏幕刷新率来提升游戏的帧率,从而提升游戏的流畅性。
示例性的,在游戏场景为加载界面时,可以提高终端设备的处理器频率和/或降低终端设备的屏幕亮度;在游戏场景为对局内游戏场景时,提高终端设备的处理器频率和/或提高终端设备的屏幕亮度。
一种可能的实现中,当游戏场景为加载界面游戏场景时,用户不需要关注游戏界面,则将终端设备的屏幕亮度相应的调低;但由于在加载过程中会进行资源加载、场景预渲染等处理操作,则将终端设备的处理器性能相应的调高,以保证不会掉帧,提升游戏的流畅性。
同时,当游戏场景为对局内游戏场景时,用户需要专注于游戏界面,将终端设备的屏幕亮度相应的调高;由于对局内游戏场景较复杂、对局内游戏角色较多等因素,也会将终端设备的处理器性能随之调高,以保证对局内不会掉帧,提升游戏的流畅性。
在本申请实施例中,终端设备在进入游戏应用程序后,通过获取游戏渲染指令来确定游戏场景,并根据游戏场景的帧率来调节屏幕刷新率,可以通过调节屏幕刷新率来提升游戏的帧率,从而使得终端设备在游戏中不再受限于某一固定的屏幕刷新率,提升游戏的流畅性,同时,可以避免屏幕刷新率过高而造成的功耗较高的问题,降低终端设备的功耗。
以上示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的方法和装置的例子。
上面已对本申请实施例的终端设备性能调节方法进行了说明,下面对本申请实施例提供的执行上述终端设备性能调节方法的终端设备进行描述。本领域技术人员可以理解,方法和装置可以相互结合和引用,本申请实施例提供的终端设备可以执行上述终端设备性能调节方法中的步骤。
图6示出了本申请实施例提供的一种终端设备性能调节装置的结构示意图。如图6所示,该终端设备性能调节装置可以是本申请实施例中的终端设备。该终端设备性能调节装置包括:触摸屏601,其中,触摸屏包括触控面板和显示屏;一个或多个处理器602;存储器603;多个应用程序;以及一个或多个计算机程序,其中一个或多个计算机程序被存储在存储器603中,一个或多个计算机程序包括指令,当指令被终端设备性能调节装置执行时,使得终端设备性能调节装置执行以下步骤:获取游戏渲染指令流;根据游戏渲染指令流,确定游戏场景;其中,游戏场景用于表示游戏应用中的运行阶段;根据游戏场景,调节终端设备的性能,终端设备的性能包括:屏幕刷新率、处理器性能和/或屏幕亮度。
可选的,终端设备性能调节装置具体用于执行以下步骤:获取游戏渲染指令流中的顶点数量和调用绘制指令次数;根据顶点数量和/或调用绘制指令次数,确定游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:根据游戏渲染指令流中的顶点数量、调用绘制指令次数和渲染通道数量,确定变异系数;当变异系数小于或等于第一阈值时,根据顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景;场景查询表中包括各游戏场景与各游戏场景中的顶点数量范围和/或调用绘制指令次数范围的对应关系。
可选的,终端设备性能调节装置具体用于执行以下步骤:获取游戏渲染指令流中N帧的顶点数量和/或调用绘制指令次数,N为大于1的整数;根据N帧对应的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:根据N帧中任一帧的顶点数量和/或调用绘制指令次数,在场景查询表中进行查询得到游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:在场景查询表中确定顶点数量对应的第一预设区间和/或调用绘制指令次数对应的第二预设区间;根据第一预设区间对应的游戏场景和/或第二预设区间对应的游戏场景,确定游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:将第一预设区间对应的游戏场景,或者,第二预设区间对应的游戏场景中的任一个,确定为游戏渲染指令流对应的游戏场景;或者,在第一预设区间对应的游戏场景与第二预设区间对应的游戏场景相同时,得到游戏渲染指令流对应的游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:在确定进入游戏应用程序时,将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率;获取第一预设时间段内游戏应用程序的显示帧率;若第一预设时间段内游戏应用程序的显示帧率稳定在第一帧率,调节终端设备的屏幕刷新率为第一刷新率,第一刷新率大于所述第一帧率,且第一刷新率与第一帧率的差值小于第一预设值;在第一帧率小于最高屏幕刷新率时,获取游戏渲染指令流。
可选的,终端设备性能调节装置具体用于执行以下步骤:根据游戏渲染指令流,确定游戏应用程序依次经过M个预设游戏场景后切换到游戏场景,M为正整数。
可选的,大厅界面游戏场景和加载界面游戏场景,游戏场景包括对局内游戏场景。
可选的,终端设备性能调节装置具体用于执行以下步骤:将终端设备的屏幕刷新率调节为终端设备所支持的最高刷新率;获取第二预设时间段内游戏场景的显示帧率;若第二预设时间段内游戏场景的显示帧率稳定在第二帧率,调节终端设备的屏幕刷新率为第二刷新率,第二刷新率大于第二帧率,且第二刷新率与第二帧率的差值小于第二预设值。
可选的,终端设备性能调节装置具体用于执行以下步骤:在游戏场景为加载界面游戏场景时,提高终端设备的处理器频率和/或降低终端设备的屏幕亮度;和/或,在游戏场景为对局内游戏场景时,提高终端设备的处理器频率和/或提高终端设备的屏幕亮度。
图7为本申请实施例提供的一种终端设备性能调节装置的硬件结构示意图。请参见图7,该装置包括:存储器701、处理器702和显示屏704。该装置还可以包括接口电路703,其中,存储器701、处理器702、接口电路703和显示屏704可以通信;示例性的,存储器701、处理器702、接口电路703和显示屏704可以通过通信总线通信,存储器701用于存储计算机执行指令,由处理器702来控制执行,并由显示屏704来执行显示,从而实现本申请下述实施例提供的终端设备性能调节方法。
可能的实现方式中,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
可选的,接口电路703还可以包括发送器和/或接收器。可选的,上述处理器702可以包括一个或多个CPU,还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供一种计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。例如,可用介质可以包括磁性介质(例如,软盘、硬盘或磁带)、光介质(例如,数字通用光盘(digital versatile disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本申请实施例还提供一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
作为一种可能的设计,计算机可读介质可以包括紧凑型光盘只读储存器(compactdisc read-only memory,CD-ROM)、RAM、ROM、EEPROM或其它光盘存储器;计算机可读介质可以包括磁盘存储器或其它磁盘存储设备。而且,任何连接线也可以被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,DSL或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(digital versatile disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (9)
1.一种终端设备性能调节方法,其特征在于,应用于终端设备,所述方法包括:
获取游戏渲染指令流;
根据所述游戏渲染指令流,确定游戏场景;其中,所述游戏场景用于表示游戏应用中的运行阶段;
根据所述游戏场景,调节所述终端设备的性能,所述终端设备的性能包括:屏幕刷新率、处理器性能和/或屏幕亮度;
所述获取游戏渲染指令流之前,还包括:
在确定进入游戏应用程序时,将所述终端设备的屏幕刷新率调节为所述终端设备所支持的最高屏幕 刷新率;
获取第一预设时间段内所述游戏应用程序的显示帧率;
若所述第一预设时间段内所述游戏应用程序的显示帧率稳定在第一帧率,调节所述终端设备的屏幕刷新率为第一刷新率,所述第一刷新率大于所述第一帧率,且所述第一刷新率与所述第一帧率的差值小于第一预设值;
所述获取游戏渲染指令流,包括:在所述第一帧率小于所述最高屏幕刷新率时,获取所述游戏渲染指令流;
所述根据所述游戏渲染指令流,确定游戏场景,包括:
根据所述游戏渲染指令流,确定所述游戏应用程序依次经过M个预设游戏场景后切换到所述游戏场景,所述M为正整数;所述M个预设游戏场景包括:大厅界面游戏场景和加载界面游戏场景,所述游戏场景包括对局内游戏场景,所述游戏应用程序依次经过所述大厅界面游戏场景和所述加载界面游戏场景后切换到所述对局内游戏场景;
所述根据所述游戏场景,调节所述终端设备的性能,包括:
在所述游戏场景为加载界面游戏场景时,提高所述终端设备的处理器频率和/或降低所述终端设备的屏幕亮度;和/或,
在所述游戏场景为对局内游戏场景时,提高所述终端设备的处理器频率和/或提高所述终端设备的屏幕亮度;
所述根据所述游戏渲染指令流,确定游戏场景,包括:
获取所述游戏渲染指令流中的顶点数量和调用绘制指令次数;
根据所述顶点数量和/或所述调用绘制指令次数,确定所述游戏渲染指令流对应的游戏场景;
所述根据所述顶点数量和/或所述调用绘制指令次数,确定所述游戏渲染指令流对应的游戏场景,包括:
根据所述游戏渲染指令流中的顶点数量、调用绘制指令次数和渲染通道数量,确定变异系数;
当所述变异系数小于或等于第一阈值时,根据所述顶点数量和/或所述调用绘制指令次数,在场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景;所述场景查询表中包括各游戏场景与所述各游戏场景中的顶点数量范围和/或调用绘制指令次数范围的对应关系。
2.根据权利要求1所述的方法,其特征在于,所述根据所述顶点数量和/或所述调用绘制指令次数,在场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景,包括:
获取所述游戏渲染指令流中N帧的顶点数量和/或调用绘制指令次数,所述N为大于1的整数;
根据所述N帧对应的顶点数量和/或调用绘制指令次数,在所述场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景。
3.根据权利要求2所述的方法,其特征在于,所述根据所述N帧对应的顶点数量和/或调用绘制指令次数,在所述场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景,包括:
根据所述N帧中各帧的顶点数量和/或调用绘制指令次数,确定所述顶点数量的平均值和/或所述调用绘制指令次数的平均值;
根据所述顶点数量的平均值和/或所述调用绘制指令次数的平均值,在所述场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景。
4.根据权利要求2所述的方法,其特征在于,所述根据所述N帧对应的顶点数量和/或调用绘制指令次数,在所述场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景,包括:
根据所述N帧中任一帧的顶点数量和/或调用绘制指令次数,在所述场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景。
5.根据权利要求1所述的方法,其特征在于,所述在场景查询表中进行查询得到所述游戏渲染指令流对应的游戏场景,包括:
在所述场景查询表中确定所述顶点数量对应的第一预设区间和/或所述调用绘制指令次数对应的第二预设区间;
根据所述第一预设区间对应的游戏场景和/或所述第二预设区间对应的游戏场景,确定所述游戏渲染指令流对应的游戏场景。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一预设区间对应的游戏场景和/或所述第二预设区间对应的游戏场景,确定所述游戏渲染指令流对应的游戏场景,包括:
将所述第一预设区间对应的游戏场景,或者,所述第二预设区间对应的游戏场景中的任一个,确定为所述游戏渲染指令流对应的游戏场景;
或者,在所述第一预设区间对应的游戏场景与所述第二预设区间对应的游戏场景相同时,得到所述游戏渲染指令流对应的游戏场景。
7.根据权利要求1所述的方法,其特征在于,所述根据所述游戏场景,调节所述终端设备的性能,包括:
将所述终端设备的屏幕刷新率调节为所述终端设备所支持的最高刷新率;
获取第二预设时间段内所述游戏场景的显示帧率;
若所述第二预设时间段内所述游戏场景的显示帧率稳定在第二帧率,调节所述终端设备的屏幕刷新率为第二刷新率,所述第二刷新率大于所述第二帧率,且所述第二刷新率与所述第二帧率的差值小于第二预设值。
8.一种终端设备,其特征在于,包括:处理器和存储器,所述处理器用于调用所述存储器中的程序以使所述终端设备执行权利要求1-7任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210525898.9A CN114632329B (zh) | 2022-05-16 | 2022-05-16 | 终端设备性能调节方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210525898.9A CN114632329B (zh) | 2022-05-16 | 2022-05-16 | 终端设备性能调节方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114632329A CN114632329A (zh) | 2022-06-17 |
CN114632329B true CN114632329B (zh) | 2022-10-25 |
Family
ID=81953003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210525898.9A Active CN114632329B (zh) | 2022-05-16 | 2022-05-16 | 终端设备性能调节方法和相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114632329B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115665482B (zh) * | 2022-11-09 | 2023-06-30 | 腾讯科技(深圳)有限公司 | 视频渲染方法、装置、计算机设备和存储介质 |
CN116450363B (zh) * | 2023-06-13 | 2023-11-14 | 荣耀终端有限公司 | 一种资源调度方法及电子设备 |
CN117806831A (zh) * | 2024-02-23 | 2024-04-02 | 荣耀终端有限公司 | 参数配置方法及相关设备 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105045367A (zh) * | 2015-01-16 | 2015-11-11 | 中国矿业大学 | 基于游戏负载预测的android系统设备功耗优化方法 |
CN108628430A (zh) * | 2018-05-14 | 2018-10-09 | 努比亚技术有限公司 | 一种游戏省电控制方法、终端及计算机可读存储介质 |
CN108664329A (zh) * | 2018-05-10 | 2018-10-16 | 努比亚技术有限公司 | 一种资源配置方法、终端及计算机可读存储介质 |
CN109157839A (zh) * | 2018-10-16 | 2019-01-08 | Oppo广东移动通信有限公司 | 帧率调控方法、装置、存储介质及终端 |
CN109413480A (zh) * | 2018-09-30 | 2019-03-01 | Oppo广东移动通信有限公司 | 画面处理方法、装置、终端及存储介质 |
CN109582463A (zh) * | 2018-11-30 | 2019-04-05 | Oppo广东移动通信有限公司 | 资源配置方法、装置、终端及存储介质 |
CN110152291A (zh) * | 2018-12-13 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 游戏画面的渲染方法、装置、终端及存储介质 |
CN111408138A (zh) * | 2019-01-04 | 2020-07-14 | 厦门雅基软件有限公司 | 基于游戏引擎的渲染方法、装置及电子设备 |
CN112529995A (zh) * | 2020-12-28 | 2021-03-19 | Oppo(重庆)智能科技有限公司 | 图像渲染计算方法、装置、存储介质以及终端 |
CN113362783A (zh) * | 2020-03-06 | 2021-09-07 | 华为技术有限公司 | 刷新率切换方法和电子设备 |
CN113760080A (zh) * | 2020-06-04 | 2021-12-07 | 北京小米移动软件有限公司 | 显示方法、装置及存储介质 |
CN114210052A (zh) * | 2021-11-11 | 2022-03-22 | 深圳市元宇宙科技有限公司 | 游戏流畅度优化方法、装置、终端及计算机可读存储介质 |
CN114356146A (zh) * | 2021-12-29 | 2022-04-15 | 努比亚技术有限公司 | 一种游戏帧率动态调控方法、设备及计算机可读存储介质 |
EP3984609A1 (en) * | 2020-09-02 | 2022-04-20 | Wellink Technologies Co., Ltd. | Game screen rendering method and system based on multiple graphics cards |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107302707A (zh) * | 2017-05-18 | 2017-10-27 | 腾讯科技(深圳)有限公司 | 场景动画的播放方法、装置及系统 |
CN110678239B (zh) * | 2017-10-10 | 2024-02-09 | 谷歌有限责任公司 | 利用游戏元数据和量度的分布式基于样本的游戏剖析以及支持第三方内容的游戏api平台 |
CN112667339B (zh) * | 2020-12-31 | 2023-12-08 | 努比亚技术有限公司 | 屏幕刷新率的设置方法、终端以及计算机可读介质 |
CN113630572B (zh) * | 2021-07-09 | 2022-10-14 | 荣耀终端有限公司 | 帧率切换方法和相关装置 |
-
2022
- 2022-05-16 CN CN202210525898.9A patent/CN114632329B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105045367A (zh) * | 2015-01-16 | 2015-11-11 | 中国矿业大学 | 基于游戏负载预测的android系统设备功耗优化方法 |
CN108664329A (zh) * | 2018-05-10 | 2018-10-16 | 努比亚技术有限公司 | 一种资源配置方法、终端及计算机可读存储介质 |
CN108628430A (zh) * | 2018-05-14 | 2018-10-09 | 努比亚技术有限公司 | 一种游戏省电控制方法、终端及计算机可读存储介质 |
CN109413480A (zh) * | 2018-09-30 | 2019-03-01 | Oppo广东移动通信有限公司 | 画面处理方法、装置、终端及存储介质 |
CN109157839A (zh) * | 2018-10-16 | 2019-01-08 | Oppo广东移动通信有限公司 | 帧率调控方法、装置、存储介质及终端 |
CN109582463A (zh) * | 2018-11-30 | 2019-04-05 | Oppo广东移动通信有限公司 | 资源配置方法、装置、终端及存储介质 |
CN110152291A (zh) * | 2018-12-13 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 游戏画面的渲染方法、装置、终端及存储介质 |
CN111408138A (zh) * | 2019-01-04 | 2020-07-14 | 厦门雅基软件有限公司 | 基于游戏引擎的渲染方法、装置及电子设备 |
CN113362783A (zh) * | 2020-03-06 | 2021-09-07 | 华为技术有限公司 | 刷新率切换方法和电子设备 |
CN113760080A (zh) * | 2020-06-04 | 2021-12-07 | 北京小米移动软件有限公司 | 显示方法、装置及存储介质 |
EP3984609A1 (en) * | 2020-09-02 | 2022-04-20 | Wellink Technologies Co., Ltd. | Game screen rendering method and system based on multiple graphics cards |
CN112529995A (zh) * | 2020-12-28 | 2021-03-19 | Oppo(重庆)智能科技有限公司 | 图像渲染计算方法、装置、存储介质以及终端 |
CN114210052A (zh) * | 2021-11-11 | 2022-03-22 | 深圳市元宇宙科技有限公司 | 游戏流畅度优化方法、装置、终端及计算机可读存储介质 |
CN114356146A (zh) * | 2021-12-29 | 2022-04-15 | 努比亚技术有限公司 | 一种游戏帧率动态调控方法、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114632329A (zh) | 2022-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114632329B (zh) | 终端设备性能调节方法和相关装置 | |
US11356720B2 (en) | Video generation system to render frames on demand | |
US11991419B2 (en) | Selecting avatars to be included in the video being generated on demand | |
US11831937B2 (en) | Video generation system to render frames on demand using a fleet of GPUS | |
US11263254B2 (en) | Video generation system to render frames on demand using a fleet of servers | |
CN114911336B (zh) | 调整频率的方法、装置、电子设备及可读存储介质 | |
US20210241512A1 (en) | System for generating media content items on demand | |
CN114697446B (zh) | 一种刷新率切换方法、电子设备及存储介质 | |
WO2021052035A1 (zh) | 一种屏幕侧面区域显示方法及电子设备 | |
CN116095382B (zh) | 弹幕识别方法和相关装置 | |
JP2023055615A (ja) | 自然言語処理を使用するゲーム・ログからのイベント情報抽出 | |
CN116688495B (zh) | 帧率调整方法及相关装置 | |
CN111930509A (zh) | 智能眼镜的数据处理方法、装置、存储介质及电子设备 | |
US20230267063A1 (en) | Real-time latency measurements in streaming systems and applications | |
CN115018692B (zh) | 一种图像渲染方法及电子设备 | |
CN114780012B (zh) | 电子设备的锁屏壁纸的显示方法和相关装置 | |
CN116095221A (zh) | 一种游戏中的帧率调整方法及相关装置 | |
CN116077940B (zh) | 游戏应用中的绘图处理方法和相关装置 | |
WO2024016798A1 (zh) | 图像显示方法和相关装置 | |
CN116501210B (zh) | 一种显示方法、电子设备及存储介质 | |
CN117129085B (zh) | 环境光的检测方法、电子设备及可读存储介质 | |
WO2024027286A1 (zh) | 渲染方法、装置、设备及存储介质 | |
WO2024045701A9 (zh) | 数据处理方法、装置、设备及存储介质 | |
US20240187702A1 (en) | Selecting avatars to be included in the video being generated on demand | |
CN116501210A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231007 Address after: 201306 building C, No. 888, Huanhu West 2nd Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Patentee after: Shanghai Glory Smart Technology Development Co.,Ltd. Address before: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee before: Honor Device Co.,Ltd. |
|
TR01 | Transfer of patent right |