Esempio n. 1
0
        public void GenerateTextures()
        {
            rainbow    = TextureUtils.GenerateRainbowGradient(120, 20);
            colorField = TextureUtils.GenerateColorField(colorFieldSize, colorFieldSize,
                                                         currentRGBColor);

            if (sliderMode == 0)
            {
                slider1Texture = TextureUtils.GenerateGradientTexture(100, 20,
                                                                      new Color(0.0f, currentRGBColor.g, currentRGBColor.b, 1.0f),
                                                                      new Color(1.0f, currentRGBColor.g, currentRGBColor.b, 1.0f));
                slider2Texture = TextureUtils.GenerateGradientTexture(100, 20,
                                                                      new Color(currentRGBColor.r, 0f, currentRGBColor.b, 1.0f),
                                                                      new Color(currentRGBColor.r, 1f, currentRGBColor.b, 1.0f));
                slider3Texture = TextureUtils.GenerateGradientTexture(100, 20,
                                                                      new Color(currentRGBColor.r, currentRGBColor.g, 0f, 1.0f),
                                                                      new Color(currentRGBColor.r, currentRGBColor.g, 1f, 1.0f));
                slider4Texture = TextureUtils.GenerateGradientTexture(100, 20,
                                                                      Color.black,
                                                                      Color.white);
            }
            else
            {
                slider1Texture = TextureUtils.GenerateRainbowGradient(120, 20);
                slider2Texture = TextureUtils.GenerateGradientTexture(100, 20,
                                                                      new ColorHSV(currentHSVColor.h, 0f, currentHSVColor.v).ToRGB(),
                                                                      new ColorHSV(currentHSVColor.h, 1f, currentHSVColor.v).ToRGB());
                slider3Texture = TextureUtils.GenerateGradientTexture(100, 20,
                                                                      new ColorHSV(currentHSVColor.h, currentHSVColor.s, 0f).ToRGB(),
                                                                      new ColorHSV(currentHSVColor.h, currentHSVColor.s, 1f).ToRGB());
                slider4Texture = TextureUtils.GenerateGradientTexture(100, 20,
                                                                      Color.black,
                                                                      Color.white);
            }

            swatch = TextureUtils.GenerateColorTexture(40, 20,
                                                       currentRGBColor);


            barCarat = TextureUtils.GenerateSliderCarat(5, 20,
                                                        new Color(1f, 1f, 1f, 0.75f),
                                                        Color.black);

            fieldCarat = TextureUtils.GenerateRoundCarat(20, 20, Color.white, Color.black);
        }
Esempio n. 2
0
        public void Update()
        {
            if (!currentHSVColor.Equals(prevHSVColor))
            {
                Debug.Log($"hsv change to {currentHSVColor} ,{currentHSVColor.ToRGB()}");
                colorField      = TextureUtils.GenerateColorField(colorFieldSize, colorFieldSize, currentHSVColor);
                prevHSVColor    = currentHSVColor;
                currentRGBColor = currentHSVColor.ToRGB();
            }

            if (!currentRGBColor.Equals(prevRGBColor))
            {
                GenerateTextures();
                currentHSVColor = new ColorHSV(currentRGBColor);

                //  currentHSVColor = new HSBColor(currentRGBColor);
                //  hueValue = currentHSVColor.h;
                //  colorField = MaterialUtils.GenerateColorField(colorFieldSize, colorFieldSize, currentHSVColor.ToColor());
                prevRGBColor = currentRGBColor;
                hueValue     = currentHSVColor.h;
            }
        }