首页 / 专利库 / 软件 / 图形用户界面 / 骨骼动画的隐藏方法、装置及设备

骨骼动画的隐藏方法、装置及设备

阅读:933发布:2020-05-08

专利汇可以提供骨骼动画的隐藏方法、装置及设备专利检索,专利查询,专利分析的服务。并且本 发明 实施例 提供的一种骨骼动画的隐藏方法、装置和设备,在检测到对骨骼动画的隐藏指令时,从 指定 类引用的对象中,获取与所述隐藏指令对应的对象,作为目标对象;其中,所述指定类用于在图形 用户界面 中显示利用Spine构建的骨骼动画;利用预设的纹理清除 接口 ,从 渲染 得到的纹理中清除所述目标对象的纹理。本方案可以兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能。,下面是骨骼动画的隐藏方法、装置及设备专利的具体信息内容。

1.一种骨骼动画的隐藏方法,其特征在于,所述方法包括:
在检测到对骨骼动画的隐藏指令时,从指定类引用的对象中,获取与所述隐藏指令对应的对象,作为目标对象;其中,所述指定类用于在图形用户界面中显示骨骼动画;
利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理。
2.根据权利要求1所述的方法,其特征在于,在所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理之前,所述方法还包括:
在预设的禁止模型中,封装所述预设的纹理清除接口;
所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,包括:
将所述目标对象传入所述预设的禁止模型,以使得所述预设的禁止模型中的所述预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,并使得所述预设的禁止模型清除用于渲染得到所述目标对象的纹理的数据。
3.根据权利要求2所述的方法,其特征在于,所述将所述目标对象传入所述预设的禁止模型,包括:
将第一预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件对所述预设的禁止模型的调用,并将所述实例化接口对应的所述目标对象传入所述预设的禁止模型。
4.根据权利要求3所述的方法,其特征在于,在所述从渲染得到的纹理中清除所述目标对象的纹理之后,所述方法还包括:
在检测到对所述目标对象的恢复显示指令时,将第二预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件利用所述指定类对所述目标对象进行渲染,得到所述目标对象的纹理,并在所述图形用户界面中显示所述目标对象的纹理。
5.根据权利要求1所述的方法,其特征在于,所述渲染得到的纹理数量为多个,存储为纹理数组;
所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,包括:
利用预设的纹理清除接口和所述目标对象,遍历所述纹理数组,得到所述目标对象的纹理;
清除所述目标对象的纹理。
6.一种骨骼动画的隐藏装置,其特征在于,所述装置包括:
目标对象获取模,用于在检测到对骨骼动画的隐藏指令时,从指定类引用的对象中,获取与所述隐藏指令对应的对象,作为目标对象;其中,所述指定类用于在图形用户界面中显示骨骼动画;
隐藏模块,用于利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理。
7.根据权利要求6所述的装置,其特征在于,所述隐藏模块,具体用于:
在所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理之前,在预设的禁止模型中,封装所述预设的纹理清除接口;
将所述目标对象传入所述预设的禁止模型,以使得所述预设的禁止模型中的所述预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,并使得所述预设的禁止模型清除用于渲染得到所述目标对象的纹理的数据。
8.根据权利要求7所述的装置,其特征在于,所述隐藏模块,具体用于:
将第一预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件对所述预设的禁止模型的调用,并将所述实例化接口对应的所述目标对象传入所述预设的禁止模型。
9.一种电子设备,其特征在于,包括处理器、通信接口存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现如权利要求1-5任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-5任一所述的方法步骤。

说明书全文

骨骼动画的隐藏方法、装置及设备

技术领域

[0001] 本发明涉及模型动画技术领域,特别是涉及一种骨骼动画的隐藏方法、装置及设备。

背景技术

