UnityEditor.ColorPicker.GetGradientTextureWithAlpha0To1 C# (CSharp) Method

GetGradientTextureWithAlpha0To1() public static method

public static GetGradientTextureWithAlpha0To1 ( ) : Texture2D
return UnityEngine.Texture2D
        public static Texture2D GetGradientTextureWithAlpha0To1()
        {
            if (s_RightGradientTexture == null)
            {
            }
            return (s_RightGradientTexture = CreateGradientTexture("ColorPicker_0To1_Gradient", 4, 4, new Color(1f, 1f, 1f, 0f), new Color(1f, 1f, 1f, 1f)));
        }

Usage Example

示例#1
0
        internal static void DrawColorSwatch(Rect position, Color color, bool showAlpha, bool hdr)
        {
            if (Event.current.type != EventType.Repaint)
            {
                return;
            }
            Color color2 = GUI.color;
            float a      = (float)((!GUI.enabled) ? 2 : 1);

            GUI.color = ((!EditorGUI.showMixedValue) ? new Color(color.r, color.g, color.b, a) : (new Color(0.82f, 0.82f, 0.82f, a) * color2));
            GUIStyle whiteTextureStyle = EditorGUIUtility.whiteTextureStyle;

            whiteTextureStyle.Draw(position, false, false, false, false);
            float maxColorComponent = GUI.color.maxColorComponent;

            if (hdr && maxColorComponent > 1f)
            {
                float num       = position.width / 3f;
                Rect  position2 = new Rect(position.x, position.y, num, position.height);
                Rect  position3 = new Rect(position.xMax - num, position.y, num, position.height);
                Color color3    = GUI.color.RGBMultiplied(1f / maxColorComponent);
                Color color4    = GUI.color;
                GUI.color = color3;
                GUIStyle basicTextureStyle = EditorGUIUtility.GetBasicTextureStyle(EditorGUIUtility.whiteTexture);
                basicTextureStyle.Draw(position2, false, false, false, false);
                basicTextureStyle.Draw(position3, false, false, false, false);
                GUI.color         = color4;
                basicTextureStyle = EditorGUIUtility.GetBasicTextureStyle(ColorPicker.GetGradientTextureWithAlpha0To1());
                basicTextureStyle.Draw(position2, false, false, false, false);
                basicTextureStyle = EditorGUIUtility.GetBasicTextureStyle(ColorPicker.GetGradientTextureWithAlpha1To0());
                basicTextureStyle.Draw(position3, false, false, false, false);
            }
            if (!EditorGUI.showMixedValue)
            {
                if (showAlpha)
                {
                    GUI.color = new Color(0f, 0f, 0f, a);
                    float num2      = Mathf.Clamp(position.height * 0.2f, 2f, 20f);
                    Rect  position4 = new Rect(position.x, position.yMax - num2, position.width, num2);
                    whiteTextureStyle.Draw(position4, false, false, false, false);
                    GUI.color        = new Color(1f, 1f, 1f, a);
                    position4.width *= Mathf.Clamp01(color.a);
                    whiteTextureStyle.Draw(position4, false, false, false, false);
                }
            }
            else
            {
                EditorGUI.BeginHandleMixedValueContentColor();
                whiteTextureStyle.Draw(position, EditorGUI.mixedValueContent, false, false, false, false);
                EditorGUI.EndHandleMixedValueContentColor();
            }
            GUI.color = color2;
            if (hdr && maxColorComponent > 1f)
            {
                GUI.Label(new Rect(position.x, position.y, position.width - 3f, position.height), "HDR", EditorStyles.centeredGreyMiniLabel);
            }
        }
All Usage Examples Of UnityEditor.ColorPicker::GetGradientTextureWithAlpha0To1