游戏对象的处理方法、装置、电子设备和计算机可读介质制造方法及图纸

技术编号:26678341 阅读:12 留言:0更新日期:2020-12-12 02:11
本发明专利技术提供了一种游戏对象的处理方法、装置、电子设备和计算机可读介质,涉及计算机的技术领域,包括:获取待优化动画;根据目标包围盒对网格进行过滤,得到第一目标网格,对第一目标网格进行裁剪,得到第二目标网格,其中,第二目标网格为待渲染的网格,本申请所提出的方法,能够在动画运行时减小CPU的开销,减小性能问题,在保证动画品质的同时,保持游戏显示和交互的流畅性。

【技术实现步骤摘要】
游戏对象的处理方法、装置、电子设备和计算机可读介质
本专利技术计算机的
,尤其是涉及一种游戏对象的处理方法、装置、电子设备和计算机可读介质。
技术介绍
在游戏动画领域,动画系统呈现的内容和流畅性是衡量游戏品质的重要指标之一。Spine能够提供基于二维骨骼动画的动画解决方案,在Spine中通过将图片绑定到骨骼上,完成骨骼动画制作。但是,Spine使用二维骨骼动画驱动网格的方式,增加了逻辑计算,会增加CPU开销。游戏系统的完整生命周期包括初始化、每帧逻辑更新和渲染更新、终止等三个阶段。每帧逻辑更新和渲染更新的CPU计算开销,直接影响游戏系统的更新帧率,影响游戏显示和交互流畅性。Spine能够高效地制作精致的二维动画效果,但Spine使用二维骨骼动画驱动网格的方式,增加了逻辑计算,会增加CPU开销。随着游戏制作水平的不断提升,游戏二维动画趋于品质精品化、应用场景多样化,Spine动画对CPU开销的影响主要体现在动画品质和动画应用场景。一方面,从动画品质角度,较高的动画效果直接导致Spine动画资源的输出精度提高,CPU开销增大。另一方面,从动画应用场景角度,Spine动画出现在游戏内多个界面中,每个界面画布大小不同,显示的动画区域不同;此外,市面上的手机设备机型多,CPU性能参差不齐,游戏需要尽可能的适配市面上的主流机型。对于动画品质的问题,在现有技术中,可以通过设计优化、输出资源优化和运行时DrawCall合批处理来优化Spine动画,但是,上述优化方案有以下几点不足:设计和资源优化方面,建立资源输出规范并使用了资源监察工具,但是较难把握资源精度的限制程度,资源精度过低,会直接降低动画品质,影响用户体验,无法在兼顾动画品质的条件下有效降低CPU开销。运行时DrawCall合批处理方面,自动合批算法对常见的Spine动画优化有限。对于多样化的应用场景,针对不同场景输出资源能解决问题,但是需要更长的开发周期和开发成本,设计需求变化导致的成本较高;此外,多份资源输出,会导致游戏包体和更新补丁增大,影响用户的下载和更新体验,消耗更多流量。如果能优化Spine运行时算法,有效降低CPU开销,可以做到只输出一份资源,应用于不同场景,能极大的提高生产效率,降低制作成本。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种游戏对象的处理方法、装置、电子设备和计算机可读介质,本申请所提出的方法,能够在动画运行时减小CPU的开销,减小性能问题,在保证动画品质的同时,保持游戏显示和交互的流畅性。第一方面,本专利技术实施例提供了一种游戏对象的处理方法,包括:获取待优化动画;所述待优化动画中包含至少一个游戏对象,所述游戏对象包含与其对应的动画模型,所述动画模型包含骨骼和与其相绑定的网格;根据目标包围盒的对所述网格进行过滤,得到第一目标网格,其中,所述目标包围盒包括:所述网格的包围盒和/或所述裁剪区域的包围盒,所述裁剪区域表示所述待优化动画中待显示到游戏显示界面的区域;对所述第一目标网格进行裁剪,得到第二目标网格,其中,所述第二目标网格为待渲染的网格。进一步地,在对所述第一目标网格进行裁剪,得到第二目标网格之后,所述方法还包括:对所述第二目标网格进行合批渲染。进一步地,所述对所述第二目标网格进行合批渲染,包括:将所述第二目标网格的材质修改为相同材质,得到优化之后的动画;对所述优化之后的动画中的网格进行合批渲染。进一步地,所述网格中包含多个多边形;根据目标包围盒对所述网格进行过滤,得到第一目标网格包括:通过基于所述网格的包围盒的算法对所述网格进行过滤,得到第一目标网格,其中,所述第一目标网格的包围盒位于所述裁剪区域之内,或者,与所述裁剪区域相交。进一步地,根据目标包围盒对所述网格进行过滤,得到第一目标网格包括:通过基于所述裁剪区域的包围盒的算法对所述网格中的多个多边形进行过滤,得到第一目标网格,其中,所述第一目标网格与所述裁剪区域的包围盒相交,或者位于所述裁剪区域内。进一步地,通过基于所述网格的包围盒的算法对所述网格进行过滤,得到第一目标网格包括:根据所述网格的顶点坐标确定所述网格的包围盒;根据所述网格的包围盒的位置信息和所述裁剪区域的位置信息确定所述网格的包围盒和所述裁剪区域之间的位置关系,得到第一位置关系;根据所述第一位置关系对所述网格进行过滤,得到所述第一目标网格。进一步地,根据所述第一位置关系对所述网格进行过滤,得到所述第一目标网格包括:根据所述第一位置关系在所述网格中过滤出第一目标网格,其中,所述第一目标网格包括第一类网格和/或第二类网格,所述第一类网格的包围盒位于所述裁剪区域之内,所述第二类网格的包围盒与所述裁剪区域相交。进一步地,通过基于所述裁剪区域的包围盒的算法对所述网格中的多个多边形进行过滤,得到第一目标网格包括:根据所述裁剪区域的顶点坐标确定所述裁剪区域的包围盒;根据所述裁剪区域的包围盒的位置信息和所述网格中的多边形的位置信息确定所述裁剪区域的包围盒和所述多边形之间的位置关系,得到第二位置关系;根据所述第二位置关系对所述网格中的多边形进行过滤,得到所述第一目标网格。进一步地,根据所述第二位置关系对所述网格中的多边形进行过滤,得到所述第一目标网格包括:根据所述第二位置关系在所述多边形中过滤出目标多边形,并将所述目标多边形组成的网格确定为所述第一目标网格,其中,所述目标多边形包括第一类多边形和/或第二类多边形,所述第一类多边形位于所述裁剪区域的包围盒之内,或者,所述第二类多边形与所述裁剪区域的包围盒相交。进一步地,对第一目标网格进行裁剪,得到第二目标网格包括:对所述第一目标网格中的多边形和所述裁剪区域进行相交计算,得到所述第一目标网格中的多边形和所述裁剪区域之间相交关系;若根据所述相交关系确定出所述第一目标网格中的多边形位于所述裁剪区域之外,则丢弃所述第一目标网格中的多边形;若根据所述相交关系确定出所述第一目标网格中的多边形位于所述裁剪区域之内,则将所述第一目标网格中的多边形添加到输出网格队列中,其中,所述输出网格队列中的多边形为待渲染的多边形;若根据所述相交关系确定出所述第一目标网格中的至少一个多边形与所述裁剪区域相交,则将与裁减区域相交的至少一个多边形裁剪为包含在所述裁剪区域内的至少一个子多边形,并将所述子多边形添加到所述到输出网格队列中,其中,所述输出网格队列中的多边形为待渲染的多边形。进一步地,所述将与裁减区域相交的至少一个多边形裁剪为包含在所述裁剪区域内的至少一个子多边形,包括:对于每个与裁减区域相交的多边形,将其裁剪为位于所述裁减区域内的第一多边形和位于裁减区域外的第二多边形;若所述第一多边形为三角形,则将所述第一多边形作为所述子多边形;否则,将所述第一多边形裁减为多个子三角形,并将所述子三角形作为所述子多边形。进一步地,根据目标包围盒的对所述网格进行过滤还包括:根据所述网格的包围盒对所述网格进行过滤;根据所述裁剪区域的包围盒对过滤之后的网格中的三角形进行过滤,得到所述第一目标网格。进一步地,所述本文档来自技高网
...

