Addressables+CCD云端分发服务
1.账号登陆
使用Unity账号登陆CCD云服务控制台
CCD操作文档
CCD资源云加载服务后台对应腾讯云,需要进行腾讯账号绑定
点击Cloud Content Delivery,选择组织机构,点击开通即可
点击Overvie,选择需要云端分发的项目并进入
依次点击Content Delivery——COS Key,记下右侧的COS key号码,后面要使用
打开Unity工程,打开Package Manager窗口并搜索Addressables和Cloud Content Delivery插件导入
5.Cloud Content Delivery插件使用在Windo菜单下打开Cloud Content Delivery插件界面
根据提示,前往ProjectSettings界面CloudContentDelivery项填写COS Key。
在bucket name输入bucket名称,点击Create Ne Bucket即可新建bucket。
点击List Bucket,刷新bucket列表,点击bucket下拉列表选择要上传到的bucket,
点击Set Release Url以设置当前的Addressable的远程加载地址为当前bucket地址(勾选latest则始终获取该bucket下最新的release)
打开Addressable打包界面
点击选择需要远程加载的资源包,设置资源的Labels标签,在右侧设置打包和加载地址分别为RemoteBuildPath和RemoteLoadPath
依次点击Build——Ne Build——Default Build Script,打包资源完成后反回CloudContentDelivery界面,点击SyncEntries,上传完成后可点击List Entries刷新资源查看。点击CreateRelease创建发布
至此,打包发布游戏即可。
资源更新当资源变更需要远程更新时,选择build下的update previousbuild打包新的bundle。打开CCD插件面板,点击SyncEntries,点击CreateRelease即可
注意在配合addressable使用release的promote功能时,务必使两个bucket对应的addressable的
Settings(Windo >> Asset Managment >> Addressables >> Settings)中Catlog选项下的Player
Version Override的值保持一致且不为空!
预加载示例代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.ResourceManagement.AsyncOperations;
using UnityEngine.AddressableAssets.ResourceLocators;
using UnityEngine.UI;
using System;
public class TextureController : MonoBehaviour
{
public Renderer m_ReferencedMaterial;
public Slider progressBar;
public Text progressText;
AsyncOperationHandle donloadDependencies;
public void PreloadTex()
{
StartCoroutine(StartPreload());
}
public IEnumerator StartPreload()
{
AsyncOperationHandle handle = Addressables.InitializeAsync();
yield return handle;
Debug.Log("InitializeAsync");
//Clear all cached AssetBundles
Caching.ClearCache();
string key = "HD";
AsyncOperationHandle getDonloadSize = Addressables.GetDonloadSizeAsync(key);
yield return getDonloadSize;
if (getDonloadSize.Result > 0)
{
donloadDependencies = Addressables.DonloadDependenciesAsync(key);
progressBar.gameObject.SetActive(true);
yield return donloadDependencies;
}
}
private void Update()
{
if (donloadDependencies.IsValid())
{
if (donloadDependencies.GetDonloadStatus().Percent < 1)
{
UpdateProgressBar(donloadDependencies.GetDonloadStatus().Percent);
}
else if (donloadDependencies.IsDone)
{
Addressables.Release(donloadDependencies);
}
}
}
void UpdateProgressBar(float donloadPercent)
{
progressBar.value = donloadPercent;
progressText.text = Mathf.CeilToInt(donloadPercent 100f) + "%";
}
public void SitchToHighDef()
{
LoadTexture("TEX_Archer_D", "HD");
}
void LoadTexture(string key, string label)
{
//Caching.ClearCache();
Addressables
.LoadAssetsAsync(ne List 空调维修
- 我的世界电脑版运行身份怎么弄出来(我的世界
- 空调抽湿是什么意思,设置抽湿的温度有什么意
- 方太燃气灶有一个打不着火 怎么修复与排查方法
- 夏季免费清洗汽车空调的宣传口号
- 清洗完空调后出现漏水现象
- iphone6能玩什么游戏(iphone6游戏)
- 如何设置电脑密码锁屏(如何设置电脑密码锁屏
- win10删除开机密码提示不符合密码策略要求
- 电脑w7显示不是正版(w7不是正版怎么解决)
- 万家乐z8热水器显示e7解决 怎么修复与排查方法
- 1匹空调多少瓦数(1匹空调多少瓦)
- 安卓手机连接电脑用什么软件好(关于安卓手机
- 电脑网页看视频卡是什么原因(爱拍看视频卡)
- 华帝燃气灶点火器一直响然后熄火怎么办:问题
- 电脑壁纸怎么换(关于电脑壁纸怎么换的介绍)
- 冬天空调的出风口应该朝什么方向(冬天空调风