Jump to: Board index » General » Fusion

Motion blur for Shape3DPlanet node

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

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Motion blur for Shape3DPlanet node

PostWed May 17, 2023 9:33 pm

Hello,

how can I add motion blur to rotation of Shape3DPlanet?
thanks for all tips!

Code: Select all
{
   Tools = ordered() {
      Shape3D1Planet = Shape3D {
         NameSet = true,
         Inputs = {
            ["SurfacePlaneInputs.Width"] = Input { Value = 10, },
            ["SurfacePlaneInputs.Lighting.Nest"] = Input { Value = 1, },
            ["SurfaceCylinderInputs.ObjectID.ObjectID"] = Input { Value = 6, },
            ["SurfacePlaneInputs.Visibility.Nest"] = Input { Value = 1, },
            ["SurfaceCubeInputs.ObjectID.ObjectID"] = Input { Value = 3, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
            ["Transform3DOp.Rotate.Y"] = Input {
               Value = 512.333333333333,
               Expression = "time /3",
            },
            ["Transform3DOp.PivotNest"] = Input { Value = 1, },
            Shape = Input { Value = FuID { "SurfaceSphereInputs" }, },
            ["MtlStdInputs.Specular.Nest"] = Input { Value = 1, },
            ["MtlStdInputs.Specular.Intensity"] = Input { Value = 0, },
            ["MtlStdInputs.UseTwoSidedLighting"] = Input { Value = 1, },
            ["MtlStdInputs.MaterialIDNest"] = Input { Value = 1, },
            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },
            StartRenderScripts = Input { Value = 1, },
            EndRenderScripts = Input { Value = 1, },
            ["SurfaceSphereInputs.Radius"] = Input { Value = 3.6, },
            ["SurfaceSphereInputs.SubdivisionLevelBase"] = Input { Value = 100, },
            ["SurfaceSphereInputs.SubdivisionLevelHeight"] = Input { Value = 100, },
            ["SurfaceSphereInputs.Visibility.Nest"] = Input { Value = 1, },
            ["SurfaceSphereInputs.Visibility.IgnoreTransparentPixelsInAuxChannels"] = Input { Value = 0, },
            ["SurfaceSphereInputs.Lighting.Nest"] = Input { Value = 1, },
            ["SurfaceSphereInputs.Matte.Nest"] = Input { Value = 1, },
            ["SurfaceSphereInputs.BlendMode.Nest"] = Input { Value = 1, },
            ["SurfaceSphereInputs.Controls.Nest"] = Input { Value = 1, },
            ["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 2, }
         },
         ViewInfo = OperatorInfo { Pos = { 605, 115.5 } },
      }
   }
}
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline
User avatar

Bryan Ray

  • Posts: 2478
  • Joined: Mon Nov 28, 2016 5:32 am
  • Location: Los Angeles, CA, USA

Re: Motion blur for Shape3DPlanet node

PostWed May 17, 2023 10:03 pm

Motion blur will be handled by the Renderer3D in the Settings tab.
Bryan Ray
http://www.bryanray.name
http://www.sidefx.com
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostWed May 17, 2023 10:28 pm

Bryan Ray wrote:Motion blur will be handled by the Renderer3D in the Settings tab.


Thanks a million!
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostSun May 21, 2023 5:19 pm

Bryan Ray wrote:Motion blur will be handled by the Renderer3D in the Settings tab.


What would be the best algorithm to get "clean motion" blur? I tried to use optical flow and vector motion blur but my 8Gb GPU can not handle this. Is there any alternative or workaround for this?
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline
User avatar

Bryan Ray

  • Posts: 2478
  • Joined: Mon Nov 28, 2016 5:32 am
  • Location: Los Angeles, CA, USA

Re: Motion blur for Shape3DPlanet node

PostSun May 21, 2023 9:51 pm

If you've got a 3d system, the motion blur in the Renderer3D will give you the best results, but you will likely need to turn up the Quality slider so it gives you sufficient samples. How high it needs to go depends on how fast things are moving. Remember that you can overdrive it by typing in a number bigger than the slider will reach. I usually set it at 20 or so for motion graphics work. Just keep in mind that each sample is another full render, so try to set it as low as you can without seeing banding.

If you need to apply motion blur to 2d image, I prefer ReelSmart Motion Blur, but it's an OFX plug-in that has a cost of its own. So you need Fusion or Resolve Studio (~US$300) and the RSMB license, which is US$70 for a node-locked license or something like US$250 for a floating one.

I've never cared much for the artifacts created by optical flow-based motion blur, but maybe blurring the vectors could help. And if you're running out of VRAM (which surprises me unless you're dealing with super huge images), you could always disable GPU processing for whichever node is causing problems. Likely the Optical Flow vector generation. Of course, that slows things down considerably, but you should pre-render the vectors to EXR, anyway.
Bryan Ray
http://www.bryanray.name
http://www.sidefx.com
Offline

UserNoah

  • Posts: 458
  • Joined: Fri Oct 04, 2019 3:32 pm
  • Location: Germany
  • Real Name: Noah Hähnel

Re: Motion blur for Shape3DPlanet node

PostMon May 22, 2023 6:26 am

You could also use the vectors provided by the Renderer3D with the vector motion blur. No need to compute them with optical flow.
Sometimes it’s acceptable and faster that way.
I myself often do that as long as I don’t need curved motion blur.
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostMon May 22, 2023 2:54 pm

UserNoah wrote:You could also use the vectors provided by the Renderer3D with the vector motion blur. No need to compute them with optical flow.
Sometimes it’s acceptable and faster that way.
I myself often do that as long as I don’t need curved motion blur.


Thank you Noah for the advice! I wanted to try this, but I couldn't do that because I don't quite understand the process .... I checked Fusion manual...
2023-05-22 (2).png
2023-05-22 (2).png (215.11 KiB) Viewed 4140 times


What is the VECTOR_PASS here?
There is no node "VECTOR_PASS"...
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostMon May 22, 2023 3:03 pm

Bryan Ray wrote:If you've got a 3d system, the motion blur in the Renderer3D will give you the best results, but you will likely need to turn up the Quality slider so it gives you sufficient samples. How high it needs to go depends on how fast things are moving. Remember that you can overdrive it by typing in a number bigger than the slider will reach. I usually set it at 20 or so for motion graphics work. Just keep in mind that each sample is another full render, so try to set it as low as you can without seeing banding.

If you need to apply motion blur to 2d image, I prefer ReelSmart Motion Blur, but it's an OFX plug-in that has a cost of its own. So you need Fusion or Resolve Studio (~US$300) and the RSMB license, which is US$70 for a node-locked license or something like US$250 for a floating one.

I've never cared much for the artifacts created by optical flow-based motion blur, but maybe blurring the vectors could help. And if you're running out of VRAM (which surprises me unless you're dealing with super huge images), you could always disable GPU processing for whichever node is causing problems. Likely the Optical Flow vector generation. Of course, that slows things down considerably, but you should pre-render the vectors to EXR, anyway.


Thank you Bryan for detailed answer!
Ad VRAM issue - I use as a texture a 44MB picture. As far as I use optical flow node my Davinci Resolve Studio 18.1.4 hangs and crashes few seconds later...

what about the workaround - i render a sequence at 2x speed, then i retime the clip and calculate intermediate frames with optical flow and speed warp? is this an option for motion blur effect?
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

UserNoah

  • Posts: 458
  • Joined: Fri Oct 04, 2019 3:32 pm
  • Location: Germany
  • Real Name: Noah Hähnel

Re: Motion blur for Shape3DPlanet node

PostMon May 22, 2023 3:05 pm

You need to enable the vector pass in the auxiliary channels on the Renderer3D

Code: Select all
{
   Tools = ordered() {
      FastNoise1 = FastNoise {
         Inputs = {
            GlobalIn = Input { Value = 1001, },
            GlobalOut = Input { Value = 1500, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Detail = Input { Value = 4.72, },
            XScale = Input { Value = 5.98, },
            Color1Alpha = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 443.333, 38.2727 } },
      },
      Camera3D1 = Camera3D {
         Inputs = {
            ["Transform3DOp.Translate.Z"] = Input { Value = 4.37486690000556, },
            AoV = Input { Value = 31.3, },
            FLength = Input { Value = 21.2032342970737, },
            ["Stereo.Mode"] = Input { Value = FuID { "OffAxis" }, },
            FilmGate = Input { Value = FuID { "BMD_URSA_4K_16x9" }, },
            ApertureW = Input { Value = 0.831496062992126, },
            ApertureH = Input { Value = 0.467716535433071, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 3, },
            ["MtlStdInputs.MaterialID"] = Input { Value = 2, },
         },
         ViewInfo = OperatorInfo { Pos = { 553.333, 110.394 } },
      },
      Shape3D1 = Shape3D {
         Inputs = {
            Shape = Input { Value = FuID { "SurfaceSphereInputs" }, },
            MaterialInput = Input {
               SourceOp = "FastNoise1",
               Source = "Output",
            },
            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
            ["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 2, }
         },
         ViewInfo = OperatorInfo { Pos = { 443.333, 112.818 } },
      },
      Transform3D1 = Transform3D {
         CtrlWZoom = false,
         Inputs = {
            SceneInput = Input {
               SourceOp = "Shape3D1",
               Source = "Output",
            },
            ["Transform3DOp.Rotate.Y"] = Input {
               Value = 5010,
               Expression = "time*5",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 443.333, 168.848 } },
      },
      Merge3D1 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "Transform3D1",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "Camera3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 553.333, 168.848 } },
      },
      Renderer3D1 = Renderer3D {
         CustomData = {
            ToolVersion = 2,
         },
         Inputs = {
            GlobalIn = Input { Value = 1001, },
            GlobalOut = Input { Value = 1500, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            SceneInput = Input {
               SourceOp = "Merge3D1",
               Source = "Output",
            },
            RendererType = Input { Value = FuID { "RendererOpenGL" }, },
            ["RendererSoftware.Channels.Nest"] = Input { Value = 1, },
            ["RendererSoftware.Channels.Vector"] = Input { Value = 1, },
            ["RendererOpenGL.Channels.Nest"] = Input { Value = 1, },
            ["RendererOpenGL.Channels.Vector"] = Input { Value = 1, },
            ["RendererOpenGL.AntiAliasing.Channels.RGBA.HighQuality.Enable"] = Input { Value = 1, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Supersampling.HighQuality.RateX"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Supersampling.HighQuality.RateY"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Multisampling.LowQuality.SampleCount"] = Input { Value = 2, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Multisampling.HighQuality.SampleCount"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Supersampling.HighQuality.RateX"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Supersampling.HighQuality.RateY"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Multisampling.LowQuality.SampleCount"] = Input { Value = 2, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Multisampling.HighQuality.SampleCount"] = Input { Value = 3, },
            ["RendererOpenGL.AccumQuality"] = Input { Value = 32, },
            ["RendererOpenGL.Lighting"] = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 780, 168.848 } },
         SubInputsData = {
            RendererOpenGL = {
               Version = 1
            }
         }
      },
      VectorMotionBlur1 = VectorMotionBlur {
         Inputs = {
            Input = Input {
               SourceOp = "Renderer3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 914.667, 168.848 } },
      }
   }
}
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostMon May 22, 2023 5:18 pm

UserNoah wrote:You need to enable the vector pass in the auxiliary channels on the Renderer3D

Code: Select all
{
   Tools = ordered() {
      FastNoise1 = FastNoise {
         Inputs = {
            GlobalIn = Input { Value = 1001, },
            GlobalOut = Input { Value = 1500, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Detail = Input { Value = 4.72, },
            XScale = Input { Value = 5.98, },
            Color1Alpha = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 443.333, 38.2727 } },
      },
      Camera3D1 = Camera3D {
         Inputs = {
            ["Transform3DOp.Translate.Z"] = Input { Value = 4.37486690000556, },
            AoV = Input { Value = 31.3, },
            FLength = Input { Value = 21.2032342970737, },
            ["Stereo.Mode"] = Input { Value = FuID { "OffAxis" }, },
            FilmGate = Input { Value = FuID { "BMD_URSA_4K_16x9" }, },
            ApertureW = Input { Value = 0.831496062992126, },
            ApertureH = Input { Value = 0.467716535433071, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 3, },
            ["MtlStdInputs.MaterialID"] = Input { Value = 2, },
         },
         ViewInfo = OperatorInfo { Pos = { 553.333, 110.394 } },
      },
      Shape3D1 = Shape3D {
         Inputs = {
            Shape = Input { Value = FuID { "SurfaceSphereInputs" }, },
            MaterialInput = Input {
               SourceOp = "FastNoise1",
               Source = "Output",
            },
            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
            ["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 2, }
         },
         ViewInfo = OperatorInfo { Pos = { 443.333, 112.818 } },
      },
      Transform3D1 = Transform3D {
         CtrlWZoom = false,
         Inputs = {
            SceneInput = Input {
               SourceOp = "Shape3D1",
               Source = "Output",
            },
            ["Transform3DOp.Rotate.Y"] = Input {
               Value = 5010,
               Expression = "time*5",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 443.333, 168.848 } },
      },
      Merge3D1 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "Transform3D1",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "Camera3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 553.333, 168.848 } },
      },
      Renderer3D1 = Renderer3D {
         CustomData = {
            ToolVersion = 2,
         },
         Inputs = {
            GlobalIn = Input { Value = 1001, },
            GlobalOut = Input { Value = 1500, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            SceneInput = Input {
               SourceOp = "Merge3D1",
               Source = "Output",
            },
            RendererType = Input { Value = FuID { "RendererOpenGL" }, },
            ["RendererSoftware.Channels.Nest"] = Input { Value = 1, },
            ["RendererSoftware.Channels.Vector"] = Input { Value = 1, },
            ["RendererOpenGL.Channels.Nest"] = Input { Value = 1, },
            ["RendererOpenGL.Channels.Vector"] = Input { Value = 1, },
            ["RendererOpenGL.AntiAliasing.Channels.RGBA.HighQuality.Enable"] = Input { Value = 1, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Supersampling.HighQuality.RateX"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Supersampling.HighQuality.RateY"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Multisampling.LowQuality.SampleCount"] = Input { Value = 2, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Multisampling.HighQuality.SampleCount"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Supersampling.HighQuality.RateX"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Supersampling.HighQuality.RateY"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Multisampling.LowQuality.SampleCount"] = Input { Value = 2, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Multisampling.HighQuality.SampleCount"] = Input { Value = 3, },
            ["RendererOpenGL.AccumQuality"] = Input { Value = 32, },
            ["RendererOpenGL.Lighting"] = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 780, 168.848 } },
         SubInputsData = {
            RendererOpenGL = {
               Version = 1
            }
         }
      },
      VectorMotionBlur1 = VectorMotionBlur {
         Inputs = {
            Input = Input {
               SourceOp = "Renderer3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 914.667, 168.848 } },
      }
   }
}



I enabled the vectors in Renderer3D, but the output of Vector Motion Blur node is still empty

Code: Select all
{
   Tools = ordered() {
      Renderer3D1 = Renderer3D {
         CustomData = { ToolVersion = 2, },
         Inputs = {
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Multisampling.HighQuality.SampleCount"] = Input { Value = 3, },
            ["RendererOpenGL.LightingEnabled"] = Input { Value = 1, },
            ["RendererOpenGLUV.LightingEnabled"] = Input { Value = 1, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Supersampling.HighQuality.RateY"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Supersampling.HighQuality.RateX"] = Input { Value = 3, },
            ["RendererOpenGL.AccumQuality"] = Input { Value = 32, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Multisampling.HighQuality.SampleCount"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Channels.RGBA.HighQuality.Enable"] = Input { Value = 1, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Multisampling.LowQuality.SampleCount"] = Input { Value = 2, },
            ["RendererOpenGL.AntiAliasing.Presets.Color.Supersampling.HighQuality.RateX"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Supersampling.HighQuality.RateY"] = Input { Value = 3, },
            ["RendererOpenGL.AntiAliasing.Presets.Aux.Multisampling.LowQuality.SampleCount"] = Input { Value = 2, },
            Quality = Input { Value = 10, },
            SampleSpread = Input { Value = 0.73, },
            GlobalOut = Input { Value = 1349, },
            Width = Input { Value = 4096, },
            Height = Input { Value = 2304, },
            UseFrameFormatSettings = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Reporting = Input { Value = 1, },
            ["RendererSoftware.Channels.Nest"] = Input { Value = 1, },
            ["RendererSoftware.Channels.Vector"] = Input { Value = 1, },
            ["RendererSoftware.LightingEnabled"] = Input { Value = 1, },
            ["RendererSoftware.ShadowsEnabled"] = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 550, 49.5 } },
      },
      VectorMotionBlur1 = VectorMotionBlur {
         CtrlWZoom = false,
         Inputs = {
            Vectors = Input {
               SourceOp = "Renderer3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 770, 49.5 } },
      },
      MediaOut1 = MediaOut {
         Inputs = {
            Index = Input { Value = "0", },
            Input = Input {
               SourceOp = "VectorMotionBlur1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 990, 49.5 } },
      }
   }
}
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostMon May 22, 2023 9:59 pm

Bryan Ray wrote:I've never cared much for the artifacts created by optical flow-based motion blur, but maybe blurring the vectors could help. And if you're running out of VRAM (which surprises me unless you're dealing with super huge images), you could always disable GPU processing for whichever node is causing problems. Likely the Optical Flow vector generation. Of course, that slows things down considerably, but you should pre-render the vectors to EXR, anyway.


How can I disable GPU acceleration on node level?
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline
User avatar

Bryan Ray

  • Posts: 2478
  • Joined: Mon Nov 28, 2016 5:32 am
  • Location: Los Angeles, CA, USA

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 12:11 am

Switch to the Settings tab
Attachments
Capture.JPG
Capture.JPG (35.91 KiB) Viewed 4009 times
Bryan Ray
http://www.bryanray.name
http://www.sidefx.com
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 4:09 am

Bryan Ray wrote:Switch to the Settings tab

Thank you Bryan for quick responses! I
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 4:12 am

UserNoah wrote:You could also use the vectors provided by the Renderer3D with the vector motion blur. No need to compute them with optical flow.
Sometimes it’s acceptable and faster that way.
I myself often do that as long as I don’t need curved motion blur.


Could you please post here a small example showing this option. Thank you so much Noah!
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

UserNoah

  • Posts: 458
  • Joined: Fri Oct 04, 2019 3:32 pm
  • Location: Germany
  • Real Name: Noah Hähnel

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 4:19 am

The nodes that I posted are already the full example. The Renderer3D creates the necessary vectors and Vector Motion Blur uses those to blur the image accordingly.
But I might be misunderstanding what you actually want.
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 8:38 am

UserNoah wrote:The nodes that I posted are already the full example. The Renderer3D creates the necessary vectors and Vector Motion Blur uses those to blur the image accordingly.
But I might be misunderstanding what you actually want.

Noah, thanks for quick response. I found the failure, I sent only vectors to Vector Motion Blur node, thats why my output was empty...
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 8:49 am

UserNoah wrote:You could also use the vectors provided by the Renderer3D with the vector motion blur. No need to compute them with optical flow.
Sometimes it’s acceptable and faster that way.
I myself often do that as long as I don’t need curved motion blur.


what do you mean by curved motion blur? as soon as you work with 3D objects, you wouldn't have purely linear movements, do you?
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

UserNoah

  • Posts: 458
  • Joined: Fri Oct 04, 2019 3:32 pm
  • Location: Germany
  • Real Name: Noah Hähnel

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 10:05 am

sheva7 wrote:what do you mean by curved motion blur? as soon as you work with 3D objects, you wouldn't have purely linear movements, do you?


Take a look at this setup:

Code: Select all
{
   Tools = ordered() {
      VectorMotionBlur1 = VectorMotionBlur {
         Inputs = {
            Input = Input {
               SourceOp = "Renderer3D1_1",
               Source = "Output",
            },
            XScale = Input { Value = 0.55, },
         },
         ViewInfo = OperatorInfo { Pos = { 961.607, 501.307 } },
      },
      Renderer3D1_1 = Renderer3D {
         CustomData = {
            ToolVersion = 2,
         },
         Inputs = {
            Quality = Input { Value = 10, },
            GlobalIn = Input { Value = 1001, },
            GlobalOut = Input { Value = 1500, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            SceneInput = Input {
               SourceOp = "Merge3D1",
               Source = "Output",
            },
            ["RendererSoftware.Channels.Nest"] = Input { Value = 1, },
            ["RendererSoftware.Channels.Vector"] = Input { Value = 1, },
         },
         ViewInfo = OperatorInfo { Pos = { 961.607, 445.316 } },
      },
      Renderer3D1 = Renderer3D {
         CtrlWZoom = false,
         CustomData = {
            ToolVersion = 2,
         },
         Inputs = {
            MotionBlur = Input { Value = 1, },
            Quality = Input { Value = 20, },
            ShutterAngle = Input { Value = 360, },
            GlobalIn = Input { Value = 1001, },
            GlobalOut = Input { Value = 1500, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            SceneInput = Input {
               SourceOp = "Merge3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 788.795, 443.554 } },
      },
      Merge3D1 = Merge3D {
         Inputs = {
            SceneInput1 = Input {
               SourceOp = "Transform3D1",
               Source = "Output",
            },
            SceneInput2 = Input {
               SourceOp = "Camera3D1",
               Source = "Output",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 875.01, 354.123 } },
      },
      Camera3D1 = Camera3D {
         Inputs = {
            ["Transform3DOp.Translate.Z"] = Input { Value = 27.68, },
            AoV = Input { Value = 19.2642683071402, },
            ["Stereo.Mode"] = Input { Value = FuID { "OffAxis" }, },
            FilmGate = Input { Value = FuID { "BMD_URSA_4K_16x9" }, },
            ApertureW = Input { Value = 0.831496062992126, },
            ApertureH = Input { Value = 0.467716535433071, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 3, },
            ["MtlStdInputs.MaterialID"] = Input { Value = 2, },
         },
         ViewInfo = OperatorInfo { Pos = { 742.046, 354.123 } },
      },
      Transform3D1 = Transform3D {
         Inputs = {
            SceneInput = Input {
               SourceOp = "Shape3D1",
               Source = "Output",
            },
            ["Transform3DOp.Rotate.Z"] = Input {
               Value = 93285,
               Expression = "time*90",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 875.01, 321.123 } },
      },
      Shape3D1 = Shape3D {
         Inputs = {
            ["Transform3DOp.Translate.Y"] = Input { Value = 2.65374099267217, },
            Shape = Input { Value = FuID { "SurfaceSphereInputs" }, },
            ["MtlStdInputs.MaterialID"] = Input { Value = 1, },
            ["SurfacePlaneInputs.ObjectID.ObjectID"] = Input { Value = 1, },
            ["SurfaceSphereInputs.ObjectID.ObjectID"] = Input { Value = 2, }
         },
         ViewInfo = OperatorInfo { Pos = { 875.01, 266.177 } },
      }
   }
}


Left is using iterative/subframe motionblur the right is using the vectors. The vectors can only interpolate between the current and the next frame, creating a linear motion blur streak. The subframe motionblur can correctly show the curved path the sphere is taking. But it needs many samples and may be slower to render for complex scenes.
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 8:03 pm

UserNoah wrote:
sheva7 wrote:what do you mean by curved motion blur? as soon as you work with 3D objects, you wouldn't have purely linear movements, do you?


Left is using iterative/subframe motionblur the right is using the vectors. The vectors can only interpolate between the current and the next frame, creating a linear motion blur streak. The subframe motionblur can correctly show the curved path the sphere is taking. But it needs many samples and may be slower to render for complex scenes.


Thank you Noah for the example and detailed answer. So, you describe here 2 options - motion blur setup directly in Renderer3D, vector motion blur without optical flow, but there is the 3rd method - using optical flow before vector motion blur, which seems to be most intensiv

do you have an idea, what VECTOR_PASS in Davinci Fusion tutorial is?

2023-05-22 (2).png
2023-05-22 (2).png (215.11 KiB) Viewed 3693 times
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostTue May 23, 2023 8:22 pm

Here are two screenshots showing flow control and vector motion blur...
I don't how "perfect" motion blur should look, but what i have seems just blurring the image without any *motion* blur

2023-05-23 (3).png
2023-05-23 (3).png (836.18 KiB) Viewed 3687 times


2023-05-23 (4).png
2023-05-23 (4).png (785.82 KiB) Viewed 3687 times
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline
User avatar

Andrew Shtern

  • Posts: 91
  • Joined: Wed Aug 22, 2012 7:25 am
  • Location: Ukraine, Kyiv

Re: Motion blur for Shape3DPlanet node

PostWed May 24, 2023 10:08 am

sheva7 wrote:do you have an idea, what VECTOR_PASS in Davinci Fusion tutorial is?


It's a Loader. The tutorial assumes that you have a multi-pass 3d render, with one of the passes (AOVs) being Motion Vectors.
DaVinci Resolve Studio 18.6.4b6, Windows 10 22H2 19045.3570, NVidia RTX3060 12Gb
Offline
User avatar

Andrew Shtern

  • Posts: 91
  • Joined: Wed Aug 22, 2012 7:25 am
  • Location: Ukraine, Kyiv

Re: Motion blur for Shape3DPlanet node

PostWed May 24, 2023 10:19 am

sheva7 wrote:Here are two screenshots showing flow control and vector motion blur...
I don't how "perfect" motion blur should look, but what i have seems just blurring the image without any *motion* blur


What exactly you're expecting to see? Motion blur for the rotating sphere basically will look like a directional blur perpendicular to the axis of rotation. It looks to me that this is what you have on the screenshots. Check your vectors, what is generated by the Optical Flow node?
DaVinci Resolve Studio 18.6.4b6, Windows 10 22H2 19045.3570, NVidia RTX3060 12Gb
Offline

sheva7

  • Posts: 101
  • Joined: Mon Oct 10, 2022 10:21 am
  • Real Name: Anatoliy Babiychuk

Re: Motion blur for Shape3DPlanet node

PostWed May 24, 2023 1:53 pm

Andrew Shtern wrote:
sheva7 wrote:Here are two screenshots showing flow control and vector motion blur...
I don't how "perfect" motion blur should look, but what i have seems just blurring the image without any *motion* blur


What exactly you're expecting to see? Motion blur for the rotating sphere basically will look like a directional blur perpendicular to the axis of rotation. It looks to me that this is what you have on the screenshots. Check your vectors, what is generated by the Optical Flow node?


How can I check my vectors? Could you please give an example that I can better understand your thoughts...
Resolve Studio 18.1.2, Windows 11
13th Gen Intel® Core™ i5-13600K, 2x 32GB DDR5-5600, NVIDIA GeForce RTX 3060 Ti, Seagate FireCuda 530
Offline
User avatar

Andrew Shtern

  • Posts: 91
  • Joined: Wed Aug 22, 2012 7:25 am
  • Location: Ukraine, Kyiv

Re: Motion blur for Shape3DPlanet node

PostSat Jun 17, 2023 11:21 am

sheva7 wrote:How can I check my vectors? Could you please give an example that I can better understand your thoughts...


Just look at the output of the Optical Flow node.
DaVinci Resolve Studio 18.6.4b6, Windows 10 22H2 19045.3570, NVidia RTX3060 12Gb

Return to Fusion

Who is online

Users browsing this forum: Bing [Bot], BMDR User 9201 and 28 guests