Unity 之 资源加载 -- 可寻址系统面板介绍 -- 入门(二)

news2024/11/19 20:41:24

可寻址系统面板介绍 -- 入门(二)

  • 一,可寻址系统目录介绍
    • 1.2 创建分组
    • 1.2 目录介绍
  • 二,可寻址系统设置介绍
    • 2.1 Profile - 配置文件
    • 2.2 Catalog - 目录
    • 2.3 Content Update - 内容更新
    • 2.4 Downloads - 下载
    • 2.5 Build - 构建
    • 2.6 Build and Play Mode Scripts
    • 2.7 Asset Group Templates - 配置的组模板
    • 2.8 Initialization object list - 初始化对象列表
    • 2.9 Cloud Content Delivery - 云内容交付
  • 三,可寻址系统资源组设置
    • 3.1 Content Update Restriction - 内容更新限制
    • 3.2 Context Packing & Loading - 打包和加载

概述:本篇文章带大家了解可寻址系统的目录和各个设置面板的属性介绍。若需要了解如何导入可寻址系统和可寻址系统的相关概念,可点击链接查看上一篇文章。

一,可寻址系统目录介绍

1.2 创建分组

工程到导入后就会在Window->Asset Management->Addressables看到可寻址系统的几个工具目录:

选择Groups,会弹出Addressables Groups面板:

单击上面的“创建”按钮,即可开始使用可寻址系统。


1.2 目录介绍

创建后,会在工程Assets目录下面生成一个AddressableAssetsData资源文件夹,其中存储设置文件和用于跟踪你的 Addressables 设置的其他资产。


二,可寻址系统设置介绍

其中最常修改的是AddressableAssetSettings - 可寻址资产设置:


2.1 Profile - 配置文件

配置文件设置:可下拉选择可以使用的配置文件列表选择配置文件。

点击Manager Porfiles按钮可以跳转到,Addressables Profiles面板,进行设置配置文件内容。

一般可用于测试服和正式服的环境切换,这样正式服和测试服配置信息就各自独立。


2.2 Catalog - 目录

目录设置:可寻址目录相关的设置,此设置可将资产的地址映射到其物理位置。

  • Player Version Override: 播放器版本覆盖
    覆盖用于指定远程目录名称的时间戳,若不设置,则默认使用时间戳。
  • Compress Local Catalog: 压缩本地目录
    减少目录的存储大小,但增加了构建和加载目录的时间。
  • Optimize Catalog Siz: 优化目录大小
    通过为内部 ID 创建查找表来减小目录的大小。可以增加加载目录所需的时间。

2.3 Content Update - 内容更新

内容更新设置:控制远程内容构建和更新的设置。

  • Disable Catalog Update on Startup: 在勾选后禁用目录更新
  • Content State Build Path: 内容状态构建路径
    可以设置默认构建脚本生成的内容状态文件路径。
  • Build Remote Catalog: 启用以构建远程目录。
    勾选启用,才有后面三项。
  • Build & Load Paths: 构建和加载路径
    可以选择一个在1.1中配置文件中的路径。
  • Build Path: 构建路径
    若使用配置文件中路径就在配置文件中设置,若使用自定义路径则选择可用的构建目录即可。
  • Load Path: 加载路径
    若使用配置文件中路径就在配置文件中设置,若使用自定义路径则选择可用的加载目录即可。

2.4 Downloads - 下载

下载设置:影响目录和AA包的下载处理设置。

  • Custom certificate handler: 自定义正式处理类。
  • Max Concurrent Web Requests: 最大并发Web请求
    系统会将超出此限制的请求排队。建议同时下载2~4个以达到最佳下载速度。
  • Catalog Download Timeout: 目录下载超时时间,单位秒。

2.5 Build - 构建

