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

Undo.RegisterCompleteObjectUndo

Declaration

public static void RegisterCompleteObjectUndo(Object objectToUndo, string name);

Параметры

Параметр Описание
objectToUndo Объект, изменения состояния которого нужно отменить.
имя Имя операции отмены.

Описание

Хранит копию состояний объекта в стеке отмены.

Если выполнить отмену, любые изменения, сделанные в объекте после вызова этой функции, будут отменены, и объект будет восстановлен в записанное состояние.

Transform родительское изменение, AddComponent, и уничтожение объекта не может быть восстановлено с помощью этой функции, для этого следует использовать выделенные функции. См. Undo.SetTransformParent, Undo.AddComponent, Undo.DestroyObjectImmediate.

Если объект является частью текущего Scene (e.g. GameObject в Hierarchy или компонент, прикрепленный к такому игровому объекту), вызов этой функции немедленно пометит Scene как измененный, даже если вы фактически не измените состояния объекта после этого.

using UnityEngine;
using UnityEditor;

public class UndoExamples { [MenuItem("Undo Examples/RegisterCompleteObjectUndo")] static void Example() { GameObject player = new GameObject("Player");

// Store the states of the player object. Undo.RegisterCompleteObjectUndo(player, "Player name change");

player.name = "New Player";

// If you choose "Edit->Undo Player name change" from the main menu now, the name of the object will be restored to "Player". } }

Declaration

public static void RegisterCompleteObjectUndo(Object[] objectsToUndo, string name);

Параметры

Параметр Описание
objectsToUndo Массив объектов, изменения состояния которых нужно отменить.
имя Имя операции отмены.

Описание

Это эквивалентно многократному вызову первой перегрузки, за исключением того, что для этой операции будет создана только одна операция отмены.