# AddressableLearn **Repository Path**: sika0819/AddressableLearn ## Basic Information - **Project Name**: AddressableLearn - **Description**: No description available - **Primary Language**: C# - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-01-17 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Addressable简介 Addressable是可寻址资源,是一种通过地址加载资产的方法,能够简化内容包创建、部署。和更新。一旦资产被标记为可寻址,就可以从任何地方调用可寻址资源,可以通过AssetReference加载单个可寻址资源,也可以通过自定义组标签加载多个可寻址资产。 # 操作教程 + 安装addressable ![install](readmeImage/install.png) ![install2](readmeImage/install2.png) + 将prefab标记为可寻址对象 ![markaddressable](readmeImage/markaddressable.png) + 选取为可寻址对象之后,就可以在Addressables窗口看到勾选了addressable的资产如下图:![defaultgroup](readmeImage/defaultgroup.png) + 简化名称 ![simpleName](readmeImage/simpleName.png) + 打标签组 ![label](readmeImage/label.png) + Play Mode Script选择Use Existing Build(require built groups) ![playmodescript](readmeImage/playmodescript.png) + Profiles ![profiles](readmeImage/profiles.png) ![ProfilePaths](readmeImage/ProfilePaths.png) + Build ![Build](readmeImage/build.png) + 载入代码 ```c# var operateHandler = Addressables.LoadAssetsAsync(Label, OnLoadComplete); ``` 完整代码: ```c# using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.AddressableAssets; using UnityEngine.ResourceManagement.AsyncOperations; using UnityEngine.UI; public class CharacterManager : MonoBehaviour { public string Label="default"; public Transform LoadingPanelTrans; LoadingPanel loadingPanel; bool m_AssetsReady = false; public Transform ButtonPanelTrans; public Dictionary btnDic; public Dictionary objDic; public Transform spawnParent; private void Awake() { btnDic = new Dictionary(); objDic = new Dictionary(); for (int i=0;i< ButtonPanelTrans.childCount; i++) { Transform child = ButtonPanelTrans.GetChild(i); if (!btnDic.ContainsKey(child.name)) { Button btn = child.GetComponent