构建设置:可修改所有构建相关设置。

  • Build Addressables on Player Build: Unity构建是是否自动构建AA (Unity 2021.2或更高版本才有)

    1. Build Addressables content on Player Build: 在构建时始终构建AA包内容

    2. Do not Build Addressables content on Player Build: 在构建时不自动构建AA包,选择此模式若需要更新,则需构建之前手动构建AA

    3. Use global Settings (stored in preferences): 使用全局设置(存储在首选项中),在打开Preferences面板下的Addressables系统,如下图:

  • Ignore Invalid/Unsupported Files in Build: 忽略构建中的无效/不受支持的文件
    若启用则忽略无效和不支持文件,若不启用遇到无效文件则停止构建。

  • Unique Bundle IDs: Bundles包唯一ID
    是否在每个构建中为包生成唯一名称。

  • Contiguous Bundles: 连续Bundle包
    生成一个更有效的Bundle布局。

  • Non-Recursive Dependency Calculation: 非递归依赖计算
    当资源具有循环依赖关系时,启用此选项可缩短构建时间并减少运行时内存开销。

  • Shader Bundle Naming Prefix: 着色器包命名前缀
    给Unity着色器生成的包添加前缀。

  • MonoScript Bundle Naming Prefix: MonoScript Bundle 命名前缀
    该Bundle包确保 Unity 在任何 MonoBehavior 可以引用它们之前加载所有 Monoscript。它还减少了重复或复杂的 Monoscript 依赖项的数量,从而减少了运行时内存开销。

  • Strip Unity Version From AssetBundles: 从 AssetBundle 中剥离 Unity 版本
    是否从包头中删除 Unity 版本。

  • Disable Visible Sub Asset Representations: 禁用可见子资产表示
    如果您不直接使用子对象(精灵、子网格等),启用此选项可缩短构建时间。


2.6 Build and Play Mode Scripts

构建和播放模式脚本:配置项目中可用的IDataBuilder脚本。如果您创建自定义构建或播放模式脚本,则必须先将其添加到此列表中,然后才能使用它。

Addressables 包包含一些构建脚本,它们处理默认构建过程并提供在 Play 模式下访问数据的不同方式。您可以在 AddressableAssetData/DataBuilders文件夹中找到这些脚本。

要添加自定义脚本,请单击+按钮并从文件面板中选择代表所需脚本的 ScriptableObject 资产。


2.7 Asset Group Templates - 配置的组模板

定义可用于创建新组的模板列表。创建新模板时,必须先将其添加到此列表中,然后才能使用它。

Addressables包包含一个模板,其中包含默认构建脚本使用的模式。您可以在 AddressableAssetData/AssetGroupTemplates 文件夹中找到该模板。


2.8 Initialization object list - 初始化对象列表

为项目配置初始化的对象。这些对象都是ScriptableObject的对象,需要实现IObjectInitializationDataProvider接口。可以通过创建这些对象在Addressables初始化的时候传递数据。


2.9 Cloud Content Delivery - 云内容交付

  • Enable Exerimental CCD Features:勾选则启用基本CCD功能

三,可寻址系统资源组设置

Project面板或在Addressables Groups面板选中组,即可在Inspector面板看到如下设置面板:

3.1 Content Update Restriction - 内容更新限制

  • Update Restriction:更新的限制,可以选择:允许在发布后修改和不允许在发布后修改。

一般是远程加载的资源组设置为允许更新,本地加载的设置为不允许更新。

3.2 Context Packing & Loading - 打包和加载

  • Bulid & Load Paths:设置此资源组的打包和加载路径,可选择使用配置文件的本地,远程,或自定义路径

