objectToUndo | 已创建的对象。 |
name | 要撤销的操作的名称。例如主菜单中的“Undo ....”。 |
针对新创建的对象注册撤销操作。
执行撤销操作后,对象会被销毁。应该使用这一函数来注册处于可撤销状态的所有新创建的对象。
注意:对象销毁的方式与 Object.Destroy 相同(延迟除外)。这意味着,游戏对象将和它们的所有子游戏对象一起被销毁。
// Creates a new game object as an operation that can be undone
using UnityEditor; using UnityEngine;
class CreateGameObjectMenu { [MenuItem("Example/Create GameObject")] static void CreateGameObject() { // Create GameObject hierarchy. GameObject go = new GameObject("my GameObject"); GameObject child = new GameObject(); go.transform.position = new Vector3(5, 5, 5); child.transform.parent = go.transform;
// Register root object for undo. Undo.RegisterCreatedObjectUndo(go, "Create object"); } }