/// <summary> /// Removes an effect from the post-processing effect chain. /// </summary> /// <param name="effect">Effect which is to be removed.</param> public void RemoveEffect(PostProcessEffect effect) { if (!mEffects.Remove(effect)) { throw new Exception("PostProcessEffectChain.RemoveEffect(): effect not found."); } }
/// <summary> /// Adds an effect to the end of the post-processing effect chain. /// </summary> /// <param name="effect">Effect which is to be added.</param> public void AddEffect(PostProcessEffect effect) { if (effect == null) { throw new Exception("PostProcessEffectChain.AddEffect(): null effect."); } mEffects.Add(effect); }
/// <summary> /// Inserts an effect into the post-processing effect chain. /// </summary> /// <param name="effect">Effect which is to be inserted.</param> /// <param name="pos">Position into which the effect is to be inserted.</param> public void InsertEffect(PostProcessEffect effect, int pos) { if (effect == null) { throw new Exception("PostProcessEffectChain.InsertEffect(): null effect"); } if (pos < 0 || pos >= mEffects.Count) { throw new Exception("PostProcessEffectChain.InsertEffect(): invalid index"); } mEffects.Insert(pos, effect); }