code
using UnityEngine;
using System.IO;
using UnityEditor;
public class MY_Tools
{
[MenuItem("Tools/GenerateFolder ")]
private static void Generate()
{
//默认目录:系统可识别文件夹
Directory.CreateDirectory(prjPath + "Editor");//编辑器类
Directory.CreateDirectory(prjPath + "Plugins");//dll和一些纯代码插件
Directory.CreateDirectory(prjPath + "Resources");//所有需要Resource.Load加载的资源
Directory.CreateDirectory(prjPath + "StreamingAssets");//不压缩路径
//项目通用文件夹
Directory.CreateDirectory(prjPath + "ThirdParty");//存放第三方插件
Directory.CreateDirectory(prjPath + "Scenes");//场景文件
Directory.CreateDirectory(prjPath + "Scripts");//代码目录
Directory.CreateDirectory(prjPath + "Z_test");//存放测试项的资源,发布前删除文件夹
//游戏美术资源
Directory.CreateDirectory(prjPath + "ArtAssets");//美术资源存放
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Animations");//动画资源
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Animators");//动画控制器
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Materials");//材质球
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Models");//模型
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Prefabs");//预制
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Sounds");//声音
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Textures");//贴图
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Shaders");//着色器
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "Effects");//特效
Directory.CreateDirectory(prjPath + "ArtAssets" + "/" + "UI");//UI文件、Atlas图集
AssetDatabase.Refresh();
}
}
菜单栏=》Tools/GenerateFolder
- 工程结构约束整个unity工程文件存放的位置,严格按照目录结构,工程就会始终保持结构而不凌乱。更有助于提升团队开发效率。
- 目录结构没有统一标准,网上给出的参考也各有优点,还是要结合自己平时的开发环境及实际项目需求来规范。