AssetDatebase也是一个静态类,他的作用是管理整个工程的所有文件(一般成为“资产”)。直观地说就是管理整个project窗口中的所有内容,比如,你可以增加、删除、修改文件等等。
这里有几个常常用到:
CreateAsset:创建文件
CreateFolder:创建文件夹
DeleteAsset:删除文件
GetAssetPath:获取文件相对于Assets所在目录的相对位置,如“Assets/Images/test.png”
LoadAssetAtPath:加载文件
Refresh:刷新整个project窗口
SaveAssets:保存所有文件
例子(实现右键点击文件或者文件夹,选择MyEditor/Delete Asset菜单后,删除选择的文件或者文件夹):
1
2
3
4
5
6
7
8
9
10
11
12
using
UnityEditor;
public
class
EditorCase1
{
[MenuItem(
"Assets/MyEditor/Delete Asset"
)]
public
static
void
CaseMenu()
{
var obj = Selection.activeObject;
var path = AssetDatabase.GetAssetPath(obj);
AssetDatabase.DeleteAsset(path);
}
}