一种数据处理方法、装置及存储介质制造方法及图纸

技术编号:25818790 阅读:23 留言:0更新日期:2020-10-02 14:05
本发明专利技术实施例公开一种数据处理方法、装置及存储介质,其中,方法包括:获取游戏客户端发送的云游戏数据获取请求;在游戏客户端所在的客户端环境系统对应的云虚拟容器中,根据云游戏数据获取请求启动游戏进程;在获取到为游戏进程所分配的帧缓冲区时,通过游戏进程与图形渲染库之间的桥接通道,调用图形渲染库得到与客户端环境系统具有远程映射关系的图形渲染指令;基于图形渲染指令访问与帧缓冲区相关联的物理渲染器件,以对游戏进程对应的游戏数据进行容器内的渲染处理,得到渲染游戏数据;根据渲染游戏数据生成用于在游戏客户端进行显示的游戏合成画面。采用本发明专利技术,可以增强游戏兼容性,并降低渲染时延。

【技术实现步骤摘要】
一种数据处理方法、装置及存储介质
本专利技术涉及计算机计算领域,具体涉及云
,尤其涉及一种数据处理方法、装置及存储介质。
技术介绍
在云游戏场景下,所有游戏都在服务器端运行,并可以在该服务器端将渲染完毕后的游戏画面返回给相应游戏玩家所对应的终端。然而,现有的云游戏的渲染需要将某个运行系统(比如,安卓系统)内部的图形渲染接口外发到外部渲染器件上进行渲染,进而降低了云游戏的渲染时延,以至于在大型云游戏的运行场景下,会降低游戏的帧率。此外,通过将系统内部的图形渲染接口进行外发,会在该系统的外部进行图形渲染,这意味着在系统外部对待渲染的游戏数据进行渲染格式之前,需要预先对系统内部和系统外部之间所采用的不同渲染方式进行转换,所以,当在系统外部对待渲染的游戏数据(即格式转换后的游戏数据)进行渲染格式时,会存在误转换的现象,例如,当在系统外部进行游戏渲染时,可能只有40%的游戏可以正常渲染,以至于降低了游戏的兼容性。
技术实现思路
本专利技术实施例提供一种数据处理方法、装置及存储介质,可以增强游戏兼容性,并降低渲染时延。本专利技术实施例一方面提供了一种数据处理方法,方法包括:获取游戏客户端发送的云游戏数据获取请求;在游戏客户端所在的客户端环境系统对应的云虚拟容器中,根据云游戏数据获取请求启动游戏进程;在获取到为游戏进程所分配的帧缓冲区时,在云虚拟容器中通过游戏进程与图形渲染库之间的桥接通道,调用图形渲染库得到与客户端环境系统具有远程映射关系的图形渲染指令;基于图形渲染指令访问与帧缓冲区相关联的物理渲染器件,通过物理渲染器件对游戏进程对应的游戏数据进行容器内的渲染处理,得到游戏进程对应的渲染游戏数据;根据渲染游戏数据生成用于在游戏客户端进行显示的游戏合成画面。本专利技术实施例一方面提供了一种数据处理装置,装置包括:请求获取模块,用于获取游戏客户端发送的云游戏数据获取请求;游戏进程启动模块,用于在游戏客户端所在的客户端环境系统对应的云虚拟容器中,根据云游戏数据获取请求启动游戏进程;渲染指令确定模块,用于在获取到为游戏进程所分配的帧缓冲区时,在云虚拟容器中通过游戏进程与图形渲染库之间的桥接通道,调用图形渲染库得到与客户端环境系统具有远程映射关系的图形渲染指令;渲染处理模块,用于基于图形渲染指令访问与帧缓冲区相关联的物理渲染器件,通过物理渲染器件对游戏进程对应的游戏数据进行容器内的渲染处理,得到游戏进程对应的渲染游戏数据;合成画面生成模块,用于根据渲染游戏数据生成用于在游戏客户端进行显示的游戏合成画面。其中,装置还包括:远程鉴权模块,用于在获取到游戏客户端发送的远程连接请求时,基于远程连接请求对游戏客户端对应的游戏用户进行远程鉴权,得到远程鉴权结果;远程连接请求为游戏用户通过游戏账号信息访问游戏客户端时所得到的;远程连接请求中携带游戏客户端所在的客户端环境系统;连接建立模块,用于若远程鉴权结果指示游戏用户具有远程访问游戏客户端的权限,则与游戏客户端建立数据连接关系;客户端启动模块,用于在基于数据连接关系为游戏客户端配置好云虚拟容器时,通过云虚拟容器中的云游戏启动指令,启动并运行游戏客户端。其中,游戏客户端对应的游戏显示页面中包括与游戏用户相关联的虚拟对象,游戏显示页面中的业务控件用于在游戏客户端对应的云游戏环境系统中操控虚拟对象的游戏属性行为;游戏进程启动模块包括:容器确定单元,用于基于游戏客户端所在的客户端环境系统,确定与客户端环境系统相匹配的云游戏环境系统对应的云虚拟容器;启动指令确定单元,用于从云游戏数据获取请求中提取业务控件所指示的虚拟对象的属性行为事件,确定与属性行为事件相关联的进程启动指令;进程启动单元,用于将进程启动指令输入云虚拟容器,在云虚拟容器中控制虚拟对象执行游戏属性行为,且启动与游戏属性行为相关联的K个关联进程;K为正整数;游戏进程确定单元,用于将K个关联进程作为与业务控件相关联的游戏进程。其中,云虚拟容器中包含已重构的系统图形栈;系统图形栈用于指示在云虚拟容器中直接访问具有图形渲染功能的物理渲染器件;系统图形栈包括:游戏进程、帧缓冲组件、缓冲分配器、图形渲染节点、图形渲染驱动和物理渲染器件;装置还包括:申请指令发送模块,用于通过游戏进程向帧缓冲组件发送帧缓冲区申请指令;帧缓冲区申请指令用于指示帧缓冲组件向缓冲分配器发送缓冲分配指令;渲染驱动调用模块,用于在缓冲分配器基于缓冲分配指令为游戏进程分配帧缓冲区时,通过与缓冲分配器具有关联关系的图形渲染节点,调用图形渲染驱动,以在与图形渲染驱动具有层级关系的物理渲染器件中分配帧缓冲区对应的显存;地址返回模块,用于将显示对应的显存地址返回给游戏进程;显存地址用于指向游戏进程对应的帧缓冲区。其中,系统图形栈包括:与游戏进程具有关联关系的图形渲染库;渲染指令确定模块包括:关联关系获取单元,用于在获取到为游戏进程所分配的帧缓冲区时,获取游戏进程与图形渲染库之间的关联关系;桥接通道确定单元,用于基于关联关系在云虚拟容器中确定游戏进程与图形渲染库之间的桥接通道;渲染指令获取单元,用于通过桥接通道调用图形渲染库,从图形渲染库中获取与客户端环境系统具有远程映射关系的图形渲染指令。其中,图形渲染库中包含具有指令封装功能的封装组件;渲染处理模块包括:标准化处理单元,用于将图形渲染指令通过封装组件进行标准化处理,将标准化处理后的图形渲染指令通过图形渲染节点传输给图形渲染驱动;物理器件访问单元,用于基于图形渲染驱动与图形渲染器件之间的层级关系,访问与帧缓冲区相关联的物理渲染器件;渲染处理单元,用于通过物理渲染器件的图形渲染功能对游戏进程对应的游戏数据进行容器内的渲染处理,将渲染处理后的游戏数据作为游戏进程对应的渲染游戏数据。其中,缓冲分配器具有管理帧缓冲区的整个生命周期;装置还包括:缓冲区销毁模块,用于在检测到游戏进程的进程状态为结束状态时,通过缓冲分配器销毁游戏进程所对应的帧缓冲区。其中,云游戏数据获取请求中携带游戏客户端对应的游戏用户在游戏显示界面中所触发的业务控件;游戏进程包括与业务控件相关联的K个关联进程;物理渲染器件中包含与K个关联进程分别对应的K个显存;渲染游戏数据中包含对K个关联进程的游戏数据进行渲染处理后的K个子渲染数据;一个显存用于存储一个关联进程对应的一个子渲染数据;合成画面生成模块包括:数据界面输出单元,用于将K个显存中所存储的子渲染数据输出至对应显存的显存地址所映射的帧缓冲区,在每个帧缓冲区中输出K个子渲染数据对应的数据界面;合成处理单元,用于通过云虚拟容器中的图形合成器,对K个子渲染数据对应的数据界面进行合成处理,基于合成处理后的K个子渲染数据的数据界面,生成用于在游戏客户端进行显示的游戏合成画面。其中,图形合成器用于提供针对游戏客本文档来自技高网...

