Jason Fletcher
Motion Designer
PACK ⬕ Fractal Persp
- This pack contains 40 VJ loops (105 GB)

OMG 3D fractals! For a few years I've been drooling over the Vectron plugin for creating 3D fractals. But since I'm primarily a Maya/Redshift and Blender user, the thought of diving into Cinema 4D and Octane just for this tool wasn't altogether enticing. But then they released Essence and Mecha which are native to the Unreal Engine and enable real-time exploration of 3D fractals. Years ago I explored Mandelbulber and Mandelbulb3D and plus I designed the prior version of the Mandelbulber website and curated its gallery. So I've long loved fractals and the idea of actually keyframing 3D fractals was exciting.

The good news is that the Essence and Mecha plugins live up to the hype! With a high-tier GPU I was able to explore each of the 3D fractals in real-time. But the real game changer is being able to easily keyframe attributes and see them playback quickly. I just scratched the surface of exploring the fractals. I found this tutorial to be helpful in laying out the basics of how to work with these two plugins and also unreal. The render times even when using the ultra quality setting are incredible and typically 1 to 2 seconds per frame for the most complex scenes, which is wild considering how computationally intense fractals can be. Other than adding glow in AE, these are renders straight out of Unreal. And I could have let Unreal do the glow (bloom) but I wanted manual control of that aspect. I was able to render out an alpha channel for most of the fractal videos.

I've long admired the alien shapes of the quaternion 4D julia fractal but it was too basic of a 3D fractal for the Unreal plugins. I did some research and stumbled across this amazing tutorial by Capucho3D showing how to use the geometry nodes to create a quaternion in Blender without any extra plugins. They even shared their Blender scene, which is awesome! Turns out that keyframing the attributes was very delicate and I had to strictly stay within certain numerical limits or Blender would instantly crash. There wasn't much to explore with the attributes and the "Quaternion Julia" scene basically shows what is visually possible. Also even after cranking up the subdivision to an insanely high number, I couldn't get enough precision to render it without the volume aliasing. So instead I just embraced this limitation and added a styrofoam shader, which I think works nicely. Sometime in the future I'll create a fully detailed quaternion.

Prior to this I had worked in Unreal for a few assets needed in other projects. So this was the first time sitting down and doing everything in the Unreal Engine, including keyframing, shaders, camera work, DOF, render settings, and such. Working within a video game engine that is cutting edge is quite satisfying since I can crank up the settings and still get very high quality renders, from anti-aliasing to the global illumination. Having worked in Maya for something like 16 years, it's inspiring to see a paradigm shift like this happening. That said, while much of my knowledge transfers over, there are also so many aspects of video game design that are kinda bizarre. For instance, Maya and After Effects have scenes where everything is self contained, except for file references. But in Unreal a Project contains all of the scene assets, Levels hold the state of the scene, and a Level Sequence holds any keyframes. Yet the moment you add an asset into a Level Sequence then any changes must be keyframed or else it'll revert to the original state. And if you want to save as and make an iteration of a Level Sequence then you have to jump through some weird hoops. Maybe I'm doing something wrong since I did learn quickly via trial and error. At one point I wanted to disable the motion blur but even when turned off, it was still active. Turns out that the anti-aliasing functions my averaging together multiple frames, aka temporal anti-aliasing, and you get a super crisp image and the added benefit of motion blur. It's an amazing feature but confusing when instead of disabling the motion blur I should have just zeroed out the attributes. These kinds of hoops are unique because it's not a bug, you just need to have an understanding of how the core engine works. Also enabling alpha channel output to PNG sequences was a pain, since as a solo artist I can't afford the file space required for EXR sequences. But all of this was just the learning pains of jumping straight into the deep end of the pool, which is how I best learn things. Even with those quirks, I'm in awe of Unreal. I think that Maya/Redshift still has its place but Unreal opens up some new doors for experimentation. Nodes within nodes within nodes.

Released November 2023