public override void ApplyState() { base.ApplyState(); updateVersion = Source.updateVersion; effectColour = Source.EffectColour; effectBlending = Source.DrawEffectBlending; effectPlacement = Source.EffectPlacement; drawOriginal = Source.DrawOriginal; blurSigma = Source.BlurSigma; blurRadius = new Vector2I(Blur.KernelSize(blurSigma.X), Blur.KernelSize(blurSigma.Y)); blurRotation = Source.BlurRotation; blurShader = Source.blurShader; }
public override void ApplyState() { base.ApplyState(); screenSpaceDrawRectangle = Source.ScreenSpaceDrawQuad.AABBFloat; filteringMode = Source.PixelSnapping ? All.Nearest : All.Linear; updateVersion = Source.updateVersion; backgroundColour = Source.BackgroundColour; BlendingParameters localEffectBlending = Source.EffectBlending; if (localEffectBlending.Mode == BlendingMode.Inherit) { localEffectBlending.Mode = Source.Blending.Mode; } if (localEffectBlending.RGBEquation == BlendingEquation.Inherit) { localEffectBlending.RGBEquation = Source.Blending.RGBEquation; } if (localEffectBlending.AlphaEquation == BlendingEquation.Inherit) { localEffectBlending.AlphaEquation = Source.Blending.AlphaEquation; } effectColour = Source.EffectColour; effectBlending = localEffectBlending; effectPlacement = Source.EffectPlacement; drawOriginal = Source.DrawOriginal; blurSigma = Source.BlurSigma; blurRadius = new Vector2I(Blur.KernelSize(blurSigma.X), Blur.KernelSize(blurSigma.Y)); blurRotation = Source.BlurRotation; formats.Clear(); formats.AddRange(Source.attachedFormats); blurShader = Source.blurShader; // BufferedContainer overrides DrawColourInfo for children, but needs to be reset to draw ourselves DrawColourInfo = Source.baseDrawColourInfo; }