UnityEditor 拖拽 Prefab 预览:让你的 Prefab 在 Scene 窗口中可见
UnityEditor 通过使用预制件 (Prefab) 来简化游戏开发过程。当你在 UnityEditor 中拖动一个 Prefab 时,它会显示为一个蓝色的方框。这个方框没有显示这个 Prefab 的实际外观,这可能会让一些开发者感到困惑。但是,我们可以使用一些技巧来实现拖拽 Prefab 时在 Scene 窗口下显示 Prefab 样子。
- 编写一个 Editor 脚本,这个脚本将 Prefab 的外观显示在 Scene 窗口中。以下是一个示例脚本:
using UnityEngine;
using UnityEditor;
[CustomEditor(typeof(GameObject))]
public class ShowPrefabPreview : Editor
{
public override void OnInspectorGUI()
{
GameObject obj = (GameObject)target;
if (PrefabUtility.GetPrefabType(obj) == PrefabType.Prefab)
{
GUILayout.Label('Prefab Preview');
GUILayout.Label(AssetPreview.GetAssetPreview(obj));
}
DrawDefaultInspector();
}
}
-
将这个脚本保存在 Assets/Editor 文件夹中。
-
在 UnityEditor 中,打开 Scene 窗口并选择一个 Prefab 实例。
-
在 Inspector 窗口中,将脚本添加到这个 Prefab 实例上。这将使 UnityEditor 使用这个脚本来显示这个 Prefab 的外观。
现在,当你在 Scene 窗口中拖动这个 Prefab 时,它将显示它的实际外观,而不是一个蓝色的方框。
原文地址: https://www.cveoy.top/t/topic/lNxL 著作权归作者所有。请勿转载和采集!