【技术保护点】
1.一种数据处理方法,其特征在于,包括:/n获取游戏客户端发送的云游戏数据获取请求;/n在所述游戏客户端所在的客户端环境系统对应的云虚拟容器中,根据所述云游戏数据获取请求启动游戏进程;/n在获取到为所述游戏进程所分配的帧缓冲区时,在所述云虚拟容器中通过所述游戏进程与图形渲染库之间的桥接通道,调用所述图形渲染库得到与所述客户端环境系统具有远程映射关系的图形渲染指令;/n基于所述图形渲染指令访问与所述帧缓冲区相关联的物理渲染器件,通过所述物理渲染器件对所述游戏进程对应的游戏数据进行容器内的渲染处理,得到所述游戏进程对应的渲染游戏数据;/n根据所述渲染游戏数据生成用于在所述游戏客户端进行显示的游戏合成画面。/n

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:
获取游戏客户端发送的云游戏数据获取请求;
在所述游戏客户端所在的客户端环境系统对应的云虚拟容器中,根据所述云游戏数据获取请求启动游戏进程;
在获取到为所述游戏进程所分配的帧缓冲区时,在所述云虚拟容器中通过所述游戏进程与图形渲染库之间的桥接通道,调用所述图形渲染库得到与所述客户端环境系统具有远程映射关系的图形渲染指令;
基于所述图形渲染指令访问与所述帧缓冲区相关联的物理渲染器件,通过所述物理渲染器件对所述游戏进程对应的游戏数据进行容器内的渲染处理,得到所述游戏进程对应的渲染游戏数据;
根据所述渲染游戏数据生成用于在所述游戏客户端进行显示的游戏合成画面。


