前情提要: 帧动画内存如何优化
看到帖子中好几个同学回复改成spine动画能大大降低内存,因为项目中的帧动画图片确实是又大又多,由此尝试了一下把帧动画改成spine动画。发现内存占用确实低了许多,打包生成的图片也少了许多。
但是,spine软件没有一键导入帧动画图集的功能。
需要选中文件夹,一帧一帧的设置关键帧。一帧一帧的操作,对于图片多的动画来说,就是很纯体力活。在调研过程,意识到可以通过applescript脚本+自动控制方案进行处理。由此,步骤如下:
- 设置spine的快捷键,找到next sibling, 把快捷键改成O
- 新建项目
- 设置图片对应的文件夹
- 在root节点下,新建一个插槽
- 把所有的图片都拖进这个插槽所在目录下
- 注意最后一张图片的可视设置为隐藏
- 进入动画编辑模式,然后把帧对到0这里,图片点击在第一张图片,注意这里的动画循环要去掉,不然会一直停留在第一帧
- 新增一个自动操作的action,拖入applescript脚本(这一步如果用网盘下载的自动操作workflow的话,可以跳过)
tell application "Spine"
activate
end tell
set x to 70
repeat x times
enterDataRecord()
end repeat
on enterDataRecord()
delay 0.8
tell application "System Events"
key code 4
end tell
delay 0.5
tell application "System Events"
key code 15
key code 31
end tell
end enterDataRecord
- 根据图片数量调整脚本中的x值
- 根据电脑的响应快慢调整脚本中delay的值
- 点击启动
自动操作workflow流: 链接: https://pan.baidu.com/s/1CrsZQIetf45cqOADqxzkaQ?pwd=1234 提取码: 1234
视频演示:Spine 快速转换序列帧动画 mac_哔哩哔哩_bilibili