CN113332707A - 一种用于游戏手柄和游戏主机的数据处理方法 - Google Patents
一种用于游戏手柄和游戏主机的数据处理方法 Download PDFInfo
- Publication number
- CN113332707A CN113332707A CN202110681443.1A CN202110681443A CN113332707A CN 113332707 A CN113332707 A CN 113332707A CN 202110681443 A CN202110681443 A CN 202110681443A CN 113332707 A CN113332707 A CN 113332707A
- Authority
- CN
- China
- Prior art keywords
- game
- control instruction
- memory
- instruction
- priority information
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 11
- 230000015654 memory Effects 0.000 claims abstract description 122
- 238000000034 method Methods 0.000 claims abstract description 31
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000012549 training Methods 0.000 claims description 12
- 238000003062 neural network model Methods 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 7
- 238000007477 logistic regression Methods 0.000 claims description 7
- 238000007637 random forest analysis Methods 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000036961 partial effect Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 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/20—Input arrangements for video game devices
- A63F13/24—Constructional details thereof, e.g. game controllers with detachable joystick handles
-
- 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/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/32—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
- A63F13/327—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections using wireless networks, e.g. Wi-Fi® or piconet
-
- 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/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/44—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment involving timing of operations, e.g. performing an action within a time slot
-
- 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/55—Controlling game characters or game objects based on the game progress
-
- 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/40—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 characterised by details of platform network
- A63F2300/404—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 characterised by details of platform network characterized by a local network connection
- A63F2300/405—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 characterised by details of platform network characterized by a local network connection being a wireless ad hoc network, e.g. Bluetooth, Wi-Fi, Pico net
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提出一种用于游戏手柄和游戏主机的数据处理方法,包括:游戏手柄捕获玩家的操作信息,生成第一控制指令;游戏手柄获取多个预测模型,将第一控制指令输入多个预测模型,输出对应的预测指令;游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算至少一个第二优先级信息;游戏主机在接收到第二控制指令和第二优先级信息之后,查找第二控制指令对应的第二游戏数据,将第二游戏数据存储于第二优先级信息对应的存储器中;游戏主机若接收到与第二控制指令相同的控制指令,则从对应的存储器中读取并处理第二游戏数据。本申请可以实现游戏主机在WiFi网络下快速执行来自游戏手柄的指令,提高指令处理效率。
Description
技术领域
本发明涉及游戏手柄领域,尤其涉及一种用于游戏手柄和游戏主机的数据处理方法。
背景技术
在游戏领域,随着游戏开发技术的不断发展,游戏信息传输速率和处理速率的要求变得越来越大,提高响应速率是一个迫切的需求。
游戏主机与游戏手柄的交互可采用有线或者无线通讯技术实现,对于无线通讯而言,随着通信技术的演进和基础设施的完善,在可见的未来,无线保真WiFi技术的速率将越来越快,例如,第6代WiFi的速率已经高达1228.8MB/秒。将WiFi技术用于游戏手柄和游戏主机的通讯变成一种可能的趋势,而在无线通讯的数据传输速率越来越快的情况下,如何提高游戏主机的数据处理速率将变成一个亟待解决的问题。
发明内容
本申请提出一种用于游戏手柄和游戏主机的数据处理方法,可以在通讯速率较快的WiFi网络下,实现游戏主机及时响应。
一方面,本申请提出一种用于游戏手柄和游戏主机的数据处理方法,游戏主机和游戏手柄通过WIFI网络进行数据交互,该方法包括:
游戏手柄捕获玩家的操作信息,基于所述操作信息生成第一控制指令,将第一控制指令发往游戏主机;
所述游戏手柄获取多个预测模型,将所述第一控制指令分别输入所述多个预测模型,输出各个预测模型对应的预测指令;
所述游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息;其中,第二控制指令为所述多个预测指令中满足指定数量条件的指令,第二优先级信息表示第二控制指令与所述第一控制指令在第一时间间隔内伴随出现的概率;
所述游戏手柄在将所述第一控制指令发往所述游戏主机之后,将所述第二控制指令和所述第二优先级信息发往所述游戏主机;
所述游戏主机在接收到第二控制指令和第二优先级信息之后,查找所述第二控制指令对应的第二游戏数据,将所述第二游戏数据存储于所述第二优先级信息对应的存储器中;其中,第二优先级信息对应的概率值越大,第二优先级信息对应的存储器的性能越高;
所述游戏主机在执行完成所述第一控制指令之后,若接收到来自游戏手柄的与第二控制指令相同的控制指令,则从所述第二优先级信息对应的存储器中读取并处理所述第二游戏数据。
在一种可能的实现方式中,所述游戏主机包括第一存储器和第二存储器,所述第一存储器的性能大于所述第二存储器的性能,所述第一存储器或者所述第二存储器包括寄存器、高速缓存cache、主存RAM和虚拟内存中的一种;
所述将所述第二游戏数据存储于所述第二优先级信息对应的存储器中,包括:若所述第二优先级信息大于第二阈值且小于第一阈值,则将所述第二游戏数据存储于第二存储器;若所述第二优先级信息超过第一阈值,则将所述第二游戏数据存储于第一存储器。
进一步的,在接收到第一指令的第二时间间隔内,若未接收到来自游戏手柄的与第二控制指令相同的控制指令,则将第二指令对应的游戏数据存入性能更低的硬盘,以节省高性能存储器存储器的空间。其中,在接收到第一指令的第二时间间隔内未接收到来自游戏手柄的与第二控制指令相同的控制指令,则说明该第二控制指令并非玩家接下来要发送的指令,本次的指令预测结果出现错误,此时,将指令的游戏数据存储于性能更低的存储器中,可以节约高性能存储器的存储空间。在一种可能的实现方式中,若第二游戏数据存储于第一存储器中,在接收到第一指令的第二时间间隔内,若未接收到来自游戏手柄的与第二控制指令相同的控制指令,则将第二游戏数据转存于第二存储器中,或者转存于硬盘、Flash等非易失性存储器中。若第二游戏数据存储于第二存储器中,在接收到第一指令的第二时间间隔内,若未接收到来自游戏手柄的与第二控制指令相同的控制指令,则将第二游戏数据转存于硬盘、Flash等非易失性存储器中。
在一种可能的实现方式中,所述多个预测模型包括反向传播神经网络模型、卡尔曼滤波预测模型、时间序列预测模型、随机森林模型、softmax逻辑回归模型和临近算法模型中的多个;
或者,所述多个预测模型包括以下模型中的多个:多个参数不同的反向传播神经网络模型,多个参数不同的卡尔曼滤波预测模型,多个参数不同的时间序列预测模型,多个参数不同的随机森林模型,多个参数不同的softmax逻辑回归模型,多个参数不同的临近算法模型。
所述游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息,包括:所述游戏手柄将多个预测指令中数量最多的指令作为所述第二控制指令,根据所述第二控制指令的数量在所述多个预测指令中所占的比重计算所述第二优先级信息。
在一种可能的实现方式中,至少一个第二控制指令包括第三指令和第四指令,至少一个第二优先级信息包括第三优先级信息和第四优先级信息,至少一个第二控制指令对应的第二游戏数据包括第三指令对应的第三游戏数据和第四指令对应的第四游戏数据,所述游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息,包括:所述游戏手柄将多个预测指令中数量最多的指令作为所述第三控制指令,根据所述第三控制指令的数量在所述多个预测指令中所占的比重计算所述第三优先级信息;将多个预测指令中数量第二的指令作为所述第四控制指令,根据所述第四控制指令的数量在所述多个预测指令中所占的比重计算所述第四优先级信息;所述将所述第二游戏数据存储于所述第二优先级信息对应的存储器中,包括:将所述第三游戏数据存储于第一存储器,将所述第四游戏数据存储于第二存储器;所述若接收到来自游戏手柄的与第二控制指令相同的控制指令,则从所述第二优先级信息对应的存储器中读取并处理所述第二游戏数据,包括:若接收到来自游戏手柄的与第三控制指令相同的控制指令,则从所述第一存储器中读取并处理所述第三游戏数据;若接收到来自游戏手柄的与第四控制指令相同的控制指令,则从所述第二存储器中读取并处理所述第四游戏数据。
在所述游戏手柄获取多个预测模型之前,还包括:获取历史指令,通过所述历史指令对多个预测模型进行训练,存储经过训练的多个预测模型;所述游戏手柄获取多个预测模型,包括:获取存储的经过训练的多个预测模型。
在一种可能的实现方式中,所述多个预测模型与第一玩家标识相关联,在所述游戏手柄获取多个预测模型之前,还包括:获取玩家的身份标识;确定所述身份标识与所述第一玩家标识是否匹配;所述游戏手柄获取多个预测模型,包括:在所述身份标识与所述第一玩家标识匹配的情况下,获取所述第一玩家标识关联的多个预测模型。
进一步的,通过将游戏手柄的指令与玩家标识进行关联,可以识别每个玩家的操作习惯,针对性地获取每个玩家对应的控制指令之间的优先级信息,这可以提高识别关联指令的速率,更快速地获得游戏数据。
通过本申请的方案,可以识别玩家身份,根据玩家身份匹配玩家的操作习惯数据(例如多个控制指令),根据玩家操作习惯数据预测玩家通过游戏手柄可能发送的控制指令,预提取该控制指令对应的游戏数据至不同性能等级的存储器中,使得处理器在执行接下来的游戏手柄指令时可以快速获取游戏数据,从而实现在WiFi网络下快速执行来自游戏手柄的指令,提高玩家游戏体验。同时,本申请采用多种预测模型、多组参数来进行指令预测,可以提高预测的精度,更广泛地适应不同的场景,提高预测结果的鲁棒性。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
图1是本申请提出的一种游戏手柄和游戏主机的交互示意图;
图2是本申请提出的一种用于游戏手柄和游戏主机的数据处理方法示意图;
图3是本申请提出的一种游戏设备的结构示意图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同的对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法或设备固有的其他步骤或单元。
图1是本申请提出的一种游戏手柄和游戏主机的交互示意图,上述游戏手柄101采用无线通讯WiFi网络与游戏主机102进行交互,游戏主机与游戏手柄可分别与路由器103耦合。上述游戏手柄包括WiFi信号收发与处理模块,上述游戏主机包括WiFi信号收发与处理模块,两者的通信可以采用多种WiFi协议,例如802.11a协议或者802.11ax协议。游戏主机通过WiFi网络接收游戏手柄的信号之后,根据游戏指令加载并显示游戏数据,以达到实时交互的目的。此外,游戏手柄和游戏主机均包括存储器、处理器和总线等基本部件。
在游戏主机实时处理游戏手柄的指令时,需要加载和处理相关游戏数据,渲染游戏画面。在传输速率较大的WiFi网络下,网络容量普遍过剩,如何利用好网络容量并提高游戏主机的响应速度是个重要的问题。
对于一般主机而言,处理器的运算速率远大于硬盘等存储器的存取速率,即存储器的存取速率是限制游戏主机处理指令的速率的最大因素。本申请将采用数据多级预加载的方式,来最大化数据的读取速率,其本质上是以消耗游戏手柄的处理器的部分算力和部分网络容量为代价,来克服游戏主机中存储器性能与处理器性能不均衡的问题,进而提升游戏主机的响应速度。在网络容量和处理器算力较为丰富的今天,这样的代价显然是可以接受的。
游戏手柄通过指令控制游戏主机,而玩家的多个游戏指令之间通常部分或者全部呈现伴随关系。以射击类游戏为例,玩家可能习惯于在控制游戏人物下蹲之后控制打开瞄准镜,或者在控制游戏人物跳跃之后控制开始射击。研究游戏指令之间的伴随性,可以优化游戏进程,提高指令处理速率。
图2是本申请提出的一种用于游戏手柄和游戏主机的数据处理方法示意图,游戏主机和游戏手柄通过WIFI网络进行数据交互。
201、游戏手柄捕获玩家的操作信息,基于所述操作信息生成第一控制指令,将第一控制指令发往游戏主机。其中,游戏手柄可以通过虚拟或者实体按键、陀螺仪、加速度传感器等方式接收玩家的操作信息,根据操作信息生成控制指令,该控制指令用于控制游戏人物的移动、游戏画面的加载以及游戏的设置。
202、游戏手柄获取多个预测模型,将所述第一控制指令分别输入所述多个预测模型,输出各个预测模型对应的预测指令。
该多个预测模型用于预测游戏主机在收到第一控制指令之后的第一时间间隔内可能会接收到的指令(即第一控制指令的在后指令),即预测玩家接下来会进行何种操作以及发送何种控制指令。输出的多个预测指令即为初步的预测结果。
在一种可能的实现方式中,多个预测模型包括反向传播神经网络模型、卡尔曼滤波预测模型、时间序列预测模型、随机森林模型、softmax逻辑回归模型和临近算法模型中的多个。
举例而言,游戏手柄可以预先训练以上6种模型,并存储训练后的6种模型。在获得第一控制指令之后,将该第一控制指令输入训练过的6种预测模型,并输出6种预测模型对应预测指令。由于各种模型具备差异性,预测精度和最佳适用场景存在不同,输出的6个预测指令可能存在差异。以下表格是一种示例性的输出结果。表1:
输入的在先指令 | 预测的在后指令 | 采用的预测模型 |
控制指令1 | 控制指令2 | 反向传播神经网络 |
控制指令1 | 控制指令2 | 卡尔曼滤波 |
控制指令1 | 控制指令2 | 时间序列 |
控制指令1 | 控制指令4 | 随机森林 |
控制指令1 | 控制指令3 | softmax逻辑回归 |
控制指令1 | 控制指令2 | 临近算法 |
从以上实例性的表格中可以看出,当输入控制指令1时,各个模型输出的预测指令有控制指令2、控制指令3和控制指令4,其中,控制指令2所占的比重最大,是最有可能与控制指令1伴随出现的指令。
在一种可能的实现方式中,多个预测模型可以包括以下模型中的多个:多个参数不同的反向传播神经网络模型,多个参数不同的卡尔曼滤波预测模型,多个参数不同的时间序列预测模型,多个参数不同的随机森林模型,多个参数不同的softmax逻辑回归模型,多个参数不同的临近算法模型。其中,对于相同的模型,若模型参数不同,则预测效果可能存在差异。以反向传播神经网络模型为例,输入层到隐含层之间的权重矩阵为[w1,w2;w3,w4];以误差为约束条件,在经过梯度下降训练之后,在误差收敛的情况下获得该权重矩阵值为[w1,w2;w3,w4]=[0.15,0.20;0.25,0.30]。适当调整训练数据,再次获得权重矩阵值为[w1,w2;w3,w4]=[0.16,0.20;0.27,0.29]。在获得两组权重矩阵之后,将以上两组权重矩阵分别作为反向传播神经网络模型的参数,经过测试,带有以上两组参数的神经网络模型均能生成较准确的预测结果。以上过程即获得了两个参数不同的反向传播神经网络模型。其他模型也可以参照此过程进行处理。以下表格是一种示例性的输出结果。表2:
从以上实例性的表格中可以看出,当输入控制指令1时,各个模型输出的预测指令有控制指令2、控制指令3和控制指令4,其中,控制指令2所占的比重最大。
采用多种预测模型、多组参数来进行指令预测,可以提高预测的精度,同时更广泛地适应不同的场景,提高预测结果的鲁棒性。
203、游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息;其中,第二控制指令为所述多个预测指令中满足指定数量条件的指令,第二优先级信息表示第二控制指令与所述第一控制指令在第一时间间隔内伴随出现的概率。
多个预测模型分别生成预测指令,此时,同一类预测指令的数量越多,则代表该类预测指令越接近实际结果,即越可能在第一控制指令之后的预设时间内由玩家发送给游戏主机。
在一种可能的实现方式中,游戏手柄将多个预测指令中数量最多的指令作为第二控制指令,根据第二控制指令的数量在所述多个预测指令中所占的比重计算所述第二优先级信息。其中,多个预测指令中数量最多的指令与第一控制指令伴随出现的可能性最大,即游戏主机在接收到第一控制指令之后,有很大概率会继续接收到与第二控制指令相同的指令。
以表1为例,控制指令2的数量最多,则控制指令2为第二控制指令,其对应的第二优先级信息为控制指令2所占的比重,即为66.7%。
需要说明的是,第二控制指令只是一种预测性的指令,并非立即执行的指令,第二控制指令的作用是指示游戏主机提前将玩家可能发送的控制指令对应的游戏数据预提取到指定性能等级的存储器,以便在接收到与第二控制指令相同的指令时,可以快速从相应的存储器读取到游戏数据。进一步的,游戏手柄将第二控制指令发往游戏主机时,可以同时向主机发送指示该第二控制指令属于预测性指令而非立即执行的指令的提示信息,以指示游戏主机提前将第二控制指令对应的游戏数据预提取到指定的存储器而非立即执行第二控制指令。
204、游戏手柄在将所述第一控制指令发往所述游戏主机之后,将所述第二控制指令和所述第二优先级信息发往所述游戏主机;游戏主机在接收到第二控制指令和第二优先级信息之后,查找所述第二控制指令对应的第二游戏数据,将所述第二游戏数据存储于所述第二优先级信息对应的存储器中;其中,第二优先级信息对应的概率值越大,第二优先级信息对应的存储器的性能越高。
游戏主机包括第一存储器和第二存储器,所述第一存储器的性能大于所述第二存储器的性能,所述第一存储器或者所述第二存储器包括寄存器、高速缓存cache、主存RAM和虚拟内存中的一种。若所述第二优先级信息大于第二阈值且小于第一阈值,则将所述第二游戏数据存储于第二存储器;若所述第二优先级信息超过第一阈值,则将所述第二游戏数据存储于第一存储器。
在一种可能的实现方式中,第一存储器为高速缓存cache,第二存储器为主存RAM。或者,第一存储器为寄存器,第二存储器为高速缓存cache。或者,第一存储器为主存RAM,第二存储器为虚拟内存或者非易失性存储器。上述非易失性存储器包括机械硬盘、固态硬盘或者Flash存储器等。其中,寄存器、cache、RAM和非易失性存储器的存取速率依次下降,即寄存器或cache为稀缺的、性能高的存储器,非易失性存储器为容量大的、性能较差的存储器。
以表1为例,假设第一阈值为50%,第二阈值为33%,由于控制指令2占比50%,第二优先级信息对应的概率值为50%,此时满足第一阈值,则可以将控制指令2对应的游戏数据提取到第一存储器(例如为cache)。而如果第二优先级信息大于33%小于50%,则可以将控制指令2对应的游戏数据提取到第二存储器(例如RAM),如果优先级信息小于33%,则不作额外的处理操作。
在一种可能的实现方式中,至少一个第二控制指令包括第三指令和第四指令,至少一个第二优先级信息包括第三优先级信息和第四优先级信息,至少一个第二控制指令对应的第二游戏数据包括第三指令对应的第三游戏数据和第四指令对应的第四游戏数据,所述游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息,包括:所述游戏手柄将多个预测指令中数量最多的指令作为所述第三控制指令,根据所述第三控制指令的数量在所述多个预测指令中所占的比重计算所述第三优先级信息;将多个预测指令中数量第二的指令作为所述第四控制指令,根据所述第四控制指令的数量在所述多个预测指令中所占的比重计算所述第四优先级信息;所述将所述第二游戏数据存储于所述第二优先级信息对应的存储器中,包括:将所述第三游戏数据存储于第一存储器,将所述第四游戏数据存储于第二存储器。
其中,识别第三控制指令、提取第三游戏数据至第一存储器,以及识别第四控制指令、提取第四游戏数据至第二存储器的操作是同时执行的(例如可以是并行执行的),以此实现多级预存储的目的。
以表2为例,经过8个预测模型的预测后,获得8个预测指令,其中,控制指令2数量最多,作为第三控制指令,其对应的第三优先级信息的值为50%;控制指令3的数量第二,作为第四控制指令,其对应的第四优先级信息的值为38%。游戏主机提取第三控制指令对应的第三游戏数据,存储于第一存储器(例如cache),提取第四控制指令对应的第四游戏数据,存储于第二存储器(例如RAM)。
此外,若第三游戏数据原本就存储于第一存储器,则游戏主机不必执行将第三游戏数据转存储于第一存储器;若第四游戏数据原本就存储于第二存储器,则游戏主机不必执行将第四游戏数据转存储于第二存储器。
在本申请中,第三控制指令的第三优先级信息大表示在接收到第一控制指令之后游戏手柄有较大概率在随后的一段时间内生成第三控制指令,这与用户的操作***衡高性能存储器的稀缺性与游戏数据的大存储容量和游戏手柄传输指令的高速化之间的关系。
205、游戏主机在执行完成所述第一控制指令之后,若接收到来自游戏手柄的与第二控制指令相同的控制指令,则从所述第二优先级信息对应的存储器中读取并处理所述第二游戏数据。
游戏主机将第二游戏数据预存储于相应的存储器之后,如果接收到与第二控制指令相同的控制指令,则直接从相应的存储器中提取并处理第二游戏数据,这将大大加快第二游戏数据的提取速度,提升游戏主机响应客户请求的速度。
进一步的,在接收到第一指令的第二时间间隔内,若未接收到来自游戏手柄的与第二控制指令相同的控制指令,则将第二指令对应的游戏数据存入性能更低的硬盘,以节省高性能存储器存储器的空间。其中,在接收到第一指令的第二时间间隔内未接收到来自游戏手柄的与第二控制指令相同的控制指令,则说明该第二控制指令并非玩家接下来要发送的指令,本次的指令预测结果出现错误,此时,将指令存储于性能更低的存储器中,可以节约高性能存储器的存储空间。举例来说,若第二游戏数据存储于第一存储器中,在接收到第一指令的第二时间间隔内,若未接收到来自游戏手柄的与第二控制指令相同的控制指令,则将第二游戏数据转存于第二存储器中,或者转存于硬盘、Flash等非易失性存储器中。
需要说明的是,第二控制指令只是一种预测性的指令,并非立即执行的指令,第二控制指令的作用是指示游戏主机提前将玩家可能发送的游戏数据预提取到指定的存储器,以便在接收到与第二控制指令相同的指令时,可以快速从相应的存储器读取到游戏数据。进一步的,游戏手柄将第二控制指令发往游戏主机时,需要同时向主机发送指示该第二控制指令属于预测性指令而非立即执行的指令的提示信息,以指示游戏主机提前将第二控制指令对应的游戏数据预提取到指定的存储器而非立即执行第二控制指令。而游戏主机接收到的所述与第二控制指令相同的指令则为立即执行的指令,游戏主机接收到该指令后将立即开始执行玩家的指定操作。
其中,上述各个游戏数据包括待渲染的游戏图像、配置信息、与游戏图像关联的渲染指令的至少一种,上述游戏图像包括静态图像和动态图像,上述配置信息包括图像渲染、人机交互所需的配置信息,上述与游戏图像关联的渲染指令包括图像压缩、图像过滤、图像合并以及图像加影等操作对应的指令。
在一种可能的实现方式中,至少一个第二控制指令包括第三指令和第四指令,至少一个第二优先级信息包括第三优先级信息和第四优先级信息,至少一个第二控制指令对应的第二游戏数据包括第三指令对应的第三游戏数据和第四指令对应的第四游戏数据。在将游戏数据预先存储于相应的存储器之后,若接收到来自游戏手柄的与第三控制指令相同的控制指令,则从所述第一存储器中读取并处理所述第三游戏数据;若接收到来自游戏手柄的与第四控制指令相同的控制指令,则从所述第二存储器中读取并处理所述第四游戏数据。
进一步的,为了节约高性能存储器,若在第二预设时间内未接收到与第三控制指令相同的控制指令,则将第三游戏数据存储于性能更低的存储器中(例如存储于第二存储器或者非易失性存储器)。若在第二预设时间内未接收到与第四控制指令相同的控制指令,则将第四游戏数据存储于性能更低的存储器中(例如存储于非易失性存储器)。
206、游戏手柄在获取多个预测模型之前,获取历史指令,通过所述历史指令对多个预测模型进行训练,存储经过训练的多个预测模型;游戏手柄获取多个预测模型,包括:获取存储的经过训练的多个预测模型。
其中,历史指令中包括玩家曾经触发过的控制指令,这些历史指令可以用于训练预测模型,以预测在出现第一控制指令之后预设时间内可能出现的指令。其中,用于训练模型的历史指令可以是成对出现,每一对历史指令之间的时间间隔小于第一时间间隔。以表3为例,表3:
在先历史指令 | 在后历史指令 |
控制指令1 | 控制指令2 |
控制指令1 | 控制指令3 |
控制指令2 | 控制指令4 |
...... | ...... |
表3为用于训练预测模型的指令集合,其中,在先历史指令与在后历史指令之间的时间间隔小于预设时间间隔(例如2秒),这可以使得训练出的模型可以预测即将产生的指令。
在一种可能的实现方式中,多个预测模型与第一玩家标识相关联,在所述游戏手柄获取多个预测模型之前,获取玩家的身份标识;确定所述身份标识与所述第一玩家标识是否匹配;游戏手柄获取多个预测模型,包括:在所述身份标识与所述第一玩家标识匹配的情况下,获取所述第一玩家标识关联的多个预测模型。
此外,多个历史指令也可以与第一玩家标识相关联。获取历史指令,通过所述历史指令对多个预测模型进行训练,存储经过训练的多个预测模型,包括:获取第一玩家标识对应的历史指令,通过所述第一玩家标识对应的历史指令对多个预测模型进行训练,将经过训练的多个预测模型与所述第一玩家标识进行关联存储。
识别玩家身份,将预测模型、用于训练预测模型的历史指令与玩家身份相关联,这可以识别特定玩家的操作习惯,并基于玩家的操作习惯预测玩家通过游戏手柄可能发送的控制指令,预提取该控制指令对应的游戏数据至不同性能等级的存储器中,使得处理器在执行接下来的控制指令时可以从较高性能的存储器中快速读取游戏数据,这使得整个性能优化过程更加有针对性,可以大幅提高游戏主机的数据处理速率。
本申请在通过WiFi网络发送交互数据过程中,由于交互数据中包括预测的指令和指令的优先级信息,这使得需要占用部分的网络容量;游戏手柄进行指令预测时,需要占用部分的处理器算力,因此,本申请本质上是牺牲掉部分网络容量和游戏手柄的处理器算力,来克服游戏主机中存储器性能与处理器性能不均衡的问题,进而提升游戏主机的响应速度。在网络容量和处理器算力较为丰富的今天,这样的代价显然是可以接受的。
图3是本申请实施例提供的游戏设备的结构示意图。其中,该游戏设备可以为游戏主机或者游戏手柄。该设备包括:至少一个处理器301,例如中央处理器(centralprocessing unit,CPU),至少一个存储器302,和至少一个总线303。
上述存储器302中可以存储程序指令,上述处理器301可用于调用程序指令执行一种用于游戏手柄和游戏主机的数据处理方法。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,存储介质包括只读存储器(read only memory,ROM)、随机存储器(random access memory,RAM)、可编程只读存储器(programmable read only memory,PROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)、一次可编程只读存储器(one-time programmable read-only memory,OTPROM)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)、固态硬盘(solid state disk,SSD)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
Claims (10)
1.一种用于游戏手柄和游戏主机的数据处理方法,游戏主机和游戏手柄通过WIFI网络进行数据交互,其特征在于,包括:
游戏手柄捕获玩家的操作信息,基于所述操作信息生成第一控制指令;
所述游戏手柄获取多个预测模型,将所述第一控制指令分别输入所述多个预测模型,输出各个预测模型对应的预测指令;
所述游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息;其中,第二控制指令为所述多个预测指令中满足指定数量条件的指令,第二优先级信息表示第二控制指令与所述第一控制指令在第一时间间隔内伴随出现的概率;
所述游戏手柄在将所述第一控制指令发往所述游戏主机之后,将所述第二控制指令和所述第二优先级信息发往所述游戏主机;
所述游戏主机在接收到第二控制指令和第二优先级信息之后,查找所述第二控制指令对应的第二游戏数据,将所述第二游戏数据存储于所述第二优先级信息对应的存储器中;其中,第二优先级信息对应的概率值越大,第二优先级信息对应的存储器的性能越高;
所述游戏主机在执行完成所述第一控制指令之后,若接收到来自游戏手柄的与第二控制指令相同的控制指令,则从所述第二优先级信息对应的存储器中读取并处理所述第二游戏数据。
2.根据权利要求1所述方法,其特征在于,所述游戏主机包括第一存储器和第二存储器,所述第一存储器的性能大于所述第二存储器的性能,所述第一存储器或者所述第二存储器包括寄存器、高速缓存cache、主存RAM和虚拟内存中的一种;
所述将所述第二游戏数据存储于所述第二优先级信息对应的存储器中,包括:若所述第二优先级信息大于第二阈值且小于第一阈值,则将所述第二游戏数据存储于第二存储器;若所述第二优先级信息超过第一阈值,则将所述第二游戏数据存储于第一存储器。
3.根据权利要求2所述的方法,其特征在于,所述多个预测模型包括反向传播神经网络模型、卡尔曼滤波预测模型、时间序列预测模型、随机森林模型、softmax逻辑回归模型和临近算法模型中的多个;
或者,所述多个预测模型包括以下模型中的多个:多个参数不同的反向传播神经网络模型,多个参数不同的卡尔曼滤波预测模型,多个参数不同的时间序列预测模型,多个参数不同的随机森林模型,多个参数不同的softmax逻辑回归模型,多个参数不同的临近算法模型。
4.根据权利要求3所述方法,其特征在于,所述游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息,包括:
所述游戏手柄将多个预测指令中数量最多的指令作为所述第二控制指令,根据所述第二控制指令的数量在所述多个预测指令中所占的比重计算所述第二优先级信息。
5.根据权利要求2或3所述方法,其特征在于,至少一个第二控制指令包括第三指令和第四指令,至少一个第二优先级信息包括第三优先级信息和第四优先级信息,至少一个第二控制指令对应的第二游戏数据包括第三指令对应的第三游戏数据和第四指令对应的第四游戏数据,所述游戏手柄从多个预测指令中确定至少一个第二控制指令,并计算所述至少一个第二控制指令对应的至少一个第二优先级信息,包括:
所述游戏手柄将多个预测指令中数量最多的指令作为所述第三控制指令,根据所述第三控制指令的数量在所述多个预测指令中所占的比重计算所述第三优先级信息;将多个预测指令中数量第二的指令作为所述第四控制指令,根据所述第四控制指令的数量在所述多个预测指令中所占的比重计算所述第四优先级信息;
所述将所述第二游戏数据存储于所述第二优先级信息对应的存储器中,包括:将所述第三游戏数据存储于第一存储器,将所述第四游戏数据存储于第二存储器;
所述若接收到来自游戏手柄的与第二控制指令相同的控制指令,则从所述第二优先级信息对应的存储器中读取并处理所述第二游戏数据,包括:
若接收到来自游戏手柄的与第三控制指令相同的控制指令,则从所述第一存储器中读取并处理所述第三游戏数据;
若接收到来自游戏手柄的与第四控制指令相同的控制指令,则从所述第二存储器中读取并处理所述第四游戏数据。
6.根据权利要求3所述方法,其特征在于,在所述游戏手柄获取多个预测模型之前,还包括:
所述游戏手柄获取历史指令,通过所述历史指令对多个预测模型进行训练,存储经过训练的多个预测模型;
所述游戏手柄获取多个预测模型,包括:获取存储的经过训练的多个预测模型。
7.根据权利要求6所述方法,其特征在于,所述多个预测模型与第一玩家标识相关联,在所述游戏手柄获取多个预测模型之前,还包括:获取玩家的身份标识;确定所述身份标识与所述第一玩家标识是否匹配;
所述游戏手柄获取多个预测模型,包括:在所述身份标识与所述第一玩家标识匹配的情况下,获取所述第一玩家标识关联的多个预测模型。
8.根据权利要求7所述方法,其特征在于,所述多个历史指令与第一玩家标识相关联,所述获取历史指令,通过所述历史指令对多个预测模型进行训练,存储经过训练的多个预测模型,包括:
获取第一玩家标识对应的历史指令,通过所述第一玩家标识对应的历史指令对多个预测模型进行训练,将经过训练的多个预测模型与所述第一玩家标识进行关联存储。
9.一种游戏***,其特征在于,包括游戏主机和游戏手柄,所述游戏主机和所述游戏手柄在WiFi网络下进行数据交互,游戏主机和游戏手柄被配置为执行权利要求1-8任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,使处理器实现权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110681443.1A CN113332707B (zh) | 2021-06-18 | 2021-06-18 | 一种用于游戏手柄和游戏主机的数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110681443.1A CN113332707B (zh) | 2021-06-18 | 2021-06-18 | 一种用于游戏手柄和游戏主机的数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113332707A true CN113332707A (zh) | 2021-09-03 |
CN113332707B CN113332707B (zh) | 2024-02-23 |
Family
ID=77477423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110681443.1A Active CN113332707B (zh) | 2021-06-18 | 2021-06-18 | 一种用于游戏手柄和游戏主机的数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113332707B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024138816A1 (zh) * | 2022-12-29 | 2024-07-04 | 瑞声开泰声学科技(上海)有限公司 | 游戏手柄的数据处理方法、装置及游戏*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107895440A (zh) * | 2017-10-26 | 2018-04-10 | 广州市雷军游乐设备有限公司 | 游戏数据预先获取的方法、装置、终端设备及存储介质 |
US20190012876A1 (en) * | 2017-07-08 | 2019-01-10 | Gaming Analytics Inc | Machine-learning platform for operational decision making |
US10482100B1 (en) * | 2012-01-25 | 2019-11-19 | Zynga Inc. | Method to detect and score users who are likely to make payments in online social games |
CN110559651A (zh) * | 2019-09-16 | 2019-12-13 | 网易(杭州)网络有限公司 | 云游戏的控制方法及装置、计算机存储介质、电子设备 |
US20200306632A1 (en) * | 2019-03-27 | 2020-10-01 | Electronic Arts, Inc. | Predictive execution of distributed game engines |
WO2020251608A1 (en) * | 2019-06-14 | 2020-12-17 | Roblox Corporation | Predictive data preloading |
-
2021
- 2021-06-18 CN CN202110681443.1A patent/CN113332707B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10482100B1 (en) * | 2012-01-25 | 2019-11-19 | Zynga Inc. | Method to detect and score users who are likely to make payments in online social games |
US20190012876A1 (en) * | 2017-07-08 | 2019-01-10 | Gaming Analytics Inc | Machine-learning platform for operational decision making |
CN107895440A (zh) * | 2017-10-26 | 2018-04-10 | 广州市雷军游乐设备有限公司 | 游戏数据预先获取的方法、装置、终端设备及存储介质 |
US20200306632A1 (en) * | 2019-03-27 | 2020-10-01 | Electronic Arts, Inc. | Predictive execution of distributed game engines |
WO2020251608A1 (en) * | 2019-06-14 | 2020-12-17 | Roblox Corporation | Predictive data preloading |
CN110559651A (zh) * | 2019-09-16 | 2019-12-13 | 网易(杭州)网络有限公司 | 云游戏的控制方法及装置、计算机存储介质、电子设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024138816A1 (zh) * | 2022-12-29 | 2024-07-04 | 瑞声开泰声学科技(上海)有限公司 | 游戏手柄的数据处理方法、装置及游戏*** |
Also Published As
Publication number | Publication date |
---|---|
CN113332707B (zh) | 2024-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112076464B (zh) | 一种数据请求处理方法、装置、计算机设备及存储介质 | |
US11765754B2 (en) | Resource scheduling method and terminal device | |
Cámara et al. | Stochastic game analysis and latency awareness for proactive self-adaptation | |
CN112272581A (zh) | 在球队运动中进行交互的、可说明的且改进的比赛和球员表现预测的方法和*** | |
US11426665B2 (en) | Method, apparatus, computer program and recording medium for providing game service | |
CN103200272B (zh) | 一种流媒体存储***及存储方法 | |
US11907164B2 (en) | File loading method and apparatus, electronic device, and storage medium | |
CN112685058A (zh) | 应用程序更新包的预下载方法、相关设备及存储介质 | |
CN113332707A (zh) | 一种用于游戏手柄和游戏主机的数据处理方法 | |
US20230009375A1 (en) | Data prefetching method and apparatus, and storage device | |
CN113318448A (zh) | 游戏资源展示方法及装置、设备、模型训练方法 | |
CN115018081B (zh) | 特征选择方法、应用程序预测方法及装置 | |
CN112699046B (zh) | 应用程序测试方法及装置、电子设备和存储介质 | |
CN114432705A (zh) | 云游戏数据处理方法、装置、介质、设备及产品 | |
CN113304469B (zh) | 游戏玩家匹配方法、装置、计算机设备 | |
CN113230665A (zh) | 资源分配方法及装置 | |
EP3691765B1 (en) | Method and system for game data processing, server and computer readable storage medium | |
CN115151902A (zh) | 集群扩容方法、装置、存储介质及电子设备 | |
CN111957052A (zh) | 任务组队方法、装置、电子设备及存储介质 | |
CN116089477A (zh) | 分布式训练方法及*** | |
KR102454497B1 (ko) | 자체 저장된 게임 정보를 바탕으로 게임 콘텐츠를 제공하면서 사용자와 관련된 이벤트를 블록 정보로 공유하는 전자 장치 | |
CN113332706B (zh) | 一种在WiFi网络下处理游戏手柄指令的方法和装置 | |
CN113032278B (zh) | 应用程序的运行方式、终端设备的等级确认方法及装置 | |
CN114398094A (zh) | 小程序启动方法、装置、设备及计算机可读存储介质 | |
CN113010454A (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 |