UnityEditor: Drag and Drop Prefab Preview in Scene View
This tutorial teaches you how to display a preview of a prefab in the Scene view of Unity Editor when you drag and drop it. This feature enhances your workflow by providing instant visual feedback.
Steps:
-
Create a New Script: Create a new C# script file named 'PrefabPreview' (or any name you prefer) within your Unity project.
-
Implement the Code: Paste the following code into the script:
using UnityEditor;
using UnityEngine;
[CustomEditor(typeof(Prefab))]
public class PrefabPreview : Editor
{
private GameObject _previewObject;
public override bool HasPreviewGUI()
{
return true;
}
public override void OnPreviewGUI(Rect r, GUIStyle background)
{
if (_previewObject == null)
{
_previewObject = (target as Prefab).gameObject;
}
if (_previewObject != null)
{
EditorGUI.DrawPreviewTexture(r, _previewObject.GetComponent<SpriteRenderer>().sprite.texture);
}
}
}
-
Add Script to Editor Folder: Place the 'PrefabPreview.cs' script in your Unity project's 'Assets/Editor' folder. This ensures the script is recognized by the Editor.
-
Test the Preview: Now, drag a prefab from your Project window into the Scene view. You should see a preview image of the prefab being displayed.
Important Note: This custom editor functionality only works within Unity Editor and has no effect on your game's runtime behavior.
原文地址: https://www.cveoy.top/t/topic/lNx6 著作权归作者所有。请勿转载和采集!