[0002] 在利用计算机构建三维形体的模型,并由计算机自动产生一系列具有真实感的连续动态图像的模型动画中,骨骼动画是一种能够构建具有互相连接的“骨骼”组成的骨架结构的模型,进而通过改变骨骼的朝向和位置实现动画效果的模型动画,可以使用相对而言很少的资源实现非常丰富的动画效果,因此,骨骼动画被广泛使用在各种需要实现模型的动画效果的游戏场景中。在具体应用中,可以利用Spine便捷地构建骨骼动画,Spine为一种实现骨骼动画的解决方案。
[0003] 相关技术中,可以在需要实现模型的动画效果的应用的GUI(Graphical User Interface,图形用户界面)中,显示利用Spine构建的骨骼动画。并且,骨骼动画与GUI分别属于不同的组件,因此,为了保证骨骼动画可以显示在属于另一组件的GUI中,Spine提供用于在GUI中显示骨骼动画的类。
[0004] 但是,如果要隐藏所显示的骨骼动画,需要将该骨骼动画移出显示屏。由此,虽然实现了骨骼动画的隐藏,但是关于骨骼动画显示的数据依然存在,该数据消耗CPU(central processing unit,中央处理器)的处理资源,导致CPU的性能下降。因此,如何兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能,是亟待解决的问题。

发明内容

[0005] 本发明实施例的目的在于提供一种骨骼动画的隐藏方法、装置及设备,以实现兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能的效果。具体技术方案如下:
[0006] 第一方面,本发明实施例提供了一种骨骼动画的隐藏方法,该方法包括:
[0007] 在检测到对骨骼动画的隐藏指令时,从指定类引用的对象中,获取与所述隐藏指令对应的对象,作为目标对象;其中,所述指定类用于在图形用户界面中显示利用Spine构建的骨骼动画;
[0008] 利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理。
[0009] 可选的,在所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理之前,所述方法还包括:
[0010] 在预设的禁止模型中,封装所述预设的纹理清除接口;
[0011] 所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,包括:
[0012] 将所述目标对象传入所述预设的禁止模型,以使得所述预设的禁止模型中的所述预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,并使得所述预设的禁止模型清除用于渲染得到所述目标对象的纹理的数据。
[0013] 可选的,所述将所述目标对象传入所述预设的禁止模型,包括:
[0014] 将第一预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件对所述预设的禁止模型的调用,并将所述实例化接口对应的所述目标对象传入所述预设的禁止模型。
[0015] 可选的,在所述从渲染得到的纹理中清除所述目标对象的纹理之后,所述方法还包括:
[0016] 在检测到对所述目标对象的恢复显示指令时,将第二预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件利用所述指定类对所述目标对象进行渲染,得到所述目标对象的纹理,并在所述图形用户界面中显示所述目标对象的纹理。
[0017] 可选的,所述渲染得到的纹理数量为多个,存储为纹理数组;
[0018] 所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,包括:
[0019] 利用预设的纹理清除接口和所述目标对象,遍历所述纹理数组,得到所述目标对象的纹理;
[0020] 清除所述目标对象的纹理。
[0021] 第二方面,本发明实施例提供了一种骨骼动画的隐藏装置,该装置包括:
[0022] 目标对象获取模,用于在检测到对骨骼动画的隐藏指令时,从指定类引用的对象中,获取与所述隐藏指令对应的对象,作为目标对象;其中,所述指定类用于在图形用户界面中显示利用Spine构建的骨骼动画;
[0023] 隐藏模块,用于利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理。
[0024] 可选的,所述隐藏模块,具体用于:
[0025] 在所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理之前,在预设的禁止模型中,封装所述预设的纹理清除接口;
[0026] 将所述目标对象传入所述预设的禁止模型,以使得所述预设的禁止模型中的所述预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,并使得所述预设的禁止模型清除用于渲染得到所述目标对象的纹理的数据。
[0027] 可选的,所述隐藏模块,具体用于:
[0028] 将第一预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件对所述预设的禁止模型的调用,并将所述实例化接口对应的所述目标对象传入所述预设的禁止模型。
[0029] 可选的,所述装置还包括:恢复显示模块,用于:
[0030] 在所述从渲染得到的纹理中清除所述目标对象的纹理之后,在检测到对所述目标对象的恢复显示指令时,将第二预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件利用所述指定类对所述目标对象进行渲染,得到所述目标对象的纹理,并在所述图形用户界面中显示所述目标对象的纹理。
[0031] 可选的,所述渲染得到的纹理数量为多个,存储为纹理数组;
[0032] 所述隐藏模块,具体用于:
[0033] 利用预设的纹理清除接口和所述目标对象,遍历所述纹理数组,得到所述目标对象的纹理;
[0034] 清除所述目标对象的纹理。
[0035] 第三方面,本发明实施例提供了一种电子设备,该设备包括:
[0036] 处理器、通信接口存储器和通信总线,其中,处理器,通信接口,存储器通过总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序,实现上述第一方面提供的骨骼动画的隐藏方法的步骤。
[0037] 第四方面,本发明实施例提供了一种计算机可读存储介质,该存储介质内存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面提供的骨骼动画的隐藏方法的步骤。
[0038] 本发明实施例提供的方案中,指定类用于在图形用户界面中显示骨骼动画,因此,在检测到对利用Spine构建的骨骼动画的隐藏指令时,获取指定类所引用的对象中与隐藏指令对应的对象,作为目标对象,相当于将图形用户界面所显示的骨骼动画中待隐藏的骨骼动画作为目标对象。在此基础上,所显示的骨骼动画是对该骨骼动画的渲染得到的纹理的显示,因此,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,相当于从图形用户界面中清除所显示的待隐藏的骨骼动画,实现对利用Spine构建的骨骼动画的隐藏。并且,从渲染得到的纹理中清除目标对象的纹理可以保证关于待隐藏的骨骼动画显示的数据不再存在,从而减少进行骨骼动画隐藏时关于待隐藏的骨骼动画显示的数据,对CPU的处理资源的占用所导致的CPU的性能的下降。可见,通过本方案可以兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能。附图说明
[0039] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
[0040] 图1为本发明一实施例提供的骨骼动画的隐藏方法的流程示意图;
[0041] 图2为本发明一实施例提供的骨骼动画的隐藏方法的应用场景的示例图;
[0042] 图3为本发明另一实施例提供的骨骼动画的隐藏方法的流程示意图;
[0043] 图4为本发明一实施例提供的骨骼动画的隐藏装置的结构示意图;
[0044] 图5为本发明一实施例提供的电子设备的结构示意图。

