0
点赞
收藏
分享

微信扫一扫

游戏开发41课 unity 目录分析


 

Unity的固定目录有Resources 、Editor 、StreamingAssets 、Plugins

Editor/Resources 目录可以存在多个,且可以存放在任意目录下

以此我们写编辑器插件时会把脚本放在Editor中,把辅助资源放在Resources中。

详细目录可以参考下面

  • 3rd-Party (第三方插件),C#写的第三方插件
  • Animations (动画相关的部分)
  • Audio (音效相关的部分)
  • Music (音乐相关的部分)
  • SFX (特效音乐相关的部分)
  • Materials (材质相关的部分)
  • Models (模型相关的部分)
  • Plugins ( U3D默认目录 ) (插件)不是C#语言写一些插件和库,比如java\js\C++,u3d默认目录,u3d是C#编译器,其他语言只有这个目录才能识别
  • Prefabs (预制件)
  • Resources (U3D默认目录 ) 资源,需要动态加载的资源放在这里,打包时在这个文件夹里的所有文件(不管有没有使用)都会全部打包。
    所以不需要的文件不要放里面.并且打包时会压缩文件减小体积
  • Textures (纹理相关的部分)
  • Images (美术原始图片)
  • Sandbox (沙盒)
  • Scenes (场景)
  • Levels (关卡)
  • Other (其他)
  • Scripts (脚本)
  • Editor (u3d默认目录) 编辑器相关的内容,不参与打包
  • Shaders (着色器)
  • Common ()放原始资料,比如图集打包资料
  • Fonts (字体)
  • StreamingAssets (U3D默认目录 )StreamingBander放的目录,压缩文件,流式读取文件,生成app,
    StreamingAssets这个文件夹下的资源也会全都打包在.apk或者.ipa 它和Resources的区别是,
    Resources会压缩文件,但是它不会压缩原封不动的打包进去。
    并且它是一个只读的文件夹,就是程序运行时只能读 不能写。
    它在各个平台下的路径是不同的,不过你可以用Application.streamingAssetsPath 它会根据当前的平台选择对应的路径。
    有些游戏为了让所有的资源全部使用assetbundle,会把一些初始的assetbundle放在StreamingAssets目录下,
    运行程序的时候在把这些assetbundle拷贝在Application.persistentDataPath目录下,
    如果这些assetbundle有更新的话,那么下载到新的assetbundle在把Application.persistentDataPath目录下原有的覆盖掉。
    因为Application.persistentDataPath目录是应用程序的沙盒目录,所以打包之前是没有这个目录的,
    直到应用程序在手机上安装完毕才有这个目录。StreamingAssets目录下的资源都是不压缩的,所以它比较大会占空间,
    比如你的应用装在手机上会占用100M的容量,那么你又在StreamingAssets放了一个100M的assetbundle,那么此时在装在手机上就会在200M的容量。
举报

相关推荐

0 条评论