【Unity】Addressables中使用SpriteAtlas功能

Addressable设置

SpriteAtlas文件设置勾选Addressable,SpriteAtlas下的Sprite文件设置不勾选。
在这里插入图片描述
在这里插入图片描述

加载

GetSprite拿到的是图集上的Clone体

Addressables.LoadAssetAsync<SpriteAtlas>("Assets/UIRes/atlas/ar/ar.spriteatlas").Completed += handle =>
        {
            _handle = handle;
            if (handle.Status == AsyncOperationStatus.Succeeded)
            {
                Debug.LogError(handle.Result);                
                //获取所有图
                // Sprite[] sps = new Sprite[handle.Result.spriteCount];
                // int length = handle.Result.GetSprites(sps);
                // for (int i = 0; i < length; i++)
                // {
                //     Debug.LogError($"获取所有Sprite = {sps[i]}");
                // }                
                //获取单张Sprite
                sp1 = handle.Result.GetSprite("xxx");
                img1.sprite = sp1;
            }
        };

释放

Destroy(sprite):删除Clone出的sprite
Destroy(handle):释放原始资源图集SpriteAtlas

总结

Addressables.LoadAssetAsync加载中必然对应一个释放,且为相同对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值