Resources:

  Resources文件可以在根目录下,也可以在子目录下,只要叫Resources就好。Resources目录下所有资源将被打包进游戏存放资源的archive中,Resources目录在应用中也就不复存在,但加载时仍使用曾在Resource下的路径。
  该目录下所有资源会被压缩,只读不可写,使用Resources.Load()接口加载。

StreamingAssetsPath:
  StreamingAssets目录必须在Assets根目录下,该目录下所有资源也会被打包到游戏里,不同于Resources目录,该目录下的资源不会进行压缩,同样是只读不可写的。Unity基本也没有提供从该路径下直接读取资源的方法,只有www可以加载audioClip、texture和二进制文件。但Unity提供了从该目录加载AssetBundle的方法,我们一般直接在这个目录下存放AssetBundle文件。可以通过Application.streamingAssetsPath访问该路径。
  
  各平台StreamingAssets路径打印:
  Win:E:/myProj/Assets/StreamingAssets
  Mac : /myProj/Assets/StreamingAssets
  Andorid:jar:file:///data/app/com.myCompany.myProj-1/base.apk!/assets
  iOS: /var/containers/Application/E5543D66-83F3-476D-8A8F-49D5332B3763/myProj.app/Data/Raw

PersistentDataPath:
  该目录为应用程序沙盒目录,应用程序安装后才会出现。该目录独特之处在于是可写的,所以我们一般将下载的AssetBundle存放于此。使用Application.persistentDataPath访问。

  各平台PersistentDataPath路径打印:
  Win:C:/Users/lodypig/Appdata/LocalLow/myCompany/myProj
  Mac : /Users/lodypig/Library/Application Support/myCompany/myProj
  Andorid:/data/data/com.myCompany.myProj/files
  iOS: /var/mobile/Containers/Data/Appliction/A112252D-6B0E-459Z-9D49-CD3EAC6D47D/Documents

DataPath:
  应用程序目录,即Assets目录。使用Appliction.dataPath访问。
  各平台DataPath路径:
  Win:E:/myProj/Assets
  Mac : /myProj/Assets/
  Andorid:/data/app/com.myCompany.myProj-1/base.apk!
  iOS: /var/containers/Application/E5543D66-83F3-476D-8A8F-49D5332B3763/myProj.app/Data

注意:

  Unity5.3及之前的版本,安卓平台下Application.streamingAssetsPath以"jar:file://"开头,直接使用Application.streamingAssetsPath进行加载会报cannot open archive的错误,原因是加载时路径不对。可以返回上面看一下,安卓平台下Application.streamingAssetsPath以jar:file://开头,跟其它都不一样。将这段去掉就能够正常加载。而去掉后等价于Application.dataPath + “!assets”,所以在Android下我们用该路径加载。

参考资料

示例:

public class AssetBundleLoader
{
// 根据不同平台,声明StreamingAssetsPath路径
public static readonly string STREAMING_ASSET_PATH =
#if UNITY_ANDROID
Application.dataPath + "!assets"; // 安卓平台
#else
Application.streamingAssetsPath; // 其他平台
#endif // 从StreamingAssetsPath加载
public static AssetBundle LoadFromStreamingAssetsPath(string assetbundle)
{
return AssetBundle.LoadFromFile(STREAMING_ASSET_PATH + "/" + assetbundle);
} // PersistantDataPath加载
public static AssetBundle LoadFromPersistantDataPath(string assetbundle)
{
return AssetBundle.LoadFromFile(Application.persistentDataPath+ "/" + assetbundle)
}
}

Unity特殊路径的更多相关文章

  1. unity组件路径自动生成

    unity 有时候找路径太麻烦 写了一个自动生成脚本的工具 using System.Collections.Generic; using System.IO; using System.Text; ...

  2. unity绝对路径与相对路径转化

    绝对路径->相对路径 string mp =“H:\unity(project)\New Unity Project\Assets\111.mat”; mp = mp.Substring(mp. ...

  3. Unity相关路径

    Application.dataPath 只读 在项目根目录下读取文件,但移动端没有访问权限.一般适用于PC端调试用. Application.streamingAssetsPath 在Assets目 ...

  4. unity StreamingAssets路径

    原地址:http://blog.csdn.net/nateyang/article/details/8493791 我们在读写例如XML和TXT文件的时候,在电脑上和手机上路径不一致,造成了很多麻烦, ...

  5. Unity Android路径及注意事项

    Application.temporaryCachePath==/storage/emulated/0/Android/data/com.***.***/cache Application.persi ...

  6. Unity存储路径

    一.在项目根目录中创建Resources文件夹来保存文件 可以使用Resources.Load("文件名字,注:不包括文件后缀名");把文件夹中的对象加载出来注:此方可实现对文件实 ...

  7. unity渲染路径

    (1)      deferred shading:有最佳的光照和阴影效果,在场景中存在许多的实时光照时,使用deferred shading也是最佳的方案,之所以叫做deferred(延迟),是因为 ...

  8. unity文件路径

    转载自:https://blog.csdn.net/linxinfa/article/details/51679528 各平台具体路径: 1.Resources Resources文件夹是一个只读的文 ...

  9. (转) unity 在移动平台中,文件操作路径详解

    http://www.unitymanual.com/thread-23491-1-1.html 今天,这篇文章其实是个老生常谈的问题咯,在网上类似的文章也比比皆是,在此我只是做个详细总结方便大家能够 ...

随机推荐

  1. python 函数闭包()

    闭包(closure) 当一个函数在内部定义函数,并且内部的函数应用外部函数的参数或者局部变量,当内部函数被当做返回值的时候,相关参数和变量保存在返回函数中,这种结果,叫闭包 example1: de ...

  2. scss 使用

    SCSS 常用功能 https://www.cnblogs.com/guangzan/p/10547335.html 定义变量$my-color: #666; //定义变量$my-heihgt: 10 ...

  3. Spring线程池配置模板设计(基于Springboot)

    目录 线程池配置模板 基础的注解解释 常用配置参数 配置类设计 线程池使用 ThreadPoolTaskExecutor源码 线程池配置模板 springboot给我们提供了一个线程池的实现,它的底层 ...

  4. [Python3]subprocess.check_output() 在python3的输出为bytes而非string,在实际使用过程中得增加一个解码过程decode(),不然会有问题

    按以往python2的习惯编码输出报错 #-*- coding:utf-8 -*- ''' Created on 2018年7月21日 @author: lenovo ''' import os im ...

  5. Tengine 2.1.2 (nginx/1.6.2)安装配置,淘宝 Web 服务器

    简介 Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很 ...

  6. day4-课堂代码

    # ---------------------------------------------------------------------- # def my_function1(name, ad ...

  7. Nginx端口占用问题

    错误信息:nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use) 主要是端口被占用 ...

  8. scrapy(一)scrapy 安装问题

    一.安装scrapy pip install scrapy 二.出现Microsoft Visual C++ 14.0相关问题 注:若出现以下安装错误 building 'twisted.test.r ...

  9. Android实现导航菜单随着ListView联动,当导航菜单遇到顶部菜单时停止在哪里,并且listview仍能滑动

    需求:现要实现一个特殊UI的处理,如下图所示: 该布局的上面是一个“按钮”,中间是一个“空白布局(当然也可以是ViewPager等)”,下面是一个页面的导航菜单,底部是一个ListView. 要求:滑 ...

  10. java List集合中contains方法总是返回false

    ArrayList的contains方法 java 今天在用ArrayList类的caontains方法是遇到了问题,我写了一个存放User类的ArrayList 但在调用list.contains( ...