Exemple #1
0
        /// <summary>
        /// Sets a shader float on this material. If it doesn't exist as a material property object, create it.
        /// </summary>
        /// <param name="propertyName"></param>
        /// <param name="value"></param>
        public void SetFloat(string propertyName, float value)
        {
            bool existsSavedProperty = false;

            foreach (WaterfallMaterialProperty p in matProperties)
            {
                if (p.propertyName == propertyName)
                {
                    existsSavedProperty = true;
                }
            }
            if (!existsSavedProperty)
            {
                WaterfallMaterialFloatProperty newProp = new WaterfallMaterialFloatProperty();
                newProp.propertyName  = propertyName;
                newProp.propertyValue = value;
                matProperties.Add(newProp);
            }
            else
            {
                foreach (WaterfallMaterialProperty p in matProperties)
                {
                    if (p.propertyName == propertyName)
                    {
                        WaterfallMaterialFloatProperty t = (WaterfallMaterialFloatProperty)p;
                        t.propertyValue = value;
                    }
                }
            }
            foreach (Material mat in materials)
            {
                mat.SetFloat(propertyName, value);
            }
        }
        /// <summary>
        ///   Sets a shader float on this material. If it doesn't exist as a material property object, create it.
        /// </summary>
        /// <param name="propertyName"></param>
        /// <param name="value"></param>
        public void SetFloat(string propertyName, float value)
        {
            bool existsSavedProperty = false;

            foreach (var p in matProperties)
            {
                if (p.propertyName == propertyName)
                {
                    existsSavedProperty = true;
                }
            }

            if (!existsSavedProperty)
            {
                var newProp = new WaterfallMaterialFloatProperty();
                newProp.propertyName  = propertyName;
                newProp.propertyValue = value;
                matProperties.Add(newProp);
            }
            else
            {
                foreach (var p in matProperties)
                {
                    if (p.propertyName == propertyName)
                    {
                        var t = (WaterfallMaterialFloatProperty)p;
                        t.propertyValue = value;
                    }
                }
            }

            foreach (var mat in materials)
            {
                if (propertyName == "_Seed" && useAutoRandomization)
                {
                }
                else
                {
                    mat.SetFloat(propertyName, value);
                }
            }
        }