Unity 之 资源加载 -- 可寻址系统使用介绍 -- 入门(三)

news2024/11/20 7:29:03

可寻址系统设置面板使用介绍介绍 -- 入门(三)

  • 一,可寻址系统目录介绍
  • 二,可寻址系统面板介绍
    • 2.1 Groups - 资源组
    • 2.2 Settings - 设置
    • 2.3 Profiles - 配置文件
    • 2.4 Event Viewer - 事件查看器
    • 2.5 Analyze - 分析工具
    • 2.6 Hosting - 托管服务

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

一,可寻址系统目录介绍


二,可寻址系统面板介绍

2.1 Groups - 资源组

可寻址系统资源组:

  1. 创建组:
    打开 Addressables Group 窗口(菜单:Window > Asset Management > Addressables > Groups)。然后点工具栏中的Create,即可打开上图界面。

  2. 创建新组:
    创建组成功后,会自带一个(Default Local Group)组,在左上角New下拉菜单中选择模版创建新组;或者在标签页右键空白处可选Create Group创建新组:

  3. 操作组:
    选择预操作组,右键可以看到可操作选项有:移除组,简化名称,设置为默认组,查看组设置面板,重命名,创建新组

  4. 添加资源到组:
    在Project中选择需要添加资源,直接拖拽到组中即可:

  5. 操作组内资源:
    选中组内资源,右键可以看到操作选项有:移动到现有组,移动到新建组中,简化名称,复制资源名称到剪切板,修改资源,创建新组:

  6. 标签:
    在组内资源的最后一栏中可以添加标签,要分配标签,请选中或取消选中所需标签的复选框。单击左上角的加号按钮,然后单击管理标签以添加、删除或重命名您的标签。

    标签的作用在于一个组内的分类,当我们打Bundel包时,一个Group会打成一个包,若我们将组内资源设置为不同标签,在设置组的打包方式为Pack Together By Layer,可寻址系统就会以Label为颗粒细分成多个.bundle,使得组更加灵活:

  7. 工具栏:
    资源组的工具栏包括:打开系统设置,检测内容更新限制,窗口(配置文件,标签页,分析工具等),组视图可以设置组窗口显示选项。

  8. 加载模式:
    可通过设置在编辑进行模拟远程加载,三种方式分别为:Fast Mode --> 研发阶段;Virtual Mode --> 本地模拟;Packed Play Mode --> 正式打包

  9. 构建脚本:
    选择执行构建命令:创建一个新的构建(打新资源包),更新以前的构建(热更资源包),清理构建生成文件


2.2 Settings - 设置

Settings:可寻址系统的各种,和单一组的各种设置详细介绍都在上篇文章写了,需要的童鞋,可以点击链接查看。


2.3 Profiles - 配置文件

打开 Profiles 窗口(菜单:Window > Asset Management > Addressables > Profiles)

Profiles其实就是配置文件打包和加载使用的路径的:

  • Local:为本地内容定义两个路径变量:

    1.Local.BuildPath:设置使用此本地打包资源保存路径。

    2.Local.LoadPath:加载应用程序本地安装的资产的位置。

  • Remote:为远程内容定义两个路径变量:

    1.Remote.BuildPath:设置使用此远程打包资源保存路径。

    2.Remote.LoadPath:从中下载远程内容和目录的 URL。

  • BuildTarget:构建目标的名称,例如 Android 或 iOS等

  • 新建配置:
    可以通过右键删除,修改名称;右侧面板可以通过选择Custom来自定义各个加载地址和构建目标:

更换配置:
两种方式:

  1. 在资源组中设置使用配置文件:

  2. 在设置面板中设置使用配置文件:

配置变量语法:

  • 大括号{}:可寻址对象在运行时评估大括号包围的条目。可以使用运行时类的代码变量(例如 {UnityEngine.AddressableAssets.Addressables.RuntimePath})。

  • 中括号[]:在构建时评估被方括号包围的条目。这些条目可以是其他配置文件变量(例如 [BuildTarget])

PS:尽量不要修改本地路径(Local.BuildPathLocal.LoadPath),可寻址系统会在打包时自动从Addressables.BuildPath复制到 StreamingAssets 文件夹。若修改了则需要手动复制后再重新打包。

一个示例:

若你有很多的平台需要修改配置文件则可以这样写:

Remote.LoadPath:[BuidleEditor.RemoteLoadPath] --> 对应下面代码中的变量:


2.4 Event Viewer - 事件查看器

打开面板:菜单:Window > Asset Management > Addressables > Event Viewer

开启方法:在可寻址系统的设置面板的在Diagnostics下,勾选Send Profiler Events选项,然后允许程序,即可在Event Viewer窗口看到如下现象:

可以此窗口监控内存的使用情况,此窗口可以显示应用程序何时加载和卸载资产,并显示所有可寻址系统操作的引用计数。

PS:我这里用代码加载了两个物体,加载代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AddressableAssets;

