您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

01 youtube playlist editor utility(EditorUtility.DisplayDialog unity3d中這個要怎么用)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-05-29 07:12:06【】6人已围观

简介EditorUtility.DisplayDialogunity3d中這個要怎么用這個是一個Editor類,在需要拓展編輯的時候使用,發布游戲的時候其不會被編譯。通俗點:其不能在派生自MonoBeha

EditorUtility.DisplayDialog unity3d中這個要怎么用

這個是一個Editor類,在需要拓展編輯的時候使用,發布游戲的時候其不會被編譯。通俗點:其不能在派生自MonoBehaviour類中使用,它是用來寫插件的,游戲程序中不能使用

要使用此類,如下幾點缺一不可

1 添加命名空間 using UnityEditor ;

2 此類要放在名為Editor的文件中 (Editor文件夾個數不限)

(具體可以搜索幫助文檔)

如何在 Unity 中獲取某個對象的依賴關系

在 Unity 中目前我發現了獲取依賴關系的兩個 API 接口,分別是:

EditorUtility.CollectDependencies

AssetDatabase.GetDependencies

其中 AssetDatabase.GetDependencies 獲取到的結果就是上面演示的那樣,是大粒度的依賴關系。而 EditorUtility.CollectDependencies 獲取到的是小粒度的依賴關系,所依賴的組件和 Shader 等都會列出來,非常的仔細。

C#

#if UNITY_EDITOR

using UnityEngine;

using System.Collections;

using UnityEditor;

namespace PT.Find

{

[ExecuteInEditMode]

public static class Find

{

[MenuItem("Find/What objects in scene use this?", false, 20)]

public static void SelectSceneUsesOfAsset()

{

Object selectedObject = Selection.activeObject;

if (selectedObject == null)

{

return;

}

Object[] roots = new Object[]{ selectedObject };

var objs = EditorUtility.CollectDependencies(roots);

string path = AssetDatabase.GetAssetPath(selectedObject);

var objs2 = AssetDatabase.GetDependencies(path);

foreach (var obj in objs)

{

Debug.Log(obj.GetType().Name);

}

}

}

}

#endif

#if UNITY_EDITOR

using UnityEngine;

using System.Collections;

using UnityEditor;

namespace PT.Find

{

[ExecuteInEditMode]

public static class Find

{

[MenuItem("Find/What objects in scene use this?", false, 20)]

public static void SelectSceneUsesOfAsset()

{

Object selectedObject = Selection.activeObject;

if (selectedObject == null)

{

return;

}

Object[] roots = new Object[]{ selectedObject };

var objs = EditorUtility.CollectDependencies(roots);

string path = AssetDatabase.GetAssetPath(selectedObject);

var objs2 = AssetDatabase.GetDependencies(path);

foreach (var objin objs)

{

Debug.Log(obj.GetType().Name);

}

}

}

}

#endif

不得不說,Unity Editor 提供的默認的依賴查找的功能好弱,包括反向依賴關系,引用關系丟失等功能。或許我們可以利用這些接口自己做一個好用點的依賴關系查找插件。

EditorUtility.DisplayDialog unity3d中這個要怎么用

這個是一個Editor類,在需要拓展編輯的時候使用,發布游戲的時候其不會被編譯。通俗點:其不能在派生自MonoBehaviour類中使用,它是用來寫插件的,游戲程序中不能使用

要使用此類,如下幾點缺一不可

1 添加命名空間 using UnityEditor ;

2 此類要放在名為Editor的文件中 (Editor文件夾個數不限)

(具體可以搜索幫助文檔)

如何在 Unity 中獲取某個對象的依賴關系

在 Unity 中目前我發現了獲取依賴關系的兩個 API 接口,分別是:

EditorUtility.CollectDependencies

AssetDatabase.GetDependencies

其中 AssetDatabase.GetDependencies 獲取到的結果就是上面演示的那樣,是大粒度的依賴關系。而 EditorUtility.CollectDependencies 獲取到的是小粒度的依賴關系,所依賴的組件和 Shader 等都會列出來,非常的仔細。

C#

#if UNITY_EDITOR

using UnityEngine;

using System.Collections;

using UnityEditor;

namespace PT.Find

{

[ExecuteInEditMode]

public static class Find

{

[MenuItem("Find/What objects in scene use this?", false, 20)]

public static void SelectSceneUsesOfAsset()

{

Object selectedObject = Selection.activeObject;

if (selectedObject == null)

{

return;

}

Object[] roots = new Object[]{ selectedObject };

var objs = EditorUtility.CollectDependencies(roots);

string path = AssetDatabase.GetAssetPath(selectedObject);

var objs2 = AssetDatabase.GetDependencies(path);

foreach (var obj in objs)

{

Debug.Log(obj.GetType().Name);

}

}

}

}

#endif

#if UNITY_EDITOR

using UnityEngine;

using System.Collections;

using UnityEditor;

namespace PT.Find

{

[ExecuteInEditMode]

public static class Find

{

[MenuItem("Find/What objects in scene use this?", false, 20)]

public static void SelectSceneUsesOfAsset()

{

Object selectedObject = Selection.activeObject;

if (selectedObject == null)

{

return;

}

Object[] roots = new Object[]{ selectedObject };

var objs = EditorUtility.CollectDependencies(roots);

string path = AssetDatabase.GetAssetPath(selectedObject);

var objs2 = AssetDatabase.GetDependencies(path);

foreach (var objin objs)

{

Debug.Log(obj.GetType().Name);

}

}

}

}

#endif

不得不說,Unity Editor 提供的默認的依賴查找的功能好弱,包括反向依賴關系,引用關系丟失等功能。或許我們可以利用這些接口自己做一個好用點的依賴關系查找插件。

很赞哦!(582)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:湖南湘潭岳塘区

工作室:小组

Email:[email protected]