Advanced Options:高级选项

  • Asset Bundle Compression:压缩格式
    可选格式:LZ4,LZMA和不压缩三种,通常使用LZ4格式进行压缩。(WebGl平台不支持LZMA压缩格式)

  • Include In Build:是否在构建中包含此组
    默认勾选,不勾选则此组内资源打不进包中。

  • Force Unique Provider:是否为此组使用资源提供者类的唯一实例。

  • Use Asset Bundle Cache:是否缓存远程分发的Bundle包。

  • Asset Bundle CRC:是否加载之前验证包的完整性

    1. Disable:禁用,从不校验
    2. Enabled,Including Cached:启用,包括缓存;始终在加载前进行校验
    3. Enabled,Excluding Cached:启用,不包括缓存;仅在下次时校验
  • Use UnityWebRequest for Local Asset Bundles:使用从该组加载本地
    AssetBundle 档案UnityWebRequestAssetBundle.GetAssetBundle代替AssetBundle.LoadFromFileAsync.

  • Request Timeout:下载远程包的超时间隔。

  • Use Http Chunked Transfer:下载捆绑包时是否使用 HTTP/1.1 分块传输编码方法。在 Unity 2019.3以及之后的版本都已弃用。

  • Http Redirect Limit:下载资源包时允许的重定向次数,-1 表示没有限制。

  • Retry Count:重试失败下载的次数。

  • Include Addresses in Catalog:是否将地址写进catalog
    如果这个组内的资源不需要通过地址加载,可以取消该项来减少catalog的体积。.

  • Include GUIDs in Catalog:是否将GUID写进catalog。
    如果使用了AssetReferences,则必须勾选该选项。如果没有使用AssetReferences的方式或者用GUID作为key去加载,则可以取消勾选来减少catalog的大小。

  • Include Labels in Catalog:是否将Label写进catalog。

  • Internal Asset Naming Mode:在catalog里如何为资源命名

    1. Full Path:用完整路径
    2. Filename:资源的文件名
    3. GUID:用GUID串
    4. Dynamic:可寻址系统根据组内的资产选择最小的内部命名。
  • Cache Clear Behavior:什么时候清理缓存

    1. Clear When Space Is Needed In Cache:空间不足时清理
    2. Clear When When New Version Loaded:是有新版本时清理
  • Bundle Mode:打包模式

    1. Pack Together:组内资源打一个Bundle包
    2. Pack Separately:组内资源每一个创建一个Bundle包
    3. Pack Together By Label:组内资源根据设置标签打Bundle包
  • Bundle Naming Mode:创建bundle的名字

    1. Filename:文件名是从组名派生的字符串
    2. Append Hash to Filename:文件名+哈希值
    3. Use Hash of AssetBundle:使用AssetBundle的哈希值
    4. Use Hash of Filename:使用文件名哈希值
  • Asset Load Mode:资源加载模式

    1. Requested Asset and Dependencies:加载请求的资源和依赖(通常使用)
    2. All Packed Asset And Dependencies:加载所有打包的资源和依赖项
  • Asset Provider:定义 Addressables 使用哪个 Provider 类从该组生成的 AssetBundle 加载资产。将此选项设置为来自 Bundles ProviderAssets,除非有自定义 Provider 实现来提供来自 AssetBundle 的资产。

  • Asset Bundle Provider :定义 Addressables 使用哪个 Provider 类来加载从该组生成的 AssetBundle。将此选项设置为AssetBundle Provider,除非您有自定义 Provider 实现来提供 AssetBundle


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/156999.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

69. 单发多框检测(SSD)代码实现以及QA

之前,我们分别介绍了边界框、锚框、多尺度目标检测和用于目标检测的数据集。 现在我们已经准备好使用这样的背景知识来设计一个目标检测模型:单发多框检测(SSD) 。该模型简单、快速且被广泛使用。尽管这只是其中一种目标检测模型&…

Filebeat从入门到实战

文章目录Filebeat的概念简介Filebeat特点Filebeat与Logstash对比Filebeat安装安装地址Logstash部署安装Filebeat实战对接LogstashFilebeat模块使用(配置Kafka)对接ES案例展示对接Kafka案例展示总结Filebeat的概念 简介 Filebeat是一种轻量型日志采集器…

【GP学习笔记三】锁与死锁

锁 一、概述 在GP中,定义了三种锁 自旋锁(Spinlocks)轻量级锁(LWLocks)普通锁(Regular locks,也叫重量级锁) 自旋锁 与互斥锁有点类似。针对某一项资源,在任何时刻&…

《Dubbo源码剖析与实战》学习笔记 Day6

问题引出,从dubbo2升级到了dubbo3版本,出现了一些消费方调用超时的现象,通过日志发现异常信息中的timeout竟然是1000ms,明明在暴漏接口的时候指定了超时时间,为什么没有生效。 经过debug分析调试后,找到了…

基础2-用卷积神经网络进行颅内和头皮脑电图数据分析的广义癫痫预测

A Generalised Seizure Prediction with Convolutional Neural Networks for Intracranial and Scalp Electroencephalogram Data Analysis 为了改善耐药癫痫和强直性癫痫患者的生活,癫痫预测作为最具挑战性的预测数据分析工作之一已引起越来越多的关注。许多杰出的…

excel图表整形:如何提升条形图的颜值

提交给老板的报告总少不了要用到图表,比如下面这个业务员销售增长率的报表,老板要求用条形图来呈现出每个人的增长率:直接用Excel自带的图表模板做出来是这样的效果:这个图看起来总有点别扭,如果能做成下面这个样子就好…

《HTML简单入门》

目录 前言 HTML基本知识 简单示例 HTML标签 单标签 HTML元素 HTML属性 HTML入门知识 HTML头部 title style meta link script noscript base HTML标题 h HTML段落 p HTML文本格式化 加粗 加重 倾斜 强调 下划线 删除线 小号字体 下标 上标 水…

