同一图片的资源换装

1、在同一个psb文件中制作换装资源

(1)在ps中制作美术资源时,将一个游戏对象的所有换装资源都摆放好位置
(2)当我们导入该资源时,要注意是否导入隐藏的图层

编辑换装资源的骨骼信息以及分组类别:

注意事项:每个部位 关联的骨骼要明确设置、为同一个部位的不同装备分组

  • 如何换装:

两个关键组件
SpriteLibrary——精灵资料库,确定类别分组信息
SpriteResolver——精灵解算器,用于确定部位类别和使用的图片
一个数据文件
SpriteLibraryAsset——精灵资料库资源,具体记录类别分组信息的文件

  • 代码换装
//1.获取各部位的SpriteResolver(需要引用命名空间)
//2.使用SpriteResolver的API进行装备切换
//GetCategory() 获取当前部位默认的类别名
//SetCategoryAndLabel 设置当前部位想要切换的图片信息
//sr.SetCategoryAndLabel(sr.GetCategory(), "CASK 1");

SpriteResolver[] srs = this.GetComponentsInChildren<SpriteResolver>();
for (int i = 0; i < srs.Length; i++)
{
    equipDic.Add(srs[i].GetCategory(), srs[i]);
}

ChangeEquip("Cask", "CASK 1");

// ----------------------------------------------------------
public void ChangeEquip(string category, string equipName)
{
    if( equipDic.ContainsKey(category) )
    {
        equipDic[category].SetCategoryAndLabel(category, equipName);
    }
}

2、在不同psb文件中制作换装资源

(1)保证个部位在PS文件中的统一
(2)基础部位可选择性隐藏

编辑换装资源的骨骼信息:

注意事项:不同文件的骨骼信息必须统一,所以我们直接使用复制的方式

手动添加关键组件和数据文件:

(1)首先创建SpriteLibraryAsset数据文件
(2)为跟对象添加SpriteLibrary并关联数据文件
(3)为换装部位关联SpriteResolver

3、总结

如何选择 同一文件和 不同文件 制作换装资源两种方案

换装较少的游戏 比如只有面部表情更换 可以使用同一psb文件方案
换装较多的游戏 比如各部位有n种装备 可以使用不同psb文件方案
不同psb文件 拓展性更强

扫描二维码关注公众号,回复: 14810606 查看本文章

猜你喜欢

转载自blog.csdn.net/Go_Accepted/article/details/128461868