2.根据权利要求1所述的方法,其特征在于,在所述获取游戏客户端发送的云游戏数据获取请求之前,所述方法还包括:
在获取到游戏客户端发送的远程连接请求时,基于所述远程连接请求对所述游戏客户端对应的游戏用户进行远程鉴权,得到远程鉴权结果;所述远程连接请求为所述游戏用户通过游戏账号信息访问所述游戏客户端时所得到的;所述远程连接请求中携带所述游戏客户端所在的客户端环境系统;
若所述远程鉴权结果指示所述游戏用户具有远程访问所述游戏客户端的权限,则与所述游戏客户端建立数据连接关系;
在基于所述数据连接关系为所述游戏客户端配置好云虚拟容器时,通过所述云虚拟容器中的云游戏启动指令,启动并运行所述游戏客户端。


3.根据权利要求2所述的方法,其特征在于,所述游戏客户端对应的游戏显示页面中包括与所述游戏用户相关联的虚拟对象,所述游戏显示页面中的业务控件用于在所述游戏客户端对应的云游戏环境系统中操控所述虚拟对象的游戏属性行为;
所述在所述游戏客户端所在的客户端环境系统对应的云虚拟容器中,根据所述云游戏数据获取请求启动游戏进程,包括:
基于所述游戏客户端所在的客户端环境系统,确定与所述客户端环境系统相匹配的云游戏环境系统对应的云虚拟容器;
从所述云游戏数据获取请求中提取所述业务控件所指示的所述虚拟对象的属性行为事件,确定与所述属性行为事件相关联的进程启动指令;
将所述进程启动指令输入所述云虚拟容器,在所述云虚拟容器中控制所述虚拟对象执行所述游戏属性行为,且启动与所述游戏属性行为相关联的K个关联进程;所述K为正整数;
将所述K个关联进程作为与所述业务控件相关联的游戏进程。


4.根据权利要求1所述的方法,其特征在于,所述云虚拟容器中包含已重构的系统图形栈;所述系统图形栈用于指示在所述云虚拟容器中直接访问具有图形渲染功能的物理渲染器件;所述系统图形栈包括:所述游戏进程、帧缓冲组件、缓冲分配器、图形渲染节点、图形渲染驱动和所述物理渲染器件;
所述方法还包括:
通过所述游戏进程向所述帧缓冲组件发送帧缓冲区申请指令;所述帧缓冲区申请指令用于指示所述帧缓冲组件向所述缓冲分配器发送缓冲分配指令;
在所述缓冲分配器基于所述缓冲分配指令为所述游戏进程分配帧缓冲区时,通过与所述缓冲分配器具有关联关系的图形渲染节点,调用所述图形渲染驱动,以在与图形渲染驱动具有层级关系的所述物理渲染器件中分配所述帧缓冲区对应的显存;
将所述显示对应的显存地址返回给所述游戏进程;所述显存地址用于指向所述游戏进程对应的所述帧缓冲区。


5.根据权利要求4所述的方法,其特征在于,所述系统图形栈包括:与所述游戏进程具有关联关系的图形渲染库;
所述在获取到为所述游戏进程所分配的帧缓冲区时,在所述云虚拟容器中通过所述游戏进程与图形渲染库之间的桥接通道,调用所述图形渲染库得到与所述客户端环境系统具有远程映射关系的图形渲染指令,包括:
在获取到为所述游戏进程所分配的帧缓冲区时,获取所述游戏进程与所述图形渲染库之间的所述关联关系;
基于所述关联关系在所述云虚拟容器中确定所述游戏进程与图形渲染库之间的桥接通道;
通过所述桥接通道调用所述图形渲染库,从所述图形渲染库中获取与所述客户端环境系统具有远程映射关系的图形渲染指令。


6.根据权利要求5所述的方法,其特征在于,所述图形渲染库中包含具有指令封装功能的封装组件;
所述基于所述图形渲染指令访问与所述帧缓冲区相关联的物理渲染器件,通过所述物理渲染器件对所述游戏进程对应的游戏数据进行容器内的渲染处理,得到所述游戏进程对应的渲染游戏数据,包括:
将所述图形渲染指令通过所述封装组件进行标准化处理,将标准化处理后的图形渲染指令通过所述图形渲染节点传输给所述图形渲染驱动;
基于所述图形渲染驱动与所述图形渲染器件之间的层级关系,访问与所述帧缓冲区相关联的物理渲染器件;
通过所述物理渲染器件的图形渲染功能对所述游戏进程对应的游戏数据进行容器内的渲染处理,将渲染处理后的游戏数据作为所述游戏进程对应的渲染游戏数据。


7.根据权利要求4所述的方法,其特征在于,所述缓冲分配...

【专利技术属性】
技术研发人员:任韬华有为许斌盛郗英坤李勇杨坤
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1