Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

Undo

class in UnityEditor

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство

Описание

Lets you register undo operations on specific objects you are about to perform changes on.

The Undo system stores delta changes in the undo stack.

Undo operations are automatically combined together based on events, e.g. mouse down events will split undo groups. Grouped undo operations will appear and work as a single undo. To control grouping manually use Undo.IncrementCurrentGroup.

By default, the name shown in the UI will be selected from the actions belonging to the group using a hardcoded ordering of the different kinds of actions. To manually set the name, use Undo.SetCurrentGroupName.

Undo operations store either per property or per object state. This way they scale well with any scene size.

The most important operations are outlined below.

Modifying a single property:

Undo.RecordObject (myGameObject.transform, "Zero Transform Position");
myGameObject.transform.position = Vector3.zero;

Adding a component :

Undo.AddComponent<RigidBody> (myGameObject);

Creating a new game object:

var go = new GameObject ();
Undo.RegisterCreatedObjectUndo (go, "Created go");

Destroying a game object or component:

Undo.DestroyObjectImmediate (myGameObject);

Changing transform parenting:

Undo.SetTransformParent (myGameObject.transform, newTransformParent);

Статические переменные

undoRedoPerformedCallback that is triggered after an undo or redo was executed.
willFlushUndoRecordInvoked before the Undo system performs a flush.

Статические функции

AddComponentAdds a component to the game object and registers an undo operation for this action.
ClearUndoRemoves all Undo operations for the identifier object registered using Undo.RegisterCompleteObjectUndo from the undo stack.
CollapseUndoOperationsCollapses all undo operation up to group index together into one step.
DestroyObjectImmediateDestroys the object and records an undo operation so that it can be recreated.
FlushUndoRecordObjectsEnsure objects recorded using RecordObject or RecordObjects are registered as an undoable action.
GetCurrentGroupUnity automatically groups undo operations by the current group index.
GetCurrentGroupNameGet the name that will be shown in the UI for the current undo group.
IncrementCurrentGroupUnity automatically groups undo operations by the current group index.
MoveGameObjectToSceneMove a GameObject from its current scene to a new scene. It is required that the GameObject is at the root of its current scene.
PerformRedoPerform an Redo operation.
PerformUndoPerform an Undo operation.
RecordObjectRecords any changes done on the object after the RecordObject function.
RecordObjectsRecords multiple undoable objects in a single call. This is the same as calling RecordObject multiple times.
RegisterCompleteObjectUndoStores a copy of the object states on the undo stack.
RegisterCreatedObjectUndoRegister an undo operations for a newly created object.
RegisterFullObjectHierarchyUndoCopy the states of a hierarchy of objects onto the undo stack.
RevertAllDownToGroupPerforms all undo operations up to the group index.
RevertAllInCurrentGroupPerforms the last undo operation but does not record a redo operation.
SetCurrentGroupNameSet the name of the current undo group.
SetTransformParentSets the parent of transform to the new parent and records an undo operation.

Делегаты

UndoRedoCallbackDelegate used for undoRedoPerformed.
WillFlushUndoRecordDelegate used for willFlushUndoRecord.