结合spine软件,让我们在cocos里面对spine进行一系列操作

首先,spine动画做好之后,我们先把它导出来,放在cocos里面。
image
今天写文章的时候,才发现cocos最高只能支持到spine3.8.99。

第一:插槽的显示和隐藏

最简单的一种方法就是把插槽的透明度调成0,这样子插槽就隐藏起来了。
image
我们在cocos用代码把它实现出来,先找到插槽,然后设置透明度为0。

this.spine.findSlot(‘raptor-front-leg’).color.a = 0;

运行一下脚本,就会看到spine的插槽已经被隐藏了。除了改变透明度,我们也可以直接把插槽隐藏起来。

this.spine.findSlot(‘raptor-hindleg-back’).bone.active = false;

第二:局部换装我们可以替换插槽或者替换插槽下面的图片来进行实现。
image

const slotName = ‘gun’;

    const targetAttaName = 'head';

    const slot = this.spine.findSlot(slotName);

    const skeletonData = this.spine.skeletonData.getRuntimeData();

    const skin = skeletonData.findSkin('default');

    const slotIndex = skeletonData.findSlotIndex(slotName);

    const attachment = skin.getAttachment(slotIndex, targetAttaName);

    slot.setAttachment(attachment);

    this.spine.invalidAnimationCache();

image
此外,我们还可以更换spine里面的皮肤进行换装。
image

this.spine.setSkin(‘full-skins/boy’);

第三:在spine上面绑定挂定,让挂点跟着骨骼一起移动,这个引擎已经帮我处理好了,只要选一个设置一下挂点的父骨骼和要挂载的节点就可以了。
image

2赞