Android组件——Service

一、多任务实现的基本原理 默认情况下,同一个应用程序的所有组件都运行在同一个进程中,大部分应用程序是按这种方式运行的在具体应用中需要通过设置mainifest文件中组件的android:process属性,是该组件运行在不同的进程中元素也支持android:…

strapi系列-如何创建一个定时任务-Cron Jobs

Cron 是什么? Cron 有多种用途。 Cron Jobs 用于安排服务器上的任务运行。它们最常用于自动化系统管理或维护。然而,它们也与 Web 应用程序的构建相关。 Web 应用程序可能需要在各种情况下定期执行特定操作。 为什么使用 Cron ? 定期进行的计划活动,C…

【SpringMVC】异常处理

目录 一、基本介绍 二、局部异常 三、全局异常 四、自定义异常 五、统一处理异常 六、异常处理流程 相关文章(可以关注我的SpringMVC专栏) SpingMVC专栏SpingMVC专栏一、基本介绍如果我们对异常不做任何处理的话,那么他就会返回500错误&…

list底层实现

目录 引言 结构形式 整体框架 插入删除接口实现 析构函数、拷贝构造、赋值重载 const迭代器实现 取得链表长度的方式 迭代器前置\后置operator -- 以及operator-> 引言 list是非常常用的一个容器,数据结构是链表,数据空间是以链式结构存储的…

QT中控件不满足要求那么为你的控件做“提升”吧

我们在VisualStudio中例如VC或者C#中写一些个性化比较强的项目都会对控件有更高的要求,那么当我们的要求得不到满足时就需要考虑用到自定义控件了,其中自定义控件有两种方式,一种是完全重写,另一种简单的方法是继承自现有的控件。…

指针深度解剖,从内存详细了解指针

目录 🚕第一组:一维数组 🚌第二组:字符数组 🚐字符数组1.0 🚎字符数组1.1 🚑字符数组2 🚚字符数组3 🚜第三组:二维数组 🚗在上次的博客之中我们…

INVS里的DanglingWire的自动化清理实战

在上一讲中一起了解了INVS里的DanglingWire(innovus中的DanglingWire(悬垂线)的理解和处理),常言道理论联系实际,在理解原理的基础上,那一定是要服务项目的,这篇后续火速跟进&#x…

中国第一个 Apache 顶级开源项目的突围之路!

【CSDN 编者按】近些年开源大热,开源创业之风随之四起。作为近两年特别火的商业方向,开源创业者如何才能在一片红海中乘风破浪,在行业中占据一席之地?第一个由中国人主导贡献到 ASF 的顶级开源项目 Apache Kylin 做出了有效探索&a…

字节序,主机字节序与网络字节序

📌————本章重点————📌 🔗了解字节序的概念; 🔗了解大小端的概念;🔗了解主机字节序和网络字节序的区别;🔗学习主机字节序和网络字节序相机转化的接口; ✨————————————✨字节序 概念&am…

人工智能助力古彝文识别,推动传统文化传承

人工智能助力古彝文识别,推动传统文化传承0. 前言1. 古彝文1.1 古彝文介绍1.2 古彝文识别的重要意义1.3 古彝文识别的挑战2. 古彝文识别国内外研究进展3. 基于深度学习的古彝文识别3.1 深度学习简介3.2 基于深度学习的古彝文识别模型架构4. 古彝文识别进展与展望小结…

HTML小游戏19 —— html5版开心斗地主小游戏(附完整源码)

💂 网站推荐:【神级源码资源网】【摸鱼小游戏】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】本节教程我会带大家使用 HTML…

【练习】Day05

努力经营当下,直至未来明朗! 文章目录一、选择二、编程1. 跳跃游戏[贪心算法]2. 寻找重复数[注意思路!]答案1. 选择2. 编程普通小孩也要热爱生活! 一、选择 HASH 函数冲突处理方式不包括以下哪一项:(&…

YOLOv5源码详解——项目目录

YOLOv5 目录 .github .github相关,不重要 datasets 存放数据集,刚下载下来的源码是不包含这个文件夹的 classify 图像分类模块,包含以下4个文件 predict.py —— 图像分类预测脚本train.py ——图像分类训练脚本val.py —— 图像分类验证脚本tutorial.…