【技术保护点】
1.一种游戏对象的处理方法,其特征在于,包括:/n获取待优化动画;所述待优化动画中包含至少一个游戏对象,所述游戏对象包含与其对应的动画模型,所述动画模型包含骨骼和与其相绑定的网格;/n根据目标包围盒的对所述网格进行过滤,得到第一目标网格,其中,所述目标包围盒包括:所述网格的包围盒和/或裁剪区域的包围盒,所述裁剪区域表示所述待优化动画中待显示到游戏显示界面的区域;/n对所述第一目标网格进行裁剪,得到第二目标网格,其中,所述第二目标网格为待渲染的网格。/n

【技术特征摘要】
1.一种游戏对象的处理方法,其特征在于,包括:
获取待优化动画;所述待优化动画中包含至少一个游戏对象,所述游戏对象包含与其对应的动画模型,所述动画模型包含骨骼和与其相绑定的网格;
根据目标包围盒的对所述网格进行过滤,得到第一目标网格,其中,所述目标包围盒包括:所述网格的包围盒和/或裁剪区域的包围盒,所述裁剪区域表示所述待优化动画中待显示到游戏显示界面的区域;
对所述第一目标网格进行裁剪,得到第二目标网格,其中,所述第二目标网格为待渲染的网格。


2.根据权利要求1所述的方法,其特征在于,在对所述第一目标网格进行裁剪,得到第二目标网格之后,所述方法还包括:
对所述第二目标网格进行合批渲染。


