public EffectScaleIntegrator(WaterfallEffect effect, EffectScaleModifier mod) { Utils.Log(String.Format("[EffectScaleIntegrator]: Initializing integrator for {0} on modifier {1}", effect.name, mod.fxName), LogType.Modifiers); xforms = new(); transformName = mod.transformName; parentEffect = effect; var roots = parentEffect.GetModelTransforms(); foreach (var t in roots) { var t1 = t.FindDeepChild(transformName); if (t1 == null) { Utils.LogError(String.Format("[EffectScaleIntegrator]: Unable to find transform {0} on modifier {1}", transformName, mod.fxName)); } else { xforms.Add(t1); } } handledModifiers = new(); handledModifiers.Add(mod); initialVectorValues = new(); for (int i = 0; i < xforms.Count; i++) { initialVectorValues.Add(xforms[i].localScale); } }
public EffectPositionIntegrator(WaterfallEffect effect, EffectPositionModifier posMod) { Utils.Log(String.Format("[EffectPositionIntegrator]: Initializing integrator for {0} on modifier {1}", effect.name, posMod.fxName), LogType.Modifiers); xforms = new List <Transform>(); transformName = posMod.transformName; parentEffect = effect; List <Transform> roots = parentEffect.GetModelTransforms(); foreach (Transform t in roots) { Transform t1 = t.FindDeepChild(transformName); if (t1 == null) { Utils.LogError(String.Format("[EffectPositionIntegrator]: Unable to find transform {0} on modifier {1}", transformName, posMod.fxName)); } else { xforms.Add(t1); } } handledModifiers = new List <EffectPositionModifier>(); handledModifiers.Add(posMod); initialVectorValues = new List <Vector3>(); for (int i = 0; i < xforms.Count; i++) { initialVectorValues.Add(xforms[i].localPosition); } }
public EffectLightFloatIntegrator(WaterfallEffect effect, EffectLightFloatModifier floatMod) { Utils.Log(String.Format("[EffectLightFloatIntegrator]: Initializing integrator for {0} on modifier {1}", effect.name, floatMod.fxName), LogType.Modifiers); xforms = new List <Transform>(); transformName = floatMod.transformName; parentEffect = effect; List <Transform> roots = parentEffect.GetModelTransforms(); foreach (Transform t in roots) { Transform t1 = t.FindDeepChild(transformName); if (t1 == null) { Utils.LogError(String.Format("[EffectLightFloatIntegrator]: Unable to find transform {0} on modifier {1}", transformName, floatMod.fxName)); } else { xforms.Add(t1); } } // float specific floatName = floatMod.floatName; handledModifiers = new List <EffectLightFloatModifier>(); handledModifiers.Add(floatMod); foreach (string nm in WaterfallConstants.ShaderPropertyHideFloatNames) { if (floatName == "Intensity") { testIntensity = true; } } initialFloatValues = new List <float>(); l = new Light[xforms.Count]; for (int i = 0; i < xforms.Count; i++) { l[i] = xforms[i].GetComponent <Light>(); if (floatName == "Intensity") { initialFloatValues.Add(l[i].intensity); } if (floatName == "Range") { initialFloatValues.Add(l[i].range); } if (floatName == "SpotAngle") { initialFloatValues.Add(l[i].spotAngle); } } }
public EffectFloatIntegrator(WaterfallEffect effect, EffectFloatModifier floatMod) { Utils.Log(String.Format("[EffectFloatIntegrator]: Initializing integrator for {0} on modifier {1}", effect.name, floatMod.fxName), LogType.Modifiers); xforms = new(); transformName = floatMod.transformName; parentEffect = effect; var roots = parentEffect.GetModelTransforms(); foreach (var t in roots) { var t1 = t.FindDeepChild(transformName); if (t1 == null) { Utils.LogError(String.Format("[EffectFloatIntegrator]: Unable to find transform {0} on modifier {1}", transformName, floatMod.fxName)); } else { xforms.Add(t1); } } // float specific floatName = floatMod.floatName; handledModifiers = new(); handledModifiers.Add(floatMod); foreach (string nm in WaterfallConstants.ShaderPropertyHideFloatNames) { if (floatName == nm) { testIntensity = true; } } initialFloatValues = new(); m = new Material[xforms.Count]; r = new Renderer[xforms.Count]; for (int i = 0; i < xforms.Count; i++) { r[i] = xforms[i].GetComponent <Renderer>(); m[i] = r[i].material; initialFloatValues.Add(m[i].GetFloat(floatName)); } }
/// <summary> /// Initialize the effect /// </summary> public virtual void Init(WaterfallEffect effect) { parentEffect = effect; Utils.Log(String.Format("[EffectModifier]: Initializing modifier {0} ", fxName), LogType.Modifiers); List <Transform> roots = parentEffect.GetModelTransforms(); foreach (Transform t in roots) { Transform t1 = t.FindDeepChild(transformName); if (t1 == null) { Utils.LogError(String.Format("[EffectModifier]: Unable to find transform {0} on modifier {1}", transformName, fxName)); } else { xforms.Add(t1); } } }
public EffectLightColorIntegrator(WaterfallEffect effect, EffectLightColorModifier floatMod) { Utils.Log(String.Format("[EffectLightColorIntegrator]: Initializing integrator for {0} on modifier {1}", effect.name, floatMod.fxName), LogType.Modifiers); xforms = new List <Transform>(); transformName = floatMod.transformName; parentEffect = effect; List <Transform> roots = parentEffect.GetModelTransforms(); foreach (Transform t in roots) { Transform t1 = t.FindDeepChild(transformName); if (t1 == null) { Utils.LogError(String.Format("[EffectLightColorIntegrator]: Unable to find transform {0} on modifier {1}", transformName, floatMod.fxName)); } else { xforms.Add(t1); } } // float specific colorName = floatMod.colorName; handledModifiers = new List <EffectLightColorModifier>(); handledModifiers.Add(floatMod); initialColorValues = new List <Color>(); l = new Light[xforms.Count]; for (int i = 0; i < xforms.Count; i++) { l[i] = xforms[i].GetComponent <Light>(); initialColorValues.Add(l[i].color); } }
public EffectColorIntegrator(WaterfallEffect effect, EffectColorModifier colorMod) { Utils.Log(String.Format("[EffectColorIntegrator]: Initializing integrator for {0} on modifier {1}", effect.name, colorMod.fxName), LogType.Modifiers); xforms = new(); transformName = colorMod.transformName; parentEffect = effect; var roots = parentEffect.GetModelTransforms(); foreach (var t in roots) { var t1 = t.FindDeepChild(transformName); if (t1 == null) { Utils.LogError(String.Format("[EffectColorIntegrator]: Unable to find transform {0} on modifier {1}", transformName, colorMod.fxName)); } else { xforms.Add(t1); } } // float specific colorName = colorMod.colorName; handledModifiers = new(); handledModifiers.Add(colorMod); initialColorValues = new(); m = new Material[xforms.Count]; for (int i = 0; i < xforms.Count; i++) { m[i] = xforms[i].GetComponent <Renderer>().material; initialColorValues.Add(m[i].GetColor(colorName)); } }