要使用进行Unity进行游戏开发,我们可以先了解一下Unity项目工程的目录,理清项目结构,在Unity的学习和开发过程中都能更有效率的读懂整个工程项目。
下面以Unity 2017.3.0f3创建工程文件,简单终结一下工程的结构:
- 项目根目录
项目刚建立时会有如下几个基础文件夹:
Assets
资源文件夹 -- 用来存放Unity工程用到的各种Asset(模型,图片,音频等),代码中可以通过代码对本目录进行查找和访问,基于此可以使用很多API.
Library
库文件夹 -- 用于存放Unity工程中一些内置脚本,shader,缓存文件等,且Unity会把Asset下支持的资源导入成自身识别的格式,以及编译代码成为DLL文件,都放在本目录中。
- ProjectSettings
用于储存项目的各种设置 -- 编辑器中设置的各种参数,各个项目均可能不同,具体如下:
- Temp
(只有在Unity打开该项目时才有)顾名思义,,开发过程中Unity会生成很多临时文件,本目录即为所用,关闭项目本目录被清除,除非异常关闭。
- UnityPackageManager
内含一个Manifest.json,Unity打包成应用所需的配置文件。
- 工程目录结构
使得项目使用的资料整齐放好,不唯一,只求规范。(以下存放在上面提到的Assets目录中)
- Editor 编辑器类存放文件夹。
- ExternalLibraries 大型完善的外部库文件存放目录,如NGUI等拥有完善的目录结构和大量代码的插件,就存放在此目录。有些人喜欢把NGUI目录直接存放在plugins目录下其实是不太好的,因为plugins文件夹也是要参与编译的。
- GameAssets 游戏美术资源存放文件,导出unitypackage文件导入时可能会污染目录结构,需均要手动调整目录。
- Materials 材质球。
- Models 模型,如果动画系统采用animation,把动画文件和原始模型存放在同一目录下,如果采用animtor,因为动画重用的关系,动画文件需单独存放。
- Animations 用新的Mecanim时,存放动画文件。
- Prefabs 预制体,所有不需要Resource.Load加载的预制体,均存放在此。
- Sounds 声音文件。
- Textures 贴图文件。
- UI 一些UI文件,如Atlas等。
- Plugins 第三方包、工具代码、sdk,此文件下会有限编译。
- Resources Resources中全部资源会被打包成一个缺省的AssetBundleresources.assets。在该文件夹下的资源,可以通过Resources类(API)进行加载使用。
- Scenes 场景文件存放目录。
- Scripts 脚本存放目录,下级可以再分为游戏管理器等。
- StreamingAssets 该目录下的文件会在打包时打包到项目中,与Resources一样,没有被使用过的资源也会被打包。游戏运行时只能读不能写。
参考文章
(转载请说明出处)