Unity3D资源加载Resources

                            Unity3D资源加载Resources


目录

1、博客介绍

2、内容

3、推送

4、结语


1、博客介绍

本篇博客对资源加载类Resources做一个介绍


2、内容

FindObjectsOfTypeAll返回一个该类型对象的列表
Load从Resources文件夹内加载一个路径的资源
LoadAll从Resources文件夹内加载一个路径下的所有资源
LoadAsync从Resources文件夹内异步加载路径下的资源
UnloadAsset从内存中卸载资源
UnloadUnusedAssets卸载未使用的资源

FindObjectsOfTypeAll:查找的对象包括场景目录下的对象和资源列表内的对象,以下演示,我输出所有带有Test.cs脚本的物体,我将Test挂载在Main Camera下,并将Main Camera制成预制体,切断场景内的预制体联系,并修改名字,两个物体均被输出。

Load:load就很简单了,指定一个Resources目录下的路径就可以加载了,加载时也可以指定好加载资源的类型,写法有所不同。

	        var cube = Resources.Load("Prefab/Cube");

		GameObject cube = Resources.Load<GameObject>("Prefab/Cube");
		
		GameObject cube = Resources.Load("Prefab/Cube") as GameObject;
		
		Instantiate(cube);

LoadAll:加载指定目录下的所有对象,可以指定类型去加载

	        //加载Prefab目录下的所有对象
		var prefabs = Resources.LoadAll("Prefab");
		
		//加载Prefab目录下的所有GameObject对象
		GameObject[] prefabs1 = Resources.LoadAll<GameObject>("Prefab");

LoadAsync:异步加载资源,通过协程的方式来加载资源,返回的是一个ResourcesRequest,加载的资源在asset内。

	
	StartCoroutine(LoadPrefab());

	IEnumerator LoadPrefab()
	{
		ResourceRequest request = Resources.LoadAsync("Prefab/Cube");

		yield return request;
		
		Instantiate(request.asset);
	}

UnloadAsset:直接卸载加载在内存的资源。

测试了哈,没啥用。。。。。。。。。。。

UnloadUnusedAssets:卸载内存中所有没有使用的资源

测试挺好用的

Resources.UnloadUnusedAssets();

3、推送

博主Github: https://github.com/KingSun5


4、结语

       若是觉得博主的文章写的不错,不妨关注一下博主,点赞一下博文,另博主能力有限,若文中有出现什么错误的地方,欢迎各位评论指摘。

       QQ交流群:806091680(Chinar)

       该群为CSDN博主Chinar所创,推荐一下!我也在群里!

       本文属于原创文章,转载请著名作者出处并置顶!!!!

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值