Возникла проблема с назначением ObjectRefernceValue для SerializedProperty. Ошибок никаких не пишет. Если трассировать код, то видно, что sp.objectReferenceValue не назначается (равен null), при этом вылезают ошибки (причем без трассировки все норм якобы). Shape наследуется от ScriptableObject. Работаю со списком List<Shape>, в который пытаюсь запихнуть созданный Shape. Вот листинг:
Синтаксис:
Используется csharp
SerializedProperty preset = serializedObject.FindProperty("shapePreset");
if (GUILayout.Button("Add new shape", GUILayout.Height(30)))
{
Shape shape = CreateInstance<Shape>();
preset.arraySize++;
SerializedProperty sp = preset.GetArrayElementAtIndex(preset.arraySize - 1);
sp.objectReferenceValue = shape;
}
if (GUILayout.Button("Add new shape", GUILayout.Height(30)))
{
Shape shape = CreateInstance<Shape>();
preset.arraySize++;
SerializedProperty sp = preset.GetArrayElementAtIndex(preset.arraySize - 1);
sp.objectReferenceValue = shape;
}
Вот такие ошибки вылезают при трассировке:
Скрытый текст:
ЧЯДНТ?