public class LoadManager : MonoBehaviour
{
    void Start()
    {
        LoadGameObject("Assets/Prefab/Cube.prefab", Vector3.zero);
        LoadGameObject("Assets/Prefab/Sphere.prefab", Vector3.right * 2);
    }

    void LoadGameObject(string loadStr, Vector3 pos)
    {
        Addressables.LoadAssetAsync<GameObject>(loadStr).Completed += (obj) =>
        {
            GameObject go = obj.Result;

            Instantiate(go, pos, Quaternion.identity);
        };
    }
}

2.5 Analyze - 分析工具

分析工具是一种收集有关项目的可寻址布局信息的工具。在某些情况下,Analyze 可能会采取适当的措施来清理您的项目状态。

通过 Window > Asset Management > Addressables > Analyze 打开工具窗口:

分析窗口显示分析规则列表包括以下操作:

  • 分析选定的规则
  • 清除选定的规则
  • 修复选定的规则

Check Duplicate Bundle Dependencies(检查重复Bundle包依赖):此规则会扫描所有组并计算资源组布局来检查可能重复的资源。这个需要一个完整的打包过程进行检查。

在打过一次资源包后,右键运行即可得到检测结果,由于我这里资源组少且没有依赖关系,所以显示的是:No issues found。


2.6 Hosting - 托管服务

托管服务提供了一个集成工具,可以在本地模拟使用服务器功能的工具。

新添加的服务出现在Addressables Hosting窗口的Hosting Services部分。使用服务名称字段输入服务的名称。

新服务默认为禁用状态。选中Enable复选框,即开启本地服务。要选择不同的端口,请在“端口”字段中分配特定的端口号,或单击“重置”按钮分配不同的随机端口号。

使用示例:创建并开启本地服务后,在配置文件中使用本地服务为远程加载地址,最后设置资源包加载方式使用刚刚设置的路径即可实现模拟远程加载:

版本适配:2022.1之后的版本,默认情况下不允许 HTTP 下载。为了使默认HTTPHostingService设置正常,需要在Edit > Project Settings > Player > Other Settings > Allow downloads over HTTP中将Allow downloads over HTTP设置设置为Not allowed以外的其他选项


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

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

相关文章

springAOP的注解使用

注解使用导入依赖常用注解&#xff1a;注意&#xff0c;给测试类起名字的时候千万不要定义成Test&#xff0c;测试的方法不可以有参数&#xff0c;不可以有返回值在使用注解的时候&#xff0c;还需要告诉spring应该从哪个包开始扫描,一般在定义的时候都写上相同包的路径需要导入…

GitLab安装到实战

简介 关于gitlab的入门与实战&#xff0c;这里使用的是docker安装。2核4g的话不太行。 安装 由于这里我是学习环境,所以买的是抢占式&#xff0c;配置也不是很高。 购买服务器示例 Docker安装步骤 1.安装docker yum install -y docker 2.启动docker systemctl start doc…

【JavaEE】进程和线程

目录 1. 进程 1.1 PCB 1.1.1. PID 1.1.2. 内存指针 1.1.3. 文件描述符表 1.1.4.进程调度相关的属性 1.2 进程的虚拟地址空间 1.3 进程间的通信 2. 线程 2.1 线程与进程之间的联系 2.2 多线程与多进程 1. 进程 在了解线程之前&#xff0c;我们首先要了解进程&…

RHCE学习笔记-253-3

system monitoring Introduction to system monitoring security breaches or system malfunctions can be detected with regular system monitoring system monitoring includes: file system monitoring log file analysis process monitoring file system analysis 如果定期…

谷粒商城-基础篇-Day08-调试会员等级相关接口

在P83级中&#xff0c;点击发布商品时没有出现请求 则需要解决 PubSub is not definded这个问题 PubSub是用来检测选择分类的值变动的。 选择分类值变动&#xff0c;会请求后台接口&#xff0c;动态更新选择品牌的选项。 安装依赖 npm install --save pubsub-js&#xff08…

算法队伍的搭建

&#x1f31e;欢迎来到数据结构的世界 &#x1f308;博客主页&#xff1a;卿云阁 &#x1f48c;欢迎关注&#x1f389;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; &#x1f31f;本文由卿云阁原创&#xff01; &#x1f64f;作者水平很有限&#xff0c;如果发现错误&#xff…

网络安全必备1000道面试题集锦(附答案)

前言 以下为网络安全各个方向涉及的面试题&#xff0c;星数越多代表问题出现的几率越大&#xff0c;祝各位都能找到满意的工作。 注&#xff1a;本套面试题&#xff0c;已整理成pdf文档&#xff0c;但内容还在持续更新中&#xff0c;因为无论如何都不可能覆盖所有的面试问题&a…

使用ResNet18实现CIFAR10数据集的训练

如果对你有用的话&#xff0c;希望能够点赞支持一下&#xff0c;这样我就能有更多的动力更新更多的学习笔记了。&#x1f604;&#x1f604; 使用ResNet进行CIFAR-10数据集进行测试&#xff0c;这里使用的是将CIFAR-10数据集的分辨率扩大到32X32&#xff0c;因为算力相关的…

