Параметры
target | Объект, который следует пометить как грязный. |
Описание
Помечает объект целевой
как грязный.
Вы можете использовать SetDirty, если хотите изменить объект, не создавая запись отмены, но при этом убедиться, что изменение зарегистрировано и не потеряно. Если объект является частью сцены, сцена помечается как грязная. Если объект может быть частью экземпляра Prefab, вам дополнительно необходимо вызвать PrefabUtility.RecordPrefabInstancePropertyModifications, чтобы гарантировать создание переопределения Prefab.
Если вы хотите поддерживать отмену, вам не следует вызывать SetDirty, а следует использовать Undo.RecordObject. перед внесением изменений в объект, так как это пометит объект как грязный (или сцену объекта, если он является частью сцены) и предоставит запись отмены в редакторе. Вы также должны вызывать PrefabUtility.RecordPrefabInstancePropertyModifications, если объект может быть частью экземпляра Prefab.
При создании пользовательского интерфейса редактора для управления объектом, например пользовательского редактора для изменения сериализованных свойств компонента или актива, по возможности следует использовать систему SerializedProperty с помощью SerializedObject.FindProperty, SerializedObject.Update, EditorGUILayout.PropertyField и SerializedObject.ApplyModifiedProperties. Это автоматически пометит объект как грязный, создаст запись отмены и обеспечит создание переопределений Prefab, если это уместно.
Смотрите так же: GetDirtyCount, IsDirty.