Изменения ScriptableObject в Awake() не отображаются в Инспекторе до перезапуска Unity.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Изменения ScriptableObject в Awake() не отображаются в Инспекторе до перезапуска Unity.

Сообщение Anonymous »

Я создал класс ScriptableObject MySO, который модифицируется в функции Awake(). Я также добавил EditorUtility.SetDirty(this); в качестве последней команды. Класс имеет поле List myList. Во время функции Awake я добавляю в этот список пару экземпляров.
При создании нового экземпляра MySO через AssetMenu сначала кажется, что правильно отобразить список в Инспекторе, но список опустеет, как только я щелкну где-нибудь или нажму Enter. Изменения проявляются только после перезапуска Unity.
Все необходимое является либо общедоступным, либо [сериализуемым].

Код: Выделить всё

[CreateAssetMenu(fileName = "NewMySO", menuName = "MySO")]
[System.Serializable]
public class MySO : ScriptableObject
{
public List someOtherClassList;
private void Awake()
{
//-------------------------
//add instances to someOtherClassList
//--------------
EditorUtility.SetDirty(this);
//AssetDatabase.SaveAssets(); //Didn't help
//AssetDatabase.Refresh(); // Didn't help
}

}
Я пробовал добавить AssetDatabase.SaveAssets() и AssetDatabase.Refresh() после SetDirty(this). Ни один из них не работает, а первый приводит к ошибкам из-за ограничений при импорте ресурсов..
Будем благодарны за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/787 ... fter-unity
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Изменения ScriptableObject в Awake() не отображаются в Инспекторе до перезапуска Unity.
    Anonymous » » в форуме C#
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Unity3d не вызывает start() или awake(), когда скрипты автоматически перекомпилируются при внешнем редактировании.
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Свойства скрипта не отображаются в инспекторе
    Anonymous » » в форуме C#
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Как создать объект дерева графика с различными действиями без наследования (например, простой ScriptableObject)?
    Anonymous » » в форуме C#
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Поле единства, содержащее ScriptableObject, не сериализация
    Anonymous » » в форуме C#
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»