基于动态修改Spine的动画处理方法、装置及介质制造方法及图纸

技术编号:39260469 阅读:13 留言:0更新日期:2023-10-30 12:12
本申请提供一种基于动态修改Spine的动画处理方法、装置及介质,基于用户的操作确定出待修改的目标图集,基于目标图集的尺寸生成一个纯透明的MaskTex;获取待修改部位的槽点名称(目标图集中的目标槽点图片对应的名称);基于目标槽点图片和目标槽点图片在目标图集中的uv坐标,在MaskTex中生成一个绘制区域;基于MaskTex的绘制区域和目标图集的目标槽点图片,生成修改后的目标图集。将Spine原有的材质进行替换,让它拥有绘制和渲染的能力,将MainTex和MaskTex两者进行融合或裁剪,通过GPU进行运算,从而实现对Spine动画的实时处理和动态绘制,能够大大降低程序、美术等人员的工作量。工作量。工作量。

【技术实现步骤摘要】
基于动态修改Spine的动画处理方法、装置及介质


[0001]本申请涉及动画处理
,具体而言,涉及一种基于动态修改Spine的动画处理方法、装置及介质。

技术介绍

[0002]Spine是一种2D骨骼动画软件,最初由Esoteric Software开发,在游戏开发和互动媒体领域得到广泛使用。Spine可以实现高效的骨骼动画制作,使开发者能够创建灵活、高度可定制的角色动画,同时具有小文件大小、高效性能和易于实现的优点。
[0003]随着游戏行业的迅猛发展和技术的不断创新,骨骼动画技术也不断地发展和演进。随着游戏画面和特效的不断提高,简单的2D图形已经不能满足需求了。因此Spine的出现,满足了开发者对于更高质量、更出色的2D骨骼动画的需求。由于Spine具有较高的灵活性和可定制性,在游戏开发领域得到了广泛的应用,如动作RPG、横版过关游戏等。总的来说,Spine具有广泛的应用场景,尤其在游戏开发领域得到广泛的关注和应用。
[0004]在Unity中,Spine是一种用于创建和实现2D骨骼动画的插件工具。使用Spine可以为Unity中的2D角色添加高效、灵活和可定制的骨骼动画效果,同时也可以大大减小游戏资源的大小和提高游戏运行的效率。
[0005]具体来说,使用Spine在Unity中可以实现以下功能:
[0006]1.创建骨骼动画:将角色的各个身体部位(如头、手、身体等)分解为多个骨骼,根据各个骨骼之间的约束关系来进行运动、变形和旋转,从而实现流畅的动画效果。
[0007]2.角色动画控制:通过控制骨骼的运动、变形和旋转,可以实现角色的各种动画效果,如行走、跳跃、攻击、受伤等。
[0008]3.效率和性能优化:Spine可以大大减小游戏资源的大小,同时也可以提高游戏运行的效率,使得游戏在各种环境和设备上都能够运行流畅。
[0009]总之,使用Spine可以在Unity中实现高效、灵活和可定制的2D骨骼动画效果,从而为游戏开发者带来更好的创作体验和优异的游戏品质。
[0010]但是,Spine难以实现复杂的动画效果,虽然可通过Shader、序列帧等方法实现复杂动画,但程序、美术等人员的工作量较大。另外,进行spine修改时,需要在Spine上面放一张静态图,实际是对静态图的修改,且Spine本身必须为静止状态。

技术实现思路

[0011]本申请实施例的目的在于提供一种基于动态修改Spine的动画处理方法、装置及介质,以将Spine原有的材质进行替换(构建MaskTex),让它拥有绘制和渲染的能力,使其能够在游戏中实时显示和呈现出动态的效果,将Spine材质球中的MainTex(目标图集)和MaskTex两者进行融合或裁剪,通过GPU进行运算,从而实现对Spine动画的实时处理和动态绘制,通过动态修改Spine实现复杂动画,能够大大降低程序、美术等人员的工作量。
[0012]为了实现上述目的,本申请的实施例通过如下方式实现:
[0013]第一方面,本申请实施例提供一种基于动态修改Spine的动画处理方法,包括:基于用户的操作确定出待修改的目标图集,其中,Spine制作完成导入Unity后,生成一个目标图集,目标图集包含多个槽点图片;基于所述目标图集的尺寸,生成一个纯透明的MaskTex;获取待修改部位的槽点名称,其中,槽点名称为所述目标图集中的目标槽点图片对应的名称;基于所述目标槽点图片和所述目标槽点图片在所述目标图集中的uv坐标,在所述MaskTex中生成一个绘制区域,其中,所述绘制区域在所述MaskTex中的形状尺寸位置与所述目标槽点图片在所述目标图集中的形状尺寸位置一致;基于所述MaskTex的所述绘制区域和所述目标图集的所述目标槽点图片,生成修改后的目标图集。
[0014]结合第一方面,在第一方面的第一种可能的实现方式中,在所述MaskTex中生成一个绘制区域后,所述方法还包括:获取当前绘制的操作类型,其中,操作类型包括混合操作和裁剪操作;基于操作类型,在所述MaskTex的绘制区域中进行绘制。
[0015]结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,操作类型为裁剪操作时,基于所述MaskTex的所述绘制区域和所述目标图集的所述目标槽点图片,生成修改后的目标图集,包括:将所述MaskTex的所述绘制区域与所述目标图集中所述目标槽点图片建立像素级映射关系,其中,一组映射像素点包含来源于所述绘制区域的一个像素点和来源于所述目标槽点图片的一个像素点;针对每组映射像素点:若来源于所述绘制区域的像素点的透明度不为零,将与之映射的来源于所述目标槽点图片的像素点进行裁剪;若来源于所述绘制区域的像素点的透明度为零,保持与之映射的来源于所述目标槽点图片的像素点不变;所有映射像素点处理完成后,得到修改后的目标图集。
[0016]结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,操作类型为混合操作时,基于所述MaskTex的所述绘制区域和所述目标图集的所述目标槽点图片,生成修改后的目标图集,包括:将所述MaskTex的所述绘制区域与所述目标图集中所述目标槽点图片建立像素级映射关系,其中,一组映射像素点包含来源于所述绘制区域的一个像素点和来源于所述目标槽点图片的一个像素点;针对每组映射像素点:基于来源于所述绘制区域的像素点的透明度,更新来源于所述目标槽点图片的像素点的颜色值;所有映射像素点处理完成后,得到修改后的目标图集。
[0017]结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,基于来源于所述绘制区域的像素点的透明度,更新来源于所述目标槽点图片的像素点的颜色值,包括:采用以下公式更新所述目标槽点图片的像素点的颜色值:
[0018]c

