这个游戏的skel动作文件它把基础人物和动作分开了,需要合并,不然只能在spine里查看,live2dviewerex会报错的,简单写了个合并脚本,操作如下。
1.提取出文件的bundles文件先把文件的伪文件头去掉放入as里面读取
2.type选择monobehaviour,然后搜索Info,将所有带有aniinfo的文件导出,这个里面记录了拆分出的两个skel文件,在bundles包里可以看到是u2d结尾的文件,文件直接导出到bundles的文件夹里面就行
3.运行脚本在bundles文件夹里面的output文件夹里面就有合并好的skel文件了,导出atlas和png文件就可以在live2dviewerex了查看了
import ujson
from pathlib import Path
def skel_merge(path):
Path.mkdir(Path(path + "/" + "output"), exist_ok=True)
path = Path(path)
for jsonfile in path.rglob("*_aniInfo.json"):
with open(jsonfile,"r",encoding="utf8") as f:
data = ujson.load(f)
skel_name = jsonfile.name.split("_aniInfo")[0] + ".skel"
_baseBytesMd5 = data["_baseBytesMd5"]
with open(str(path)+"/"+_baseBytesMd5+".u2d","rb")as f:
_baseBytesMd5_bytes = f.read()
_aniBytesMd5 = data["_aniBytesMd5"]
with open(str(path)+"/"+_aniBytesMd5+".u2d","rb")as f:
_aniBytesMd5_bytes = f.read()
f.close()
with open(str(path)+"/" +"output"+"/" +skel_name,"wb")as f:
f.write(_baseBytesMd5_bytes)
f.write(_aniBytesMd5_bytes)
f.close()
if __name__ == '__main__':
path = r"C:\Users\zjbook\Desktop\bundles"
skel_merge(path)
最终效果
