Exemplo n.º 1
0
        /// <summary>
        /// Sets the material values.
        /// </summary>
        /// <returns>The material values.</returns>
        /// <param name="info">Values to set.</param>
        /// <param name="baseMaterial">Base material.</param>
        public static Material SetMaterialValues(ProceduralImageMaterialInfo info, Material baseMaterial)
        {
            if (baseMaterial == null)
            {
                throw new System.ArgumentNullException("baseMaterial");
            }
            //if (baseMaterial.shader.name != "UI/Procedural UI Image") {
            //	Debug.LogWarning("Parameter 'baseMaterial' does not use shader 'UI/Procedural UI Image'. Method returns baseMaterial.");
            //	return baseMaterial;
            //}
            Material m;

            m = baseMaterial;
            if (info.blur)
            {
                m.EnableKeyword("BLUR_ON");
            }
            else
            {
                m.DisableKeyword("BLUR_ON");
            }
            m.SetFloat("_Width", info.width);
            m.SetColor("_BlurBackgroundColor", info.backgroundColor);
            m.SetFloat("_Height", info.height);
            m.SetFloat("_PixelWorldScale", info.pixelWorldScale);
            m.SetVector("_Radius", info.radius);
            m.SetFloat("_LineWeight", info.borderWidth);
            return(m);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Sets the material values.
        /// </summary>
        /// <returns>The material values.</returns>
        /// <param name="info">Values to set.</param>
        /// <param name="baseMaterial">Base material.</param>
        public static Material SetMaterialValues(ProceduralImageMaterialInfo info, Material baseMaterial)
        {
            if (baseMaterial == null)
            {
                throw new System.ArgumentNullException("baseMaterial");
            }
            if (baseMaterial.shader.name != "UI/Procedural UI Image")
            {
                Debug.LogWarning("Parameter 'baseMaterial' does not use shader 'UI/Procedural UI Image'. Method returns baseMaterial.");
                return(baseMaterial);
            }
            Material m;

            m = baseMaterial;
            m.SetFloat("_Width", info.width);
            m.SetFloat("_Height", info.height);
            m.SetFloat("_PixelWorldScale", info.pixelWorldScale);
            m.SetVector("_Radius", info.radius);
            m.SetFloat("_LineWeight", info.borderWidth);
            return(m);
        }