private void Reset() { MeshState neutralMeshState = new BasicMeshState(new Dictionary <int, float>()); for (int i = 0; i < meshStates.Length; i++) { cursorValues[i] = 0f; meshStates[i] = neutralMeshState; } foreach (Dropdown presetDropdown in dropdowns) { presetDropdown.value = 0; int dropdownIndex = (int)char.GetNumericValue(presetDropdown.gameObject.name[presetDropdown.gameObject.name.Length - 1]) - 1; UnityAction <int> partialSetMeshState = x => SetMeshState(dropdownIndex, x); presetDropdown.onValueChanged.AddListener(partialSetMeshState); } foreach (Slider slider in sliders) { slider.value = 0; int sliderIndex = (int)char.GetNumericValue(slider.gameObject.name[slider.gameObject.name.Length - 1]) - 1; UnityAction <float> partialSetCursor = x => SetCursor(sliderIndex, x); slider.onValueChanged.AddListener(partialSetCursor); } UpdateMeshState(); }
public void SetMeshState(int index, int presetIndex) { meshStates[index] = new BasicMeshState(controller.GetPresetProvider().GetPresetWeightSet(presetIndex)); UpdateMeshState(); }