Git使用详解(图文+代码):基础内容

基础内容前言版本控制本地版本控制系统集中化版本控制系统分布式控制系统Git使用详解Git基础理解Git基础指令取得项目的Git仓库记录每次更新的仓库检查当前文件状态跟踪文件暂存已修改文件忽略某些文件查看已暂存和未暂存的更新提交更新跳过使用暂存区域移除文件远程操作的使用…

熊市里再看GameFi,为什么说链游潜力巨大?

大方向上来看&#xff0c;区块链项目本质上分为两类&#xff0c;一类是金融资产属性的项目&#xff0c;比如我们常说的DeFi、DAO、公链等&#xff0c;另一类则具有娱乐艺术属性的&#xff0c;比如NFT、GameFi、元宇宙等&#xff0c;熊市环境下如何看待这两类项目&#xff0c;以…

【iOS】—— 初识GCD

GCD&#xff08;Grand Central Dispatch&#xff09; 文章目录GCD&#xff08;Grand Central Dispatch&#xff09;什么是GCDperformSelector方法&#xff1a;GCD的优点&#xff1a;任务和队列队列的创建方式任务的创建方法六种情况的例子1.并发队列 同步执行2. 并发队列 异步…

Vector - VT System - Ethernet板卡_VT6306

前面介绍了支持CAN&CANFD&LIN板卡&#xff0c;但是对于当前日益火爆的车载以太网来说&#xff0c;Vector也是提供了类似于VN5000系列一样的板卡&#xff0c;那就是VT6306。它给提供6路的百兆或者6路千兆的车载以太网&#xff08;2022年之前选择后是固定的&#xff0c;有…

央视点赞百度智能云激活民营经济”数字“活力

2023年&#xff0c;对民营企业究竟意味着什么。 2022年12月&#xff0c;新华社发表重磅长文解读中国经济发展大势&#xff1a;“迎接更加壮阔的光明前程”。 随后央视新闻联播连续4天发声&#xff0c;关注民营经济发展。4条新闻中&#xff0c;“创新”一词共出现了29次&#…

小程序的运行机制以及安全机制

接触小程序有一段时间了&#xff0c;总得来说小程序开发门槛比较低&#xff0c;但其中基本的运行机制和原理还是要懂的. 了解小程序的由来 在小程序没有出来之前&#xff0c;最初微信WebView逐渐成为移动web重要入口&#xff0c;微信发布了一整套网页开发工具包&#xff0c;称…

199:vue+openlayers 添加删除修改feature信息,双向不同颜色指示互动

第199个 点击查看专栏目录 本示例的目的是介绍如何在vue+openlayers项目中绘制多边形,每绘制一个,左侧输出一个feature指示标志,双向颜色互动指示。 直接复制下面的 vue+openlayers源代码,操作2分钟即可运行实现效果; 注意如果OpenStreetMap无法加载,请加载其他来练习 …

前缀和讲解

目录 一、前言 二、前缀和 1、基本概念 2、前缀和与差分的关系 3、差分数组能提升修改的效率 三、例题 1、统计子矩阵&#xff08;lanqiao2109&#xff0c;2022年省赛&#xff09; &#xff08;1&#xff09;处理输入 &#xff08;2&#xff09;方法一&#xff1a;纯暴…

设计模式面试题

工厂模式是我们最常用的实例化对象模式了&#xff0c;是用工厂方法代替new操作的一种模式,工厂模式在Java程序中可以说是随处可见。本文来给大家详细介绍下工厂模式 面向对象设计的基本原则&#xff1a; OCP&#xff08;开闭原则&#xff0c;Open-Closed Principle&#xff0…

字符串函数介绍——C语言

文章目录 一、引言 二、函数的介绍与模拟实现 2、1 求字符串长度strlen&#xff08;&#xff09;函数 2、1、1 strlen&#xff08;&#xff09;函数介绍 2、1、2 strlen&#xff08;&#xff09;函数的模拟实现 2、2 字符串拷贝strcpy&#xff08;&#xff09;函数 2、2、1 s…

「旷野俱乐部」在 The Sandbox 开业,SMCU 宫殿等你来体验!

简要概括 KWANGYAThe Sandbox 是「旷野俱乐部」在 The Sandbox 元宇宙中的虚拟空间&#xff1b; SMCU 宫殿体验呈现了 2022 年冬季 SM 小镇的视觉效果&#xff0c;SMCU 宫殿专辑封面将于 1 月 10 日發佈&#xff1b; 将向全球粉丝展示更多基于韩国文化内容的元宇宙体验。 The…

Appium+Pytest+pytest-testreport框架轻松实现app自动化

有任何环境问题&#xff0c;可以参考我的文章 Appium自动化测试&#xff1c;一&#xff1e;&#xff0c; Appium自动化测试&#xff1c;二&#xff1e;有任何定位问题、触屏操作、等待问题、Toast 信息操作问题、手机操作问题及H5页面的操作请参考我的文章&#xff1a;Appium自…