Я создал игровой объект и добавил к нему сценарий SpriteStuff
, который я создал с различными свойствами и функциями для игрового объекта.Я также сделал несколько копий объекта.После этого я создал GroupSpriteStuff
игровой объект со следующим свойством
public List<SpriteStuff> spriteStuffs;
. Я добавил скрипт-редактор для GroupSpriteStuff
(GroupSpriteStuffEditor
), который перебирает spriteStuffs
для перемещения каждого объекта с помощьюслайдер.Движение объектов в spriteStuffs
видно только тогда, когда я выбираю объекты после перемещения ползунка, если я не выбираю объекты после перемещения ползунка, изменения не видны на виде сцены.Ниже GroupSpriteStuffEditor
:
GroupSpriteStuff groupSpriteStuff;
float groupSpritesMvmtSliderValue = 0.0f;
void OnEnable()
{
groupSpriteStuff = (GroupSpriteStuff)target;
}
public override void OnInspectorGUI()
{
base.OnInspectorGUI();
EditorGUI.BeginChangeCheck();
groupSpritesMvmtSliderValue = EditorGUILayout.Slider("Group Movement", groupSpriteStuff.originalGroupSpritesMvmtSliderValue, 0.0f, 1.0f);
if (!Mathf.Approximately(groupSpriteStuff.originalGroupSpritesMvmtSliderValue, groupSpritesMvmtSliderValue))
{
for (int i = 0; i < groupSpriteStuff.spriteStuffs.Count; i++)
{
spriteStuffs[i].UseTestMovement(0.2f);
}
groupSpriteStuff.originalGroupSpritesMvmtSliderValue = groupSpritesMvmtSliderValue;
}
if (EditorGUI.EndChangeCheck())
{
SceneView.RepaintAll();
}
}
Как получить вид сцены для обновления / распознавания изменений в движении, которые я делаю с помощью ползунка?