[发明专利]游戏元素的处理方法和装置、存储介质及处理器有效
申请号: | 201911158147.2 | 申请日: | 2019-11-22 |
公开(公告)号: | CN110928628B | 公开(公告)日: | 2022-12-27 |
发明(设计)人: | 冯艺 | 申请(专利权)人: | 网易(杭州)网络有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451;G06T15/00 |
代理公司: | 北京博浩百睿知识产权代理有限责任公司 11134 | 代理人: | 赵昀彬 |
地址: | 310000 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 游戏 元素 处理 方法 装置 存储 介质 处理器 | ||
本发明公开了一种游戏元素的处理方法和装置、存储介质及处理器。其中,该方法包括:获取待渲染的游戏元素集合,其中,游戏元素集合采用树状结构表示;按照树状结构对游戏元素集合进行遍历,并基于当前遍历的游戏元素的属性信息确定当前遍历的游戏元素与游戏画面显示区域之间的相对关系;根据相对关系确定是否继续对当前遍历的游戏元素所在分支的其余游戏元素进行遍历,其中,当前遍历的游戏元素与其余游戏元素之间存在父子关系。本发明解决了相关技术中游戏元素的处理量大,资源消耗多的技术问题。
技术领域
本发明涉及游戏渲染领域,具体而言,涉及一种游戏元素的处理方法和装置、存储介质及处理器。
背景技术
Cocos2dx游戏引擎使用了节点树数据结构,用以描述游戏中元素的组织结构。在游戏每一帧开始时,引擎会从根节点开始,对整个节点树进行深度遍历。在遍历过程中,对每个游戏元素生成对应的渲染指令,放入渲染指令队列中,最后通过顺序遍历渲染指令队列,执行每一条渲染指令,绘制出本帧游戏画面。
通过性能分析工具可知,遍历节点树和生成渲染指令操作,占据了客户端CPU消耗的大头。因此,若能减少节点树遍历的消耗,游戏帧率、耗电量等指标会有较明显的提升。
为了解决上述问题,相关技术提供了如下方案:当遍历节点树到达一个可绘制节点时,根据该节点的位置、大小,通过坐标变换,得到投影在屏幕上的具体位置,然后判断该位置是否完全处于屏幕以外,若完全处于屏幕外,则不对该节点生成绘制指令,若处于屏幕内,则生成对应的绘制指令。
但是,上述的处理方案只针对了底层可绘制节点进行裁剪,并没有针对其上层节点进行提前裁剪,导致有较大可能性会造成无效的遍历,资源消耗较多。例如,当一个节点内挂了非常多的元素,但该节点已经完全处于屏幕以外了,按照上述处理方案,会继续遍历节点内所有元素,判断每一个元素是否可裁剪,再生成绘制指令。但是对于大部分情况,当一个上层节点的可视范围离开了屏幕范围,其子节点非常大概率也不会在屏幕范围内,因此对这些子节点进行遍历非常浪费资源。
针对相关技术中游戏元素的处理量大,资源消耗多的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种游戏元素的处理方法和装置、存储介质及处理器,以至少解决相关技术中游戏元素的处理量大,资源消耗多的技术问题。
根据本发明实施例的第一方面,提供了一种游戏元素的处理方法,包括:获取待渲染的游戏元素集合,其中,游戏元素集合采用树状结构表示;按照树状结构对游戏元素集合进行遍历,并基于当前遍历的游戏元素的属性信息确定当前遍历的游戏元素与游戏画面显示区域之间的相对关系;根据相对关系确定是否继续对当前遍历的游戏元素所在分支的其余游戏元素进行遍历,其中,当前遍历的游戏元素与其余游戏元素之间存在父子关系。
进一步地,基于当前遍历的游戏元素的属性信息确定当前遍历的游戏元素与游戏画面显示区域之间的相对关系包括:获取当前遍历的游戏元素在游戏画面显示区域所在平面上的投影区域;基于投影区域的位置和大小确定相对关系。
进一步地,根据相对关系确定是否继续对其余游戏元素进行遍历包括:如果根据相对关系确定投影区域处于游戏画面显示区域之外,则放弃继续对其余游戏元素进行遍历;如果根据相对关系确定投影区域处于游戏画面显示区域之内,则继续对其余游戏元素进行遍历。
进一步地,在基于当前遍历的游戏元素的属性信息确定当前遍历的游戏元素与游戏画面显示区域之间的相对关系之前,该方法还包括:基于当前遍历的游戏元素的属性信息确定当前遍历的游戏元素与允许处理元素集合的所属关系;如果根据所属关系确定当前遍历的游戏元素属于允许处理元素集合,则基于当前遍历的游戏元素的属性信息确定相对关系,并根据相对关系确定是否继续对当前遍历的游戏元素所在分支的其余游戏元素进行遍历;如果根据所属关系确定当前遍历的游戏元素不属于允许处理元素集合,则基于当前遍历的游戏元素的属性信息确定相对关系,并继续对其余游戏元素进行遍历。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易(杭州)网络有限公司,未经网易(杭州)网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911158147.2/2.html,转载请声明来源钻瓜专利网。