public UIColorFromLightModifierWindow(EffectColorFromLightModifier mod, bool show) : base((EffectModifier)mod, show)
        {
            colorMod   = mod;
            colorNames = MaterialUtils.FindValidShaderProperties(colorMod.GetMaterial(), WaterfallMaterialPropertyType.Color).ToArray();
            colorIndex = colorNames.ToList().FindIndex(x => x == colorMod.colorName);

            lightNames = colorMod.parentEffect.parentModule.GetComponentsInChildren <Light>().Select(x => x.transform.name).ToArray();
            lightIndex = lightNames.ToList().FindIndex(x => x == colorMod.lightTransformName);
        }
Ejemplo n.º 2
0
        public void OpenModifierEditWindow(EffectModifier fxMod)
        {
            foreach (UIModifierWindow editWin in editWindows.ToList())
            {
                editWindows.Remove(editWin);
            }
            try
            {
                EffectColorModifier colMod = (EffectColorModifier)fxMod;
                if (colMod != null)
                {
                    editWindows.Add(new UIColorModifierWindow(colMod, true));
                }
            }
            catch (InvalidCastException e) { }
            try
            {
                EffectScaleModifier scaleMod = (EffectScaleModifier)fxMod;
                if (scaleMod != null)
                {
                    editWindows.Add(new UIScaleModifierWindow(scaleMod, true));
                }
            }
            catch (InvalidCastException e) { }
            try
            {
                EffectUVScrollModifier scrollMod = (EffectUVScrollModifier)fxMod;
                if (scrollMod != null)
                {
                    editWindows.Add(new UIUVScrollModifierWindow(scrollMod, true));
                }
            }
            catch (InvalidCastException e) { }
            try
            {
                EffectFloatModifier floatMod = (EffectFloatModifier)fxMod;
                if (floatMod != null)
                {
                    editWindows.Add(new UIFloatModifierWindow(floatMod, true));
                }
            }
            catch (InvalidCastException e) { }
            try
            {
                EffectPositionModifier posMod = (EffectPositionModifier)fxMod;
                if (posMod != null)
                {
                    editWindows.Add(new UIPositionModifierWindow(posMod, true));
                }
            }
            catch (InvalidCastException e) { }
            try
            {
                EffectRotationModifier rotMod = (EffectRotationModifier)fxMod;
                if (rotMod != null)
                {
                    editWindows.Add(new UIRotationModifierWindow(rotMod, true));
                }
            }
            catch (InvalidCastException e) { }

            try
            {
                EffectColorFromLightModifier colMod = (EffectColorFromLightModifier)fxMod;
                if (colMod != null)
                {
                    editWindows.Add(new UIColorFromLightModifierWindow(colMod, true));
                }
            }
            catch (InvalidCastException e) { }

            try
            {
                EffectLightFloatModifier colMod = (EffectLightFloatModifier)fxMod;
                if (colMod != null)
                {
                    editWindows.Add(new UILightFloatModifierWindow(colMod, true));
                }
            }
            catch (InvalidCastException e) { }
            try
            {
                EffectLightColorModifier colMod = (EffectLightColorModifier)fxMod;
                if (colMod != null)
                {
                    editWindows.Add(new UILightColorModifierWindow(colMod, true));
                }
            }
            catch (InvalidCastException e) { }
        }