Unity官方案例-Addressables-Sample-笔记(1)-Basic AssetReference(基本加载)

本文档记录了Unity Addressables Sample项目中关于Basic AssetReference的学习笔记,涉及AssetReference的使用、加载、延迟调用、销毁等核心API,并提供了具体的示例场景分析,包括Scenes/BasicReference、FilteredReferences、ListOfReferences和SubobjectReference。
摘要由CSDN通过智能技术生成

记录一下Addressables-Sample项目中的脚本和学习的笔记,主要是熟悉API及其使用方式.方便日后工作查询.

项目地址:

github: Addressables-Sample

Unity官方教程

Bilibili-Unity官方教程 Addressables【中文字幕】

Basic AssetReference

1.1 Scenes/BasicReference

实例化的AssetReference引用,并销毁

脚本 BasicReference.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.ResourceManagement;

public class BasicReference : MonoBehaviour
{

	public AssetReference baseCube;

	public void SpawnThing()
	{
		baseCube.InstantiateAsync();
	}
}

脚本 SelfDestruct.cs
using UnityEngine;
using UnityEngine.AddressableAssets;

public class SelfDestruct : MonoBehaviour {

	public float lifetime = 2f;

	void Start()
	{
		Invoke("Release", lifetime);
	}

	void Release()
	{
        if (!Addressables.ReleaseInstance(gameObject))
            Destroy(gameObject);
	}
}

  • 创建的对象将被Addressables.ReleaseInstance销毁,即使它们不是以这种方式创建的。从版本0.8开始,这将抛出一个警告,但仍然会删除资源。在将来,我们的目的是使这种方法不破坏资产,或打印警告。相反,它将返回一个布尔值,以便您可以在需要时手动销毁。
API讲解

1.引用

public AssetReference baseCube;

AssetReference 是addressable asset的引用.AssetReference有一个Asset属性

public virtual Object Asset { get; }

Asset是加载的资产。此值仅在LoadAssetAsync返回的AsyncOperationHandle完成后设置。如果只调用instantialeasync,则不会设置它。如果调用release,它将被设置为null。

2.加载

baseCube.InstantiateAsync();是基本异步加载,会返回一个AsyncOperationHandle,里面包含了加载过程中的所有信息.

3.延时调用

Invoke是MonoBehaviour类中的方法。还有一个类似的InvokeRepeating方法.

CancelInvoke取消定时器.

4.销毁

void Release()
{
    if (!Ad
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值