Jump to: Board index » General » Fusion

How do I speed up particle workflow with DOF blur

Learn about 3D compositing, animation, broadcast design and VFX workflows.
  • Author
  • Message
Offline
User avatar

Saad Shah

  • Posts: 152
  • Joined: Sun Dec 30, 2018 5:36 pm
  • Real Name: Saad Shah

How do I speed up particle workflow with DOF blur

PostSat Nov 16, 2019 9:10 pm

Hey
I am working on a simple particle project for a background and was wondering if there are some techniques to speed up the process. I dont need to see the blur or high quality while tweaking the design. Any pointers would be appreciated!

Code: Select all
{
   Tools = ordered() {
      Emitter_Tiny = pEmitter {
         ID = 981,
         NameSet = true,
         Inputs = {
            Number = Input { Value = 5, },
            Lifespan = Input { Value = 200, },
            LifespanVariance = Input { Value = 100, },
            Velocity = Input { Value = 0.01, },
            AngleZ = Input { Value = 270, },
            AngleZVariance = Input { Value = 100, },
            StyleNest = Input { Value = 0, },
            Style = Input { Value = FuID { "ParticleStyleNGon" }, },
            ["ParticleStyleNGon.NGonType"] = Input { Value = 0, },
            Region = Input { Value = FuID { "RectRgn" }, },
            ["ParticleStyle.ColorControls"] = Input { Value = 1, },
            ["ParticleStyle.Red"] = Input { Value = 0.402784, },
            ["ParticleStyle.Green"] = Input { Value = 0, },
            ["ParticleStyle.Blue"] = Input { Value = 0.614, },
            ["ParticleStyle.Alpha"] = Input { Value = 0.28, },
            ["ParticleStyle.ColorVariance"] = Input { Value = 1, },
            ["ParticleStyle.AlphaLow"] = Input { Value = -0.5, },
            ["ParticleStyle.AlphaHigh"] = Input { Value = 0.6, },
            ["ParticleStyle.Size"] = Input { Value = 0.1457, },
            ["ParticleStyle.SizeVariance"] = Input { Value = 0.126, },
            ["ParticleStyle.SizeOverLife"] = Input {
               SourceOp = "Emitter_TinySizeOverLife",
               Source = "Value",
            },
            ["ParticleStyle.FadeIn"] = Input { Value = 0.25, },
            ["ParticleStyle.FadeOut"] = Input { Value = 0.75, },
            ["ParticleStyle.BlurOverLife"] = Input {
               SourceOp = "Emitter_TinyBlurOverLife2D",
               Source = "Value",
            },
            ["RectRgn.Width"] = Input { Value = 1, },
            ["RectRgn.Height"] = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 55, -16.5 } },
      },
      Emitter_TinySizeOverLife = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
               [1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 192, Green = 128, Blue = 64 },
         NameSet = true,
      },
      Emitter_TinyBlurOverLife2D = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
               [1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 192, Green = 128, Blue = 64 },
         NameSet = true,
      },
      Round = GroupOperator {
         NameSet = true,
         Outputs = {
            Output1 = InstanceOutput {
               SourceOp = "Background1_1",
               Source = "Output",
            }
         },
         ViewInfo = GroupInfo {
            Pos = { 165, -115.5 },
            Flags = {
               AllowPan = false,
               GridSnap = true,
               ShowGrid = false,
               RemoveRouters = true
            },
            Size = { 126, 130.886, 63, 24.2424 },
            Direction = "Horizontal",
            PipeStyle = "Direct",
            Scale = 1,
            Offset = { -1100, -42.3409 }
         },
         Tools = ordered() {
            Background1_1 = Background {
               CtrlWShown = false,
               Inputs = {
                  EffectMask = Input {
                     SourceOp = "Ellipse1_1",
                     Source = "Mask",
                  },
                  GlobalOut = Input { Value = 1799, },
                  Width = Input { Value = 1920, },
                  Height = Input { Value = 1080, },
                  UseFrameFormatSettings = Input { Value = 1, },
                  ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
                  TopLeftRed = Input { Value = 1, },
                  TopLeftGreen = Input { Value = 1, },
                  TopLeftBlue = Input { Value = 1, },
               },
               ViewInfo = OperatorInfo { Pos = { 1100, 115.5 } },
            },
            Ellipse1_1 = EllipseMask {
               CtrlWShown = false,
               Inputs = {
                  EffectMask = Input {
                     SourceOp = "Ellipse2_1",
                     Source = "Mask",
                  },
                  Filter = Input { Value = FuID { "Fast Gaussian" }, },
                  BorderWidth = Input { Value = 0.004, },
                  Solid = Input { Value = 0, },
                  MaskWidth = Input { Value = 1920, },
                  MaskHeight = Input { Value = 1080, },
                  PixelAspect = Input { Value = { 1, 1 }, },
                  ClippingMode = Input { Value = FuID { "None" }, },
                  Width = Input { Value = 0.0876999995932807, },
                  Height = Input { Value = 0.0876999995932807, },
               },
               ViewInfo = OperatorInfo { Pos = { 1100, 82.5 } },
            },
            Ellipse2_1 = EllipseMask {
               CtrlWShown = false,
               Inputs = {
                  Filter = Input { Value = FuID { "Fast Gaussian" }, },
                  MaskWidth = Input { Value = 1920, },
                  MaskHeight = Input { Value = 1080, },
                  PixelAspect = Input { Value = { 1, 1 }, },
                  ClippingMode = Input { Value = FuID { "None" }, },
                  Width = Input { Value = 0.06, },
                  Height = Input { Value = 0.06, },
               },
               ViewInfo = OperatorInfo { Pos = { 1100, 49.5 } },
            }
         },
      },
      Emitter_Main = pEmitter {
         ID = 989,
         NameSet = true,
         Inputs = {
            EmitterNest = Input { Value = 0, },
            Number = Input { Value = 5, },
            Lifespan = Input { Value = 500, },
            LifespanVariance = Input {
               Value = 500,
               Expression = "Lifespan",
            },
            Velocity = Input { Value = 0.005, },
            VelocityVariance = Input { Value = 0.039, },
            AngleZ = Input { Value = 270, },
            AngleZVariance = Input { Value = 10, },
            StyleNest = Input { Value = 0, },
            Style = Input { Value = FuID { "ParticleStyleBitmap" }, },
            ["ParticleStyleBitmap.DropToolsHere"] = Input {
               SourceOp = "Background1_1",
               Source = "Output",
            },
            Region = Input { Value = FuID { "RectRgn" }, },
            ["ParticleStyle.Alpha"] = Input { Value = 0.417, },
            ["ParticleStyle.AlphaLow"] = Input { Value = -0.7, },
            ["ParticleStyle.AlphaHigh"] = Input { Value = 0.538, },
            ["ParticleStyle.ColorOverLifeControls"] = Input { Value = 1, },
            ["ParticleStyle.ColorOverLife"] = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0.968627450980392, 0.0235294117647059, 1, 1 },
                     [0.3383084577114] = { 0.3333333333333, 0, 0.4980392156863, 1 },
                     [1] = { 0.184313725490196, 0.0117647058823529, 0.192156862745098, 1 }
                  }
               },
            },
            ["ParticleStyle.Size"] = Input { Value = 0.1732, },
            ["ParticleStyle.SizeVariance"] = Input { Value = 0.2598, },
            ["ParticleStyle.SizeOverLife"] = Input {
               SourceOp = "Emitter_MainSizeOverLife",
               Source = "Value",
            },
            ["ParticleStyle.FadeIn"] = Input { Value = 0.244, },
            ["ParticleStyle.FadeOut"] = Input { Value = 0.744, },
            ["ParticleStyle.BlurControls"] = Input { Value = 1, },
            ["ParticleStyle.BlurOverLife"] = Input {
               SourceOp = "Emitter_MainBlurOverLife2D",
               Source = "Value",
            },
            ["ParticleStyle.ZBlurDOF"] = Input { Value = 0.2, },
            ["ParticleStyle.BlurNearZ"] = Input { Value = 0.9, },
            ["ParticleStyle.BlurFarZ"] = Input { Value = 1.1, },
            ["RectRgn.Width"] = Input { Value = 1, },
            ["RectRgn.Height"] = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 165, -82.5 } },
      },
      Emitter_MainSizeOverLife = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [1] = { 0.49290780141844 }
            }
         },
         SplineColor = { Red = 192, Green = 128, Blue = 64 },
         NameSet = true,
      },
      Emitter_MainBlurOverLife2D = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0.5, RH = { 0.333333333333333, 0.5 }, Flags = { Linear = true } },
               [1] = { 0.5, LH = { 0.666666666666667, 0.5 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 192, Green = 128, Blue = 64 },
         NameSet = true,
      },
      SoftGlow = SoftGlow {
         NameSet = true,
         Inputs = {
            Blend = Input { Value = 0.15, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            Threshold = Input { Value = 0.244, },
            Gain = Input { Value = 1.26, },
            XGlowSize = Input { Value = 6.3, },
            Input = Input {
               SourceOp = "Renderer1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 165, -16.5 } },
      },
      Renderer1 = pRender {
         NameSet = true,
         Inputs = {
            _MotionBlurWarning = Input { Disabled = true, },
            GlobalOut = Input { Value = 1799, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            UseFrameFormatSettings = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            OutputMode = Input {
               Value = FuID { "TwoD" },
               Disabled = true,
            },
            PreGenerateFrames = Input { Value = 30, },
            ["MaterialID.MaterialID"] = Input { Value = 2, },
            ["ObjectID.ObjectID"] = Input { Value = 1, },
            Input = Input {
               SourceOp = "Emitter_Main",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 165, -49.5 } },
      },
      Glow2 = Glow {
         NameSet = true,
         Inputs = {
            Blend = Input { Value = 0.165, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            XGlowSize = Input { Value = 11, },
            Glow = Input { Value = 0.236, },
            Input = Input {
               SourceOp = "SoftGlow",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 165, 16.5 } },
      },
      Renderer2 = pRender {
         NameSet = true,
         Inputs = {
            _MotionBlurWarning = Input { Disabled = true, },
            GlobalOut = Input { Value = 1799, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            UseFrameFormatSettings = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            OutputMode = Input {
               Value = FuID { "TwoD" },
               Disabled = true,
            },
            PreGenerateFrames = Input { Value = 30, },
            ["MaterialID.MaterialID"] = Input { Value = 1, },
            ["ObjectID.ObjectID"] = Input { Value = 2, },
            Input = Input {
               SourceOp = "Emitter_Tiny",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 55, 16.5 } },
      },
      Glow1 = Glow {
         NameSet = true,
         Inputs = {
            Blend = Input { Value = 0.512, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            XGlowSize = Input { Value = 22, },
            Glow = Input { Value = 0.496, },
            Input = Input {
               SourceOp = "Glow2",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 165, 49.5 } },
      },
      Glow3 = Glow {
         NameSet = true,
         Inputs = {
            Blend = Input { Value = 0.2, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            Input = Input {
               SourceOp = "Renderer2",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 55, 49.5 } },
      },
      Texture = FastNoise {
         NameSet = true,
         Inputs = {
            GlobalOut = Input { Value = 1799, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            UseFrameFormatSettings = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Detail = Input { Value = 4.96, },
            Contrast = Input { Value = 2.71, },
            XScale = Input { Value = 2.36, },
            SeetheRate = Input { Value = 0.071, },
            Color1Red = Input { Value = 0.0883960000000001, },
            Color1Green = Input { Value = 0.00198, },
            Color1Blue = Input { Value = 0.11, },
            Color1Alpha = Input { Value = 1, },
            Color2Red = Input { Value = 0.155796752, },
            Color2Green = Input { Value = 0.00659400000000001, },
            Color2Blue = Input { Value = 0.157, },
            Gradient = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0.234202624, 0.011328, 0.236, 1 },
                     [1] = { 0.2034584, 0.0123, 0.205, 1 }
                  }
               },
            },
         },
         ViewInfo = OperatorInfo { Pos = { -55, 49.5 } },
      },
      Output = MediaOut {
         CtrlWZoom = false,
         NameSet = true,
         Inputs = {
            Index = Input { Value = "0", },
            Input = Input {
               SourceOp = "Grain",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 275, 16.5 } },
      },
      Grain = FilmGrain {
         NameSet = true,
         Inputs = {
            MasterXSize = Input { Value = 0.13, },
            MasterStrength = Input { Value = 0.0354, },
            MasterRoughness = Input { Value = 0.063, },
            Input = Input {
               SourceOp = "CC",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 275, 49.5 } },
      },
      BlackBG = Background {
         NameSet = true,
         Inputs = {
            GlobalOut = Input { Value = 1799, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            UseFrameFormatSettings = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
         },
         ViewInfo = OperatorInfo { Pos = { -165, 82.5 } },
      },
      CC = ColorCorrector {
         NameSet = true,
         Inputs = {
            WheelSaturation1 = Input { Value = 0.45, },
            MasterRGBContrast = Input { Value = 1.13, },
            MasterRGBGain = Input { Value = 2.59, },
            MasterRGBBrightness = Input { Value = -0.22, },
            ColorRanges = Input {
               Value = ColorCurves {
                  Curves = {
                     {
                        Points = {
                           { 0, 1 },
                           { 0.4, 0.2 },
                           { 0.6, 0 },
                           { 1, 0 }
                        }
                     },
                     {
                        Points = {
                           { 0, 0 },
                           { 0.4, 0 },
                           { 0.6, 0.2 },
                           { 1, 1 }
                        }
                     }
                  }
               },
            },
            HistogramIgnoreTransparent = Input { Value = 1, },
            Input = Input {
               SourceOp = "M3",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 275, 82.5 } },
      },
      M3 = Merge {
         NameSet = true,
         Inputs = {
            Background = Input {
               SourceOp = "M2",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Glow1",
               Source = "Output",
            },
            PerformDepthMerge = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 165, 82.5 } },
      },
      M2 = Merge {
         NameSet = true,
         Inputs = {
            Background = Input {
               SourceOp = "M1",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Glow3",
               Source = "Output",
            },
            PerformDepthMerge = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 55, 82.5 } },
      },
      M1 = Merge {
         NameSet = true,
         Inputs = {
            Blend = Input { Value = 0.5, },
            Background = Input {
               SourceOp = "BlackBG",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Texture",
               Source = "Output",
            },
            PerformDepthMerge = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { -55, 82.5 } },
      }
   }
}


Thanks
Sadi
Youtube Channel: Gargoyles At Work
Offline
User avatar

Saad Shah

  • Posts: 152
  • Joined: Sun Dec 30, 2018 5:36 pm
  • Real Name: Saad Shah

Re: How do I speed up particle workflow with DOF blur

PostSat Nov 16, 2019 9:17 pm

Image

Hmm, why is my image not showing up... :?:
Youtube Channel: Gargoyles At Work
Offline
User avatar

Saad Shah

  • Posts: 152
  • Joined: Sun Dec 30, 2018 5:36 pm
  • Real Name: Saad Shah

Re: How do I speed up particle workflow with DOF blur

PostSun Nov 17, 2019 3:54 pm

Possible solutions, perhaps:

Turn off high quality (it doesnt do anything)
Disk cache the nodes
render out to savers and combine them later with loaders
turn off depth of focus blur in the pEmitter while working

Any advice would be greatly appreciated!
Youtube Channel: Gargoyles At Work

Return to Fusion

Who is online

Users browsing this forum: No registered users and 45 guests