Unity 6.3
0 онлайн 89 гостей 3 в системе
Вход

Editor.OnInteractivePreviewGUI

Declaration

public void OnInteractivePreviewGUI(Rect r, GUIStyle background);

Параметры

Параметр Описание
r Прямоугольник, в котором будет выполнен предварительный просмотр.
Справочная информация Фоновое изображение.

Описание

Реализация для создания собственного интерактивного пользовательского предварительного просмотра. Интерактивные пользовательские предварительные просмотры используются в области предварительного просмотра инспектора и выборщика объектов.

Реализуйте этот метод, вместо OnPreviewGUI, для отображения интерактивных пользовательских предварительных просмотров. Вы можете реализовать оба метода, когда некоторые предварительные просмотры интерактивны, а другие нет. Метод overidden должен использовать переданный прямоугольник и отображать предварительный просмотр ассета. Реализация по умолчанию является no-op.

Примечание: Inspector предварительные просмотры ограничены основным редактором постоянных объектов (ассетов). Например, GameObjectInspector, MaterialEditor, TextureInspector и так далее. Это означает, что в настоящее время не возможно для компонента иметь свой собственный предварительный просмотр инспектора.

using UnityEngine;
using UnityEditor;

// Create an editor window which can display a chosen GameObject. // Use OnInteractivePreviewGUI to display the GameObject and // allow it to be interactive.

public class ExampleClass: EditorWindow { GameObject gameObject; Editor gameObjectEditor;

[MenuItem("Example/GameObject Editor")] static void ShowWindow() { GetWindowWithRect<ExampleClass>(new Rect(0, 0, 256, 256)); }

void OnGUI() { gameObject = (GameObject) EditorGUILayout.ObjectField(gameObject, typeof(GameObject), true);

GUIStyle bgColor = new GUIStyle(); bgColor.normal.background = EditorGUIUtility.whiteTexture;

if (gameObject != null) { if (gameObjectEditor == null) gameObjectEditor = Editor.CreateEditor(gameObject);

gameObjectEditor.OnInteractivePreviewGUI(GUILayoutUtility.GetRect(256, 256), bgColor); } } }