Fusion

Playing with the Loop tool & a few explanations[Reactor]

I’ve been playing with Loop, a tool available from Reactor, the package manager available in Fusion, and I’d like to share with you what I’ve found and tried.

What is Reactor? If you are wondering what Reactor is, please refer to the following article that introduces installation, usage, and examples.

Also, this video by NSFarm will help you!

If you want to check out the official information, please visit the Fusion user community. It’s interesting to see just how users interact with each other.

What you can do with Loop

When I saw the video of Loop, I was so shocked and wondered what kind of tool it was. I was shocked!

Loop’s description says, “that allows you to create interesting, wonderful and delightfully unpredictable visuals” and that’s exactly what the video just showed! My curiosity was piqued.

Loop is a new and free toolset for Blackmagic Design Fusion that allows you to create interesting, wonderful and delightfully unpredictable visuals.

www.steakunderwater.com

Once you calm down and look at what this tool can do, you will realize that it is not a tool for creating colorful effects as we saw earlier, but rather a tool for specifying the beginning and end of a loop in the Fusion node structure, and then looping the process for a set number of frames to get the result.

It enables you to create “iterative loops” by continuously rendering over itself. You do this by building an effect between a startpoint and an endpoint in your comp. Loop will render out this effect as an image and use that same image as the input for the next render. You can render image sequences and also have multiple iterations per single frame. There’s a demo setup included which should make all that clear.

www.steakunderwater.com

When I install the tool, two demo Comp files using Loop will be downloaded, and I played around with them based on this.

You can check the folder where the Comp files are saved from Workspace > Script > Reactor > Tools > Show Comps Folder at the top of the screen.

Demo 1: Reaction-Diffusion Model

What is the reaction-diffusion model all of a sudden? It is used as a process to obtain the colorful output described above.

The following information on reaction diffusion was easy to understand, so please take a look if you are interested. (I’m only getting the vibe, lol)

The name of the demo file is “Reaction_Diffusion.comp”, and although it is not exactly the same as the video uploaded on YouTube, the output is such that each color component separates and moves away from the colorfully colored text, as shown below.

The node structure is as follows. Originally, it was organized vertically, but it is easier to handle horizontally, so it has been reformatted. The content has not been changed from the original.

In the demo here, the next process sandwiched between Loop nodes is repeated to achieve the mysterious effect mentioned earlier.

  • Apply two types of blur and composite with ChannelBooleans (Substruct)
  • Increase Gain
  • The above result is returned to LoopStart as Input and repeated for the specified frame.
It’s amazing that you came up with the idea to get the output (reaction diffusion) you just got from this process!!

Blur2 has Expression set to apply the blur effect at three times the size of Blur1.

If you change the size of Blur1 or the magnification of Blur2, the output will change, so it’s interesting to play around with it.

To finish assembling the nodes and make them loop, enter the name of the corresponding LoopStart node in the “Loop Start” field of the LoopEnd node, enter the number of frames to render in the “Frames” field, and click the “Run Loop” button.

You can also drag the LoopStart node and drop it on the “Loop Start” area of the diagram.

For some reason, sometimes when I clicked on the “Run Loop” or “Open Cache Folder” button, the message “Please make sure the Loop Out node is selected before pressing the button.” would appear and I could not proceed.

I don’t know the root solution, but it seems to be resolved by reopening the project file.

Here’s the demo file with some additional parameters tweaked. The swell movement is actually very slow, so I’ve increased the speed by about 4500 times and played it backwards.

So the number of frames became quite large, about 14,000, and I was getting carried away with rendering so much that my DiskCache grew to 62GB.

I guess it depends on the amount of renders, but it seems that this tool consumes a lot of DiskCache space, so you might want to delete it frequently.

If you apply it to a material that has distinct colors, you can easily get the same effect as in the demo. I’m not sure how often I’ll use this effect, but it’s definitely an exciting effect.

Demo 2: Expressing trajectories

The second is a demo that represents the trajectory of an object; the name of the Comp file is exactly what it sounds like, but the output obtained seems to be similar to that of the “Trails” tool.

There have been conversations in the community about how to reproduce the Trails tool.

I’d have to see your setup to know for sure, but if you want to emulate a Trails tool, you have to insert the animation inside the loop, or it won’t be used. Loop will only ever take one image from the LoopStart input and iterate on top of that.

www.steakunderwater.com

I have never used the Trails tool myself, so this is not a comparison, but rather an introduction of what I have checked/tried in terms of behavior with the Loop tool.

The node structure of the demo file (Trails.comp) introduced earlier is as follows.

The structure itself is simple, and the contents are as follows.

  • Create a circle with Ellipse (set Shake Modifiers to Center)
  • Lower the Gain
  • Increase the size a little
  • apply a blur
  • Repeat the above process

By gradually decreasing the gain, gradually increasing the size, and gradually applying blur, the effect of the trajectory diffusing and fading is expressed.

It’s like the effect of compounding interest over time! (Sorry for the confusing metaphor ;-))

It was hard to imagine what the output passed from LoopEnd to LoopStart would look like with just this sample, so I tried to check it with a video in which the animation is set to display a number (number of frames) instead of an Ellipse.

If you look at this, you will see that the values displayed for each number of frames are as follows.

Number of framesDisplayed value
00
11, 0
22, 1, 0
33, 2, 1, 0

Since the values that match the number of frames plus all the values from the previous frame to 0 are displayed, I can clearly see that the rendered result of the previous frame is being returned to the input of LoopStart, plus the output of the new frame is being added to it. I understand now!

The order of the nodes is also important, because it seems that the output returned to LoopStart and the output at the new frame are merged and processed.

At the end

There are some points that bothered me, such as the unstable behavior and the larger DiskCache, but I felt it was an interesting tool that could be used for various things depending on your ideas.

By the way, if you want to see what the Loop tool looks like, copy the tool, open it in Notepad, replace “LoopStart = MacroOperator {“ with “LoopStart = GroupOperator {“, and paste it into the Fusion page to see the contents.

If you paste it, it will be grouped, so expand it with Expand Group.

That’s all!!