private void ShowGlobalGradientAxisSettings() { gradientAxisType = (GradientAxis)EditorGUILayout.Popup(Labels.GlobalGradientAxis, (int)gradientAxisType, Labels.GradientAxisEnumLabels); if (gradientAxisType == GradientAxis.X) { isGradientAxisTypeFree = false; gradientUnitAxis.vectorValue = gradientAxisX; } else if (gradientAxisType == GradientAxis.Y) { isGradientAxisTypeFree = false; gradientUnitAxis.vectorValue = gradientAxisY; } else if (gradientAxisType == GradientAxis.Z) { isGradientAxisTypeFree = false; gradientUnitAxis.vectorValue = gradientAxisZ; } else { isGradientAxisTypeFree = true; EditorGUI.BeginChangeCheck(); gradientAxis = gradientUnitAxis.vectorValue; gradientAxis.x = EditorGUILayout.Slider(Labels.GradientAxisX, gradientAxis.x, -1.0f, 1.0f); gradientAxis.y = EditorGUILayout.Slider(Labels.GradientAxisY, gradientAxis.y, -1.0f, 1.0f); gradientAxis.z = EditorGUILayout.Slider(Labels.GradientAxisZ, gradientAxis.z, -1.0f, 1.0f); if (EditorGUI.EndChangeCheck()) { gradientUnitAxis.vectorValue = gradientAxis; } } }
private void InitGlobalGradientAxisType() { Vector4 currentAxis = gradientUnitAxis.vectorValue; if (currentAxis == gradientAxisX && !isGradientAxisTypeFree) { gradientAxisType = GradientAxis.X; } else if (currentAxis == gradientAxisY && !isGradientAxisTypeFree) { gradientAxisType = GradientAxis.Y; } else if (currentAxis == gradientAxisZ && !isGradientAxisTypeFree) { gradientAxisType = GradientAxis.Z; } else { gradientAxisType = GradientAxis.Free; } }