ij
=(1

a
ij
)
·
c
ij

[0019]其中,c'
ij
为所述目标槽点图片中坐标为(i,j)的像素点更新后的颜色值,a
ij
为所述绘制区域中坐标为(i,j)的像素点的透明度,c
ij
为所述目标槽点图片中坐标为(i,j)的像素点更新前的颜色值。
[0020]第二方面,本申请实施例提供一种基于动态修改Spine的动画处理装置,包括:目标图集确定单元,用于基于用户的操作确定出待修改的目标图集,其中,Spine制作完成导入Unity后,生成一个目标图集,目标图集包含多个槽点图片;MaskTex生成单元,用于基于所述目标图集的尺寸,生成一个纯透明的MaskTex;槽点名称获取单元,用于获取待修改部位的槽点名称,其中,槽点名称为所述目标图集中的目标槽点图片对应的名称;绘制区域生成单元,用于基于所述目标槽点图片和所述目标槽点图片在所述目标图集中的uv坐标,在
所述MaskTex中生成一个绘制区域,其中,所述绘制区域在所述MaskTex中的形状尺寸本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于动态修改Spine的动画处理方法,其特征在于,包括:基于用户的操作确定出待修改的目标图集,其中,Spine制作完成导入Unity后,生成一个目标图集,目标图集包含多个槽点图片;基于所述目标图集的尺寸,生成一个纯透明的MaskTex;获取待修改部位的槽点名称,其中,槽点名称为所述目标图集中的目标槽点图片对应的名称;基于所述目标槽点图片和所述目标槽点图片在所述目标图集中的uv坐标,在所述MaskTex中生成一个绘制区域,其中,所述绘制区域在所述MaskTex中的形状尺寸位置与所述目标槽点图片在所述目标图集中的形状尺寸位置一致;基于所述MaskTex的所述绘制区域和所述目标图集的所述目标槽点图片,生成修改后的目标图集。2.根据权利要求1所述的基于动态修改Spine的动画处理方法,其特征在于,在所述MaskTex中生成一个绘制区域后,所述方法还包括:获取当前绘制的操作类型,其中,操作类型包括混合操作和裁剪操作;基于操作类型,在所述MaskTex的绘制区域中进行绘制。3.根据权利要求2所述的基于动态修改Spine的动画处理方法,其特征在于,操作类型为裁剪操作时,基于所述MaskTex的所述绘制区域和所述目标图集的所述目标槽点图片,生成修改后的目标图集,包括:将所述MaskTex的所述绘制区域与所述目标图集中所述目标槽点图片建立像素级映射关系,其中,一组映射像素点包含来源于所述绘制区域的一个像素点和来源于所述目标槽点图片的一个像素点;针对每组映射像素点:若来源于所述绘制区域的像素点的透明度不为零,将与之映射的来源于所述目标槽点图片的像素点进行裁剪;若来源于所述绘制区域的像素点的透明度为零,保持与之映射的来源于所述目标槽点图片的像素点不变;所有映射像素点处理完成后,得到修改后的目标图集。4.根据权利要求2所述的基于动态修改Spine的动画处理方法,其特征在于,操作类型为混合操作时,基于所述MaskTex的所述绘制区域和所述目标图集的所述目标槽点图片,生成修改后的目标图集,包括:将所述MaskTex的所述绘制区域与所述目标图集中所述目标槽点图片建立像素级映射关系,其中,一组映射像素点包含来源于所述绘制区域的一个像素点和来源于所述目标槽点图片的一个像素点;针对每组映射像素点:基于来源于所述绘制区域的像素点的透明度,更新来源于所述目标槽点图片的像素点的颜色值;所有映射像素点处理完成后,得到修改后的目标图集。5.根据权利要求4所述的基于动态修改Spine的动画处理方法,其特征在于,基于来源于所述绘制区域的像素点的透明度,更新来源于所述目标槽点图片的像素点的颜色值,包
括:采用以下公式更新所述目标槽点图片的像素点的颜色值:c

ij
=(1

a
ij
)
·
c
ij
,其中,c'
ij
为所述目标槽点图片中坐标为(i,j)的像素点更新后的颜色值,a
ij
为所述绘制区域中坐标为(i,j)的像素点的透明度,c
ij
为所述目标槽点图片中坐标为(i,j)...

【专利技术属性】
技术研发人员:葛贤钰陈勇乔金梁李佳胥潘安定
申请(专利权)人:西安纽扣软件科技有限公司
类型:发明
国别省市:

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

1