unity怎么实现linux目录文件,Unity3D中实现动态加载Resources目录外的资源

大家可能都知道在Unity3D中如何实现动态加载资源的方法,就是把资源放在Resources目录下,使用Resources.Load方法即可动态加载资源。但将资源放在Resources目录下有一个问题,那就是打包程序的时候会将Resources目录下的全部文件都加密压缩打进包内,这样如果我们想使用assetbundle方式打小包的话就不行了。之前一直在考虑这个问题,最近在翻看API文档的时候发现有个方法叫Resources.LoadAssetAtPath,这个方法可以让你加载Assets目录下任何一个位置的资源,但只是在编辑器模式下。利用这个方法,我们可以在测试和发布时使用两种不同的策略来加载资源:在编辑器测试环境使用Resources.LoadAssetAtPath方法动态加载资源;在发布环境中使用assetbundle方式加载动态资源。

下面贴出代码片段:

// 通过Resources.LoadAtPath方法动态加载Prefab

private void LoadPrefabByResources()

{

Object prefab = Resources.LoadAssetAtPath("Assets/Prefabs/Cube.prefab", typeof(GameObject));

GameObject cube = (GameObject)Instantiate(prefab);

cube.transform.parent = transform;

}

同时我做了一个简单的Example,下载地址:

具体下载目录在 /2014年资料/6月/17日/Unity3D中实现动态加载Resources目录外的资源

PS: 项目目录中的Tools文件夹内包含一个HFS.exe是在本地模拟http文件服务的小工具。利用它你可以将本地文件映射为http可以访问的文件。

Unity3D 的详细介绍:请点这里

Unity3D 的下载地址:请点这里

46819142_1.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值