3.根据权利要求2所述的方法,其特征在于,所述对所述第二目标网格进行合批渲染,包括:
将所述第二目标网格的材质修改为相同材质,得到优化之后的动画;
对所述优化之后的动画中的网格进行合批渲染。


4.根据权利要求1所述的方法,其特征在于,根据目标包围盒对所述网格进行过滤,得到第一目标网格包括:
通过基于所述网格的包围盒的算法对所述网格进行过滤,得到第一目标网格,其中,所述第一目标网格的包围盒位于所述裁剪区域之内,或者,与所述裁剪区域相交。


5.根据权利要求1所述的方法,其特征在于,所述网格中包含多个多边形;根据目标包围盒对所述网格进行过滤,得到第一目标网格包括:
通过基于所述裁剪区域的包围盒的算法对所述网格中的多个多边形进行过滤,得到第一目标网格,其中,所述第一目标网格与所述裁剪区域的包围盒相交,或者位于所述裁剪区域内。


6.根据权利要求4所述的方法,其特征在于,通过基于所述网格的包围盒的算法对所述网格进行过滤,得到第一目标网格包括:
根据所述网格的顶点坐标确定所述网格的包围盒;
根据所述网格的包围盒的位置信息和所述裁剪区域的位置信息确定所述网格的包围盒和所述裁剪区域之间的位置关系,得到第一位置关系;
根据所述第一位置关系对所述网格进行过滤,得到所述第一目标网格。


7.根据权利要求6所述的方法,其特征在于,根据所述第一位置关系对所述网格进行过滤,得到所述第一目标网格包括:
根据所述第一位置关系在所述网格中过滤出第一目标网格,其中,所述第一目标网格包括第一类网格和/或第二类网格,所述第一类网格的包围盒位于所述裁剪区域之内,所述第二类网格的包围盒与所述裁剪区域相交。


8.根据权利要求5所述的方法,其特征在于,通过基于所述裁剪区域的包围盒的算法对所述网格中的多个多边形进行过滤,得到第一目标网格包括:
根据所述裁剪区域的顶点坐标确定所述裁剪区域的包围盒;
根据所述裁剪区域的包围盒的位置信息和所述网格中的多边形的位置信息确定所述裁剪区域的包围盒和所述多边形之间的位置关系,得到第二位置关系;
根据所述第二位置关系对所述网格中的多边形进行过滤,得到所述第一目标网格。


9.根据权利要求8所述的方法,其特征在于,根据所述第二位置关系对所述网格中的多边形进行过滤,得到所述第一目标网格包括:
根据所述第二位置关系在所述多边形中过滤出目标多边形,并将所述目标多边形组成的网格确定为所述第一目标网格,其中,所述目标多边形包括第一类多边形和/或第二类多边形,所述第一类多边形位于所述裁剪区域的包围盒之内,或者,所述第二类多边形与所述裁剪区域的包围盒相交。


10.根据权利要求1至9中任一项所述的方法,其特征在于,对第一目标网格进行裁剪,得到第二目标网格包括:
对所述第一目标网格中的多边形和所述裁剪区域进行相交计算,得到所述第一目标网格中的多边形和所述裁剪区域之间相交关系;
若根据所述相交关系确定出所述第一目标网格中的多边形位于所述裁剪区域之外,则丢弃所述第一目标网格中的多边形;
若根据所述相交关系确定出所述第一目标网格中的多边形位于所述裁剪区域之内,则将所述第一目标网格中的多边形添加到输出网格队列中,其中,所述输出网格队列中的多边形为待渲染的多边形;
若根据所述相交关系确定出所述第一目标网格中的至少一个多边形与所述裁剪区域相交,则将与裁减区域相交的至少一个多边形裁剪为包含在所述裁剪区域内的至少一个子多边形,并将所述子多边形添加到所述到输出网格队列中,其中,所述输出网格队列中的多边形为待渲染的多边形。


11.根据权利要求10所述的方法,其特征在于,所述将与裁减区域相...

【专利技术属性】
技术研发人员:宋辉
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:浙江;33

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

1