具体实施方式

[0045] 为了使本领域技术人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046] 下面首先对本发明一实施例的骨骼动画的隐藏方法进行介绍。
[0047] 本发明实施例提供的骨骼动画的隐藏方法,可以应用于能够构建以及展示骨骼动画的电子设备,在具体应用中,该电子设备可以包括台式计算机、便携式计算机、互联网电视、智能移动终端、服务器以及可穿戴式智能终端等等,在此不作限定,任何可以实现本发明实施例的电子设备,均属于本发明实施例的保护范围。
[0048] 如图1所示,本发明一实施例的骨骼动画的隐藏方法的流程,该方法可以包括如下步骤:
[0049] S101,在检测到对骨骼动画的隐藏指令时,从指定类引用的对象中,获取与隐藏指令对应的对象,作为目标对象。其中,指定类用于在图形用户界面中显示骨骼动画。
[0050] 在具体应用中,对骨骼动画的隐藏指令的检测方式可以是多种的。示例性的,当对骨骼动画的隐藏指令由用户输入时,如果接收到用户输入的隐藏指令,确定检测到对骨骼动画的隐藏指令。其中,用户输入隐藏指令的方式可以是多种的,例如,用户点击图形用户界面中的指定按钮或者指定位置等等,或者,用户直接输入隐藏指令等等。或者,示例性的,当对骨骼动画的隐藏指令由关于骨骼动画的应用按预设周期性触发时,如果当前时刻到达预设周期,或者,监测到隐藏指令被触发,确定检测到对骨骼动画的隐藏指令。任何对骨骼动画的隐藏指令的检测方式均可用于本发明,本实施例对此不作限制。
[0051] 并且,指定类用于在图形用户界面中显示利用Spine构建的骨骼动画,一般地,骨骼动画由一个动画文件和一个纹理文件组成。除此之外,利用Spine构建的多纹理骨骼动画由一个动画文件和多个纹理文件组成。其中,动画文件提供关于多纹理骨骼动画的动作的数据,例如,关于多纹理骨骼动画的跑、跳以及攻击等等动作的数据;纹理文件,即图片,提供关于多纹理骨骼动画的外观的数据,例如,多纹理骨骼动画显示的外貌以及外形等等关于外观的数据。利用指定类在图形用户界面中显示利用Spine构建的多纹理骨骼动画时,可以加载多纹理骨骼动画的动画文件和多个纹理文件,加载后纹理文件被转换为对象,供指定类引用,从而将多纹理骨骼动画显示在图形用户界面中。以此为基础,多纹理骨骼动画的隐藏相当于实现多纹理骨骼动画的纹理文件不再显示的效果。并且,指定类引用的对象数量为多个,与隐藏指令对应的对象为待隐藏的对象,可以为一个或者多个。因此,为了保证后续在步骤S102中隐藏的对象是隐藏指令所指示的对象,可以从指定类引用的对象中,获取与隐藏指令对应的对象,作为目标对象。
[0052] 其中,与隐藏指令对应的对象的获取方式,具体可以包括:获取隐藏指令所指示的对象的标识,从指定类引用的对象中,获取具有该标识的对象,作为目标对象。在具体应用中,指定类可以为类SkeletonGraphic,用于显示存在骨骼动画的类;指定类可以为类SkeletonGraphicMultiObject,用于显示存在多张纹理的多纹理骨骼动画的类。并且,构建多纹理骨骼动画的开发平台具体为游戏引擎Unity时,图像用户界面具体可以是Unity自带的一套GUI系统。
[0053] S102,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理。
[0054] 在具体应用中,利用指定类SkeletonGraphicMultiObject在图形用户界面中显示多纹理骨骼动画,可以包括:加载多纹理骨骼动画的多个纹理文件,得到多个对象,指定类SkeletonGraphicMultiObject引用所得到的多个对象,将所引用的多个对象输入Canvas Render(画布渲染)组件进行渲染,得到显示在图形用户界面中的多个纹理。举例而言,如图2所示,多纹理骨骼动画中的人物色包括两种外观,一种外观对应一个纹理文件。在图形用户界面201中展示该人物角色时,可以是加载两种外观对应的两个纹理文件,得到两个对象,指定类SkeletonGraphicMultiObject引用这两个对象,并输入Canvas Render组件进行渲染,得到显示在图形用户界面201中的纹理202和纹理203。因此,为了隐藏与隐藏指令对应的目标对象,可以利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理。
另外,当纹理文件为一个时,骨骼动画在图形用户界面中的显示过程与上述多个纹理文件时的显示过程相似,区别在于纹理文件的数量为一个,相应的,加载得到的对象的数量为一个。
[0055] 其中,Canvas Render组件的数量可以为多个或者一个,当为多个时,可以由多个Canvas Render组件针对多个对象同步渲染得到多个纹理,从而提高渲染效率。在一种可选的实施方式中,渲染得到的纹理数量可以为多个,且存储为纹理数组;
[0056] 相应的,上述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,具体可以包括如下步骤:
[0057] 利用预设的纹理清除接口和目标对象,遍历纹理数组,得到目标对象的纹理;
[0058] 清除目标对象的纹理。
[0059] 在具体应用中,当渲染得到的多个纹理存储为纹理数组时,可以利用预设的纹理清除接口和目标对象,对纹理数组进行遍历,从纹理数组中查找到目标对象的纹理,从而清除目标对象的纹理。其中,目标对象可以提供目标对象的纹理的标识,用于从纹理数组中找到目标对象的纹理,预设的纹理清除接口用于进行纹理清除。本可选实施例可以针对存在多个纹理的情况,将多个纹理存储为纹理数组,进而以遍历的形式得到目标对象的纹理,实现清除,提高了本发明实施例提供的骨骼动画的隐藏方法的适用范围。
[0060] 并且,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,具体可以为多种方式,下面以可选实施例的形式进行具体说明。
[0061] 在一种可选的实施方式中,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,可以包括如下步骤:
[0062] 获取目标对象的纹理的纹理标识;
[0063] 将所确定的纹理标识输入预设的纹理清除接口,以使得预设的纹理清除接口从渲染得到的纹理中,清除具有所确定的纹理标识的纹理。
[0064] 其中,纹理的纹理标识可以与目标对象的标识相同或者对应,相应的,获取目标对象的纹理的纹理标识可以包括:将目标对象的标识作为所确定的纹理标识;或者,从预存的对象的标识与纹理标识的对应关系中,查找目标对象对应的纹理标识。在具体应用中,构建骨骼动画的开发平台具体为游戏引擎Unity时,预设的纹理清除接口可以为游戏引擎Unity中的接口Clear(清除)。
[0065] 在另一种可选的实施方式中,在上述利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理之前,本发明实施例提供的骨骼动画的隐藏方法,还可以包括如下步骤:
[0066] 在预设的禁止模型中,封装预设的纹理清除接口;
[0067] 相应的,上述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,具体可以包括如下步骤:
[0068] 将目标对象传入预设的禁止模型,以使得预设的禁止模型中的预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,并使得预设的禁止模型清除用于渲染得到目标对象的纹理的数据。
[0069] 在具体应用中,清除目标对象的纹理后,用于渲染得到目标对象的纹理的数据,例如渲染得到目标对象的纹理的代码以及纹理标识等等数据仍然存在,会占用CPU的存储空间和处理资源。对此,可以将预设的纹理清除接口封装在预设的禁止模型中,进而将目标对象传入预设的禁止模型,以使得预设的禁止模型中的预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,实现对骨骼动画的隐藏;并且,将目标对象传入预设的禁止模型时,可以使得预设的禁止模型清除用于渲染得到目标对象的纹理的数据,从而减少关于已隐藏的骨骼动画的显示的数据的存在,所导致的CPU的存储空间和处理资源的占用,进一步提高CPU的性能。其中,构建骨骼动画的开发平台具体为游戏引擎Unity时,预设的禁止模型具体可以为游戏引擎Unity中的接口OnDisable(禁止)。
[0070] 本发明实施例提供的方案中,指定类用于在图形用户界面中显示骨骼动画,因此,在检测到对利用Spine构建的骨骼动画的隐藏指令时,获取指定类所引用的对象中与隐藏指令对应的对象,作为目标对象,相当于将图形用户界面所显示的骨骼动画中待隐藏的骨骼动画作为目标对象。在此基础上,所显示的骨骼动画是对该骨骼动画的渲染得到的纹理的显示,因此,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,相当于从图形用户界面中清除所显示的待隐藏的骨骼动画,实现对利用Spine构建的骨骼动画的隐藏。并且,从渲染得到的纹理中清除目标对象的纹理可以保证关于待隐藏的骨骼动画显示的数据不再存在,从而减少进行骨骼动画隐藏时关于待隐藏的骨骼动画显示的数据,对CPU的处理资源的占用所导致的CPU的性能的下降。可见,通过本方案可以兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能。
[0071] 如图3所示,本发明另一实施例的骨骼动画的隐藏方法的流程,该方法可以包括如下步骤:
[0072] S301,在检测到对骨骼动画的隐藏指令时,从指定类引用的对象中,获取与隐藏指令对应的对象,作为目标对象。
[0073] 上述S301与本发明图1实施例中的S101为相同的步骤,在此不再赘述,详见上述本发明图1实施例的描述。
[0074] S302,在预设的禁止模型中,封装预设的纹理清除接口。
[0075] 上述步骤S301和S302可以同步,或者先后执行,本实施例对上述步骤S301和S302之间的执行顺序不作限定,步骤S302在后续步骤S303之前执行即可。S301与本发明图1可选实施例中关于在预设的禁止模型中,封装预设的纹理清除接口的步骤为相同的步骤,在此不再赘述,详见上述本发明图1可选实施例的描述。
[0076] S303,将第一预设参数传入目标对象对应的实例化接口,以使得实例化接口触发骨骼动画所属的组件对预设的禁止模型的调用,并将实例化接口对应的目标对象传入所调用的预设的禁止模型,以使得所调用的预设的禁止模型中的预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,并使得预设的禁止模型清除用于渲染得到目标对象的纹理的数据。
[0077] 在具体应用中,如果直接调用预设的禁止模型,可能造成该接口直接暴露在可被非开发人员检视的环境中,并且,预设的禁止模型影响骨骼动画的展示,此时容易导致安全险的增加。对此,可以将第一预设参数传入目标对象对应的实例化接口,以使得实例化接口触发骨骼动画所属的组件对预设的禁止模型的调用。此时,通过实例化接口触发骨骼动画所属的组件调用预设的禁止模型,进而使得所调用的预设的禁止模型中的预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,并使得预设的禁止模型清除用于渲染得到目标对象的纹理的数据。由此,可以在兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能的同时,减少直接调用预设的禁止模型所导致的安全风险的增加,提高安全性。
[0078] 其中,第一预设参数为用于使实例化接口触发骨骼动画所属的组件对预设的禁止模型的调用的参数;骨骼动画所属的组件可以为用于构建骨骼动画的开发平台。举例而言,用于构建骨骼动画的开发平台为游戏引擎Unity时,实例化接口具体可以为接口SetActive,此时,第一预设参数可以为false。并且,目标对象对应的实例化接口为用于处理目标对象的实例化接口。
[0079] 可选的,在上述从渲染得到的纹理中清除目标对象的纹理之后,本发明实施例提供的对象的隐藏方法,还可以包括如下步骤:
[0080] 在检测到对目标对象的恢复显示指令时,将第二预设参数传入目标对象对应的实例化接口,以使得实例化接口触发骨骼动画所属的组件利用指定类对目标对象进行渲染,得到目标对象的纹理,并在图形用户界面中显示目标对象的纹理。
[0081] 在具体应用中,对目标对象的恢复显示指令相当于对骨骼动画的恢复显示指令,用于重新显示已隐藏的骨骼动画,该恢复显示指令的检测方式可以是多种的。示例性的,当对骨骼动画的恢复显示指令由用户输入时,如果接收到用户输入的恢复显示指令,确定检测到对目标对象的恢复显示指令。其中,用户输入恢复显示指令的方式可以是多种的,例如,用户点击图形用户界面中的指定按钮或者指定位置等等,或者,用户直接输入恢复显示指令等等。或者,示例性的,当对骨骼动画的隐藏指令由关于对目标对象的恢复显示指令的应用按预设周期性触发时,如果当前时刻到达预设周期,或者,监测到隐藏指令被触发,确定检测到对目标对象的恢复显示指令。任何对对目标对象的恢复显示指令的检测方式均可用于本发明,本实施例对此不作限制。
[0082] 其中,第二预设参数为用于使实例化接口触发骨骼动画所属的组件对目标对象进行渲染的参数;骨骼动画所属的组件可以为用于构建骨骼动画的开发平台。举例而言,用于构建骨骼动画的开发平台为游戏引擎Unity时,实例化接口具体可以为接口SetActive,此时,第二预设参数可以为true。并且,骨骼动画所属的组件利用指定类对目标对象进行渲染,得到目标对象的纹理,并在图形用户界面中显示目标对象的纹理,具体可以包括:游戏引擎Unity将目标对象输入指定类SkeletonGraphicMultiObject,进而该指定类调用Canvas Render组件对目标对象进行渲染,得到目标对象的纹理,并在图形用户界面中显示目标对象的纹理,从而重新显示已隐藏的目标对象。
[0083] 相应于上述方法实施例,本发明一实施例还提供了骨骼动画的隐藏装置。
[0084] 如图4所示,本发明一实施例的骨骼动画的隐藏装置,该装置可以包括:
[0085] 目标对象获取模块401,用于在检测到对骨骼动画的隐藏指令时,从指定类引用的对象中,获取与所述隐藏指令对应的对象,作为目标对象;其中,所述指定类用于在图形用户界面中显示利用Spine构建的骨骼动画;
[0086] 隐藏模块402,用于利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理。
[0087] 本发明实施例提供的方案中,指定类用于在图形用户界面中显示骨骼动画,因此,在检测到对利用Spine构建的骨骼动画的隐藏指令时,获取指定类所引用的对象中与隐藏指令对应的对象,作为目标对象,相当于将图形用户界面所显示的骨骼动画中待隐藏的骨骼动画作为目标对象。在此基础上,所显示的骨骼动画是对该骨骼动画的渲染得到的纹理的显示,因此,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,相当于从图形用户界面中清除所显示的待隐藏的骨骼动画,实现对利用Spine构建的骨骼动画的隐藏。并且,从渲染得到的纹理中清除目标对象的纹理可以保证关于待隐藏的骨骼动画显示的数据不再存在,从而减少进行骨骼动画隐藏时关于待隐藏的骨骼动画显示的数据,对CPU的处理资源的占用所导致的CPU的性能的下降。可见,通过本方案可以兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能。
[0088] 可选的,所述隐藏模块402,具体用于:
[0089] 在所述利用预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理之前,在预设的禁止模型中,封装所述预设的纹理清除接口;
[0090] 将所述目标对象传入所述预设的禁止模型,以使得所述预设的禁止模型中的所述预设的纹理清除接口,从渲染得到的纹理中清除所述目标对象的纹理,并使得所述预设的禁止模型清除用于渲染得到所述目标对象的纹理的数据。
[0091] 可选的,所述隐藏模块402,具体用于:
[0092] 将第一预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件对所述预设的禁止模型的调用,并将所述实例化接口对应的所述目标对象传入所述预设的禁止模型。
[0093] 可选的,所述装置还包括:恢复显示模块,用于:
[0094] 在所述从渲染得到的纹理中清除所述目标对象的纹理之后,在检测到对所述目标对象的恢复显示指令时,将第二预设参数传入所述目标对象对应的实例化接口,以使得所述实例化接口触发所述骨骼动画所属的组件利用所述指定类对所述目标对象进行渲染,得到所述目标对象的纹理,并在所述图形用户界面中显示所述目标对象的纹理。
[0095] 可选的,所述渲染得到的纹理数量为多个,存储为纹理数组;
[0096] 所述隐藏模块402,具体用于:
[0097] 利用预设的纹理清除接口和所述目标对象,遍历所述纹理数组,得到所述目标对象的纹理;
[0098] 清除所述目标对象的纹理。
[0099] 相应于上述实施例,本发明实施例还提供了一种电子设备,如图5所示,该设备可以包括:
[0100] 处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器通503过通信总线504完成相互间的通信;
[0101] 存储器503,用于存放计算机程序;
[0102] 处理器501,用于执行上述存储器503上所存放的计算机程序时,实现上述实施例中任一骨骼动画的隐藏方法的步骤。
[0103] 本发明实施例提供的方案中,指定类用于在图形用户界面中显示骨骼动画,因此,在检测到对利用Spine构建的骨骼动画的隐藏指令时,获取指定类所引用的对象中与隐藏指令对应的对象,作为目标对象,相当于将图形用户界面所显示的骨骼动画中待隐藏的骨骼动画作为目标对象。在此基础上,所显示的骨骼动画是对该骨骼动画的渲染得到的纹理的显示,因此,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,相当于从图形用户界面中清除所显示的待隐藏的骨骼动画,实现对利用Spine构建的骨骼动画的隐藏。并且,从渲染得到的纹理中清除目标对象的纹理可以保证关于待隐藏的骨骼动画显示的数据不再存在,从而减少进行骨骼动画隐藏时关于待隐藏的骨骼动画显示的数据,对CPU的处理资源的占用所导致的CPU的性能的下降。可见,通过本方案可以兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能。
[0104] 上述存储器可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离于上述处理器的存储装置。
[0105] 上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0106] 本发明一实施例提供的计算机可读存储介质,包含于电子设备,该计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时,实现上述实施例中任一骨骼动画的隐藏方法的步骤。
[0107] 本发明实施例提供的方案中,指定类用于在图形用户界面中显示骨骼动画,因此,在检测到对利用Spine构建的骨骼动画的隐藏指令时,获取指定类所引用的对象中与隐藏指令对应的对象,作为目标对象,相当于将图形用户界面所显示的骨骼动画中待隐藏的骨骼动画作为目标对象。在此基础上,所显示的骨骼动画是对该骨骼动画的渲染得到的纹理的显示,因此,利用预设的纹理清除接口,从渲染得到的纹理中清除目标对象的纹理,相当于从图形用户界面中清除所显示的待隐藏的骨骼动画,实现对利用Spine构建的骨骼动画的隐藏。并且,从渲染得到的纹理中清除目标对象的纹理可以保证关于待隐藏的骨骼动画显示的数据不再存在,从而减少进行骨骼动画隐藏时关于待隐藏的骨骼动画显示的数据,对CPU的处理资源的占用所导致的CPU的性能的下降。可见,通过本方案可以兼顾利用Spine构建的骨骼动画的隐藏和CPU的性能。
[0108] 在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的骨骼动画的隐藏方法。
[0109] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、DSL(Digital Subscriber Line,数字运维人员线)或无线(例如:红外线、无线电、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘硬盘、磁带)、光介质(例如:DVD(Digital Versatile Disc,数字通用光盘))、或者半导体介质(例如:SSD(Solid State Disk,固态硬盘))等。
[0110] 在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0111] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0112] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