diff --git a/Packages/com.unity.cloud.gltfast/Editor/Scripts/MaterialsVariantsComponentInspector.cs b/Packages/com.unity.cloud.gltfast/Editor/Scripts/MaterialsVariantsComponentInspector.cs index dbf02239c..33c7d8cc2 100644 --- a/Packages/com.unity.cloud.gltfast/Editor/Scripts/MaterialsVariantsComponentInspector.cs +++ b/Packages/com.unity.cloud.gltfast/Editor/Scripts/MaterialsVariantsComponentInspector.cs @@ -18,9 +18,9 @@ class MaterialsVariantsComponentInspector : UnityEditor.Editor public override VisualElement CreateInspectorGUI() { + var control = (target as MaterialsVariantsComponent)?.Control; if (m_VariantNames == null) { - var control = (target as MaterialsVariantsComponent)?.Control; if (control != null) { var count = control.MaterialsVariantsCount; @@ -45,7 +45,7 @@ public override VisualElement CreateInspectorGUI() else { m_Dropdown.choices = m_VariantNames; - m_Dropdown.index = 0; + m_Dropdown.index = control != null ? control.CurrentVariantIndex + 1: 0; m_Dropdown.RegisterValueChangedCallback(OnMaterialsVariantChanged); myInspector.Add(m_Dropdown); } diff --git a/Packages/com.unity.cloud.gltfast/Runtime/Scripts/MaterialsVariants/MaterialsVariantsControl.cs b/Packages/com.unity.cloud.gltfast/Runtime/Scripts/MaterialsVariants/MaterialsVariantsControl.cs index 49c0f8563..cd88b2681 100644 --- a/Packages/com.unity.cloud.gltfast/Runtime/Scripts/MaterialsVariants/MaterialsVariantsControl.cs +++ b/Packages/com.unity.cloud.gltfast/Runtime/Scripts/MaterialsVariants/MaterialsVariantsControl.cs @@ -18,7 +18,7 @@ public class MaterialsVariantsControl : IMaterialsVariantsProvider IMaterialProvider m_MaterialProvider; IReadOnlyCollection m_Slots; - int m_CurrentVariantIndex; + public int CurrentVariantIndex { get; private set; } = -1; internal MaterialsVariantsControl(IMaterialProvider materialProvider, IReadOnlyCollection slots) { @@ -42,7 +42,7 @@ public async Task ApplyMaterialsVariantAsync(int variantIndex, CancellationToken } await Task.WhenAll(tasks); - m_CurrentVariantIndex = variantIndex; + CurrentVariantIndex = variantIndex; } ///