在unity导入spine后,spine中是有一个换肤的函数的
public void SetSkin(Skin newSkin) {
if (newSkin == skin)return;
if (newSkin != null) {
if (skin != null)
newSkin.AttachAll(this, skin);
else {
ExposedList<Slot> slots = this.slots;
for (int i = 0, n = slots.Count; i < n; i++) {
Slot slot = slots.Items[i];
string name = slot.data.attachmentName;
if (name != null) {
Attachment attachment = newSkin.GetAttachment(i, name);
if (attachment != null)slot.Attachment = attachment;
}
}
}
}
skin = newSkin;
UpdateCache();
}
但这函数仅支持一套一套的换肤, 例如一个角色有默认皮肤,红色皮肤,蓝色皮肤,绿色皮肤,用自带的方法,我们只能从这4个皮肤里面选择一个。
如果当我们想要红色的头发,蓝色的衣服,绿色的裤子,自带的方法是不支持的。
实现办法
new 一个newskin皮肤ÿ