Esempio n. 1
0
    public void SetLineRenderer()
    {
        lr = GetComponent <LineRenderer>();
        GradientColorKey[] keys = new GradientColorKey[8];
        int x = 0;

        for (int i = 0; i < lr.positionCount; i++)
        {
            lr.SetPosition(i, new Vector3(Mathf.Sin(((float)i / lr.positionCount) * Mathf.PI * 2), Mathf.Cos(((float)i / lr.positionCount) * Mathf.PI * 2)));
            if ((i) % (lr.positionCount / 7) == 0)
            {
                if (ryb)
                {
                    keys[x].color = ColorRYB.RYBtoRGB(ColorRYB.HSVtoRYB(new ColorHSV((float)i / lr.positionCount, 1, 1)));
                }
                else
                {
                    keys[x].color = Color.HSVToRGB((float)i / lr.positionCount, 1, 1);
                }
                keys[x].time = (float)i / lr.positionCount;
                x++;
            }
        }
        GradientAlphaKey[] alpha = new GradientAlphaKey[2];
        alpha[0].alpha = 1;
        alpha[0].time  = 0;
        alpha[1].time  = 1;
        alpha[1].alpha = 1;
        Gradient g = new Gradient();

        g.colorKeys      = keys;
        lr.colorGradient = g;
    }
Esempio n. 2
0
    protected Color Complementary(Color c, float v)
    {
        float h, s, val;

        Color.RGBToHSV(ColorRYB.Complementary(c), out h, out s, out val);
        return(Color.HSVToRGB(h, s, v));
    }
Esempio n. 3
0
    void SetColor(Color themeColor, Color backgroundColor, Color foregroundColor, Color accentColor)
    {
        Color col = complementary ? ColorRYB.Complementary(foregroundColor) : foregroundColor;

        foreach (MaskableGraphic g in baseBackground)
        {
            g.color = col;
        }
        col = complementary ? ColorRYB.Complementary(backgroundColor) : backgroundColor;
        foreach (MaskableGraphic g in background)
        {
            g.color = col;
        }
        col = complementary ? ColorRYB.Complementary(accentColor) : accentColor;
        foreach (MaskableGraphic g in foreground)
        {
            g.color = col;
        }
    }
Esempio n. 4
0
    public static Color RYBtoRGB(ColorRYB ryb)
    {
        float red = ryb.r, yellow = ryb.y, blue = ryb.b, green;

        float white = Mathf.Min(red, yellow, blue);

        red    -= white;
        yellow -= white;
        blue   -= white;

        float maxYellow = Mathf.Max(red, yellow, blue);

        green = Mathf.Min(yellow, blue);

        yellow -= green;
        blue   -= green;

        if (blue > 0 && green > 0)
        {
            blue  *= 2f;
            green *= 2f;
        }

        red   += yellow;
        green += yellow;

        float maxGreen = Mathf.Max(red, green, blue);

        if (maxGreen > 0)
        {
            float n = maxYellow / maxGreen;

            red   *= n;
            green *= n;
            blue  *= n;
        }

        red   += white;
        green += white;
        blue  += white;

        return(new Color(red, green, blue));
    }
Esempio n. 5
0
    protected Color Complementary(Color c, float v, float increment)
    {
        float h, s, val;

        Color.RGBToHSV(ColorRYB.Complementary(c), out h, out s, out val);
        if (h < .5)
        {
            increment = -increment;
        }
        if (h + increment > 1)
        {
            return(Color.HSVToRGB((h + increment) - 1, s, v));
        }
        else if (h + increment < 0)
        {
            return(Color.HSVToRGB(1 + (h + increment), s, v));
        }
        else
        {
            return(Color.HSVToRGB(h + increment, s, v));
        }
    }
    void SetColor(Color themeColor, Color backgroundColor, Color foregroundColor, Color accentColor)
    {
        Color col = complementary? ColorRYB.Complementary(foregroundColor) : foregroundColor;

        foreach (ParticleSystem p in baseBackground)
        {
            var main = p.main;
            main.startColor = col;
        }
        col = complementary? ColorRYB.Complementary(backgroundColor) : backgroundColor;
        foreach (ParticleSystem p in background)
        {
            var main = p.main;
            main.startColor = col;
        }
        col = complementary? ColorRYB.Complementary(accentColor) : accentColor;
        foreach (ParticleSystem p in foreground)
        {
            var main = p.main;
            main.startColor = col;
        }
    }
Esempio n. 7
0
    public static ColorHSV RYBtoHSV(ColorRYB ryb)
    {
        float h, s, v, red = ryb.r, yellow = ryb.y, blue = ryb.b;
        float max   = Mathf.Max(red, yellow, blue);
        float min   = Mathf.Min(red, yellow, blue);
        float delta = max - min;

        if (delta == 0)
        {
            h = 0;
        }
        else if (max == red)
        {
            h = 60 * (((yellow - blue) / delta) % 6);
        }
        else if (max == yellow)
        {
            h = 60 * (((blue - red) / delta) + 2);
        }
        else
        {
            h = 60 * (((red - yellow) / delta) + 4);
        }
        h = h / 360f;

        if (max == 0)
        {
            s = 0;
        }
        else
        {
            s = delta / max;
        }

        v = max;

        return(new ColorHSV(h, s, v));
    }
    void SetColor(Color themeColor, Color backgroundColor, Color foregroundColor, Color accentColor)
    {
        Color col = complementary ? ColorRYB.Complementary(foregroundColor) :foregroundColor;

        foreach (Material g in foreground)
        {
            g.color = col;
        }
        col = complementary ? ColorRYB.Complementary(backgroundColor) : backgroundColor;
        foreach (Material g in background)
        {
            g.color = col;
        }
        col = complementary ? ColorRYB.Complementary(accentColor) : accentColor;
        foreach (Material g in accent)
        {
            g.color = col;
        }
        col = complementary ? ColorRYB.Complementary(themeColor) : themeColor;
        foreach (Material g in theme)
        {
            g.color = col;
        }
    }
Esempio n. 9
0
 void SetColor(Color themeColor, Color backgroundColor, Color foregroundColor, Color accentColor)
 {
     image.color = ColorRYB.Complementary(accentColor);
 }