|
@@ -25,30 +25,29 @@ public class ApplyFilterNode : RenderNode, IRenderInput
|
|
|
|
|
|
protected override void OnPaint(RenderContext context, DrawingSurface surface)
|
|
|
{
|
|
|
- if (Background.Value == null || Filter.Value == null)
|
|
|
+ if (Background.Value == null)
|
|
|
return;
|
|
|
-
|
|
|
+
|
|
|
_paint.SetFilters(Filter.Value);
|
|
|
- var layer = surface.Canvas.SaveLayer(_paint);
|
|
|
-
|
|
|
+ int layer = surface.Canvas.SaveLayer(_paint);
|
|
|
Background.Value.Paint(context, surface);
|
|
|
-
|
|
|
+
|
|
|
surface.Canvas.RestoreToCount(layer);
|
|
|
}
|
|
|
|
|
|
public override RectD? GetPreviewBounds(int frame, string elementToRenderName = "")
|
|
|
{
|
|
|
- return PreviewUtils.FindPreviewBounds(Background.Connection, frame, elementToRenderName);
|
|
|
+ return PreviewUtils.FindPreviewBounds(Background.Connection, frame, elementToRenderName);
|
|
|
}
|
|
|
|
|
|
public override bool RenderPreview(DrawingSurface renderOn, ChunkResolution resolution, int frame,
|
|
|
string elementToRenderName)
|
|
|
{
|
|
|
- if(Background.Value == null)
|
|
|
+ if (Background.Value == null)
|
|
|
return false;
|
|
|
|
|
|
RenderContext context = new(renderOn, frame, ChunkResolution.Full, VecI.One);
|
|
|
-
|
|
|
+
|
|
|
int layer = renderOn.Canvas.SaveLayer(_paint);
|
|
|
Background.Value.Paint(context, renderOn);
|
|
|
renderOn.Canvas.RestoreToCount(layer);
|