The magic of Blackmagic Fusion

Software:
Fusion 8.2

Untitled-1

 

The quest to find an affordable Node-Based Compositing software

I generally prefer doing compositing for video and 3D animation using Node Based Compositing software.
In the past I worked happily with Autodesk Combustion, until it was discontinued, than I went on working with Autodesk Composite (Toxik) which was also kind-of discontinued, and was installed as part of the 3ds max package, and can still be downloaded for free at Autodesk Exchange.

Autodesk Composite is an awesome compositing technology, and I did a lot of work with it, but the only reason I could afford it in the first place was that Autodesk stopped actively developing it and shipped it as a (rather powerful) ‘goody’ along with 3ds max and Maya. while I can still go on working with Autodesk Composite, Its lack of active development is showing, and I decided to look for a better solution.

Obviously, this discussion can’t be serious without mentioning The Foundry’s Nuke compositing software, which as far as I understand the leading node based compositing solution in the VFX industry today.
But in my small indie studio perspective Nuke is expensive, and for my compositing needs, there’s simply no justification to make the investment.

Another node based compositing software that must be mentioned here is the open source software Natron.
Natron is a very serious development, there’s a growing community around it, and it seams to me that it might be on its way to become the ‘Blender’ of the compositing industry.
I did some tests with Natron 2.1.4, it’s interface is very similar to Nuke’s interface, and from the way the interface is designed, its approach to reading and processing 32 bit float multi-channel EXR file sequences, and it’s current library of available nodes, it’s pretty obvious that this development effort is aiming to be a high end VFX node based compositor.
But for me, there are still some key features missing, like 3D compositing, a vector blur node and more.
* It should be noted that you can add Re-Vision Effects ReelSmart Motion Blur plugin to get vector blur functionality and other features like motion estimation.

 

Enter Blackmagic Fusion

Fusion is actually not a newcomer in the field of node based compositing.
Initially developed by Eyeon software, it was named ‘Digital Fusion’, than just ‘Fusion’, and in the past decade was heavily developed in the direction of 3D compositing.
If I remember correctly, Fusion was also expensive, I think it cost around 6000 dollars…
But than magic happened..
A couple of years ago Blackmagic Design, which is by-far the most disruptive company in the production and post-production gear industry, has purchased Eyeon software, continued developing it, integrated it into their product pipeline and made it available as a free edition of the software and a more heavily equipped ‘Studio’ edition of the software, that costs 299$, which is absolutely accessible in small indie studio terms.

I downloaded the free edition of the software, and immediately started working with it, getting used to the interface while working on actual animation projects in the past year,
And to cut the long story short, it’s awesome and it’s a very happy ending to my quest for finding a compositing solution, for the following reasons:

  1. Node based.
  2. Full 32 float workflow.
  3. Robust support for multi-channel EXR file sequences.
  4. Excellent Vector-Motion-Blur and Depth-Blur (DOF) effects,
    And many other 3D channel based tools like Volume-Mask, and more.
  5. 3D compositing.
  6. Very fast GPU accelerated OpenCL processing (render are extremely quick).
  7. Many more..

In conclusion, my opinion is that it’s a no brainer,
If your looking for an affordable, robust node-based compositing software that’s well equipped for 3D animation needs,
Blackmagic Fusion is the answer.

Positive thoughts about RenderPal

Software:
RenderPal 2.14

Renderpal
Renderpal Server console

Moving from the robustly equipped* Autodesk 3ds max to the pioneering state of Blender, I was looking for a proper studio render management solution.

Blender doesn’t come with a batch rendering / render management solution.
Some notable solutions to that are RenderPilot which is a free and very effective batch render utility for Blender I used extensively (RenderPilot is developed by Wigglyframes),
And Flamenco which is a Cloud/Net rendering management solution for Blender currently in beta development stage.

Flamenco is the formal solution that will be offered by the Blender Institute, along with a cloud service for Blender cloud members.
I’m really interested in Flamenco, not only because I’m a Blender cloud member and can use the Flamenco cloud service, but also because to my understanding Flamenco is capable of sophisticated control of Blender render settings, like the samples range and seed, combining renders with different sample ranges and such.
However Flameco is currently at Beta stage of development, and it’s components don’t yet have friendly installer packages, so you have to install and configure all the components, and their prerequisites manually through command-line using parameters specified in configuration files etc’, a task that’s just too complicated for me especially being in an urgent need to get things running to deliver animations to customers.
That being said, Flamenco and it’s Blender cloud service look very promising and I will definitely give it another try when the package gets proper installers.

So after a quick web search for render management software I came across RenderPal, which is a render management solutions that supports a wide variety of video/animation software systems, and has a fully functional free version.

I registered at the RenderPal website for the free license, installed the software components, and after some learning and trouble shooting I started using the software, eventually purchasing a commercial version.

I find RenderPal to be very efficient render management solution, it’s easy to install, it has good monitoring capabilities, it’s flexible, and can interface with a wide variety of animation / post production software.
I find it’s SMPT mail notifications feature very convenient, and the company also provides responsive tech support when needed.

* Autodek 3ds max ships bundled with Back Burner Net render management software.

Cycles Area Light pleasant surprise

Software:
Blender 2.79

One of the features I would really like added to the Cycles Renderer is a photo-metric workflow.
That is the ability to set light sources intensity using real-world photo-metric units, load IES photo-metric data, have a physical daylight system, and set photographic camera exposure and white-balance for the output image.

While Cycles currently doesn’t have a fully functional photo-metric workflow,
It is equipped with some important basic ingredients needed for the development of such a workflow.

One Of these features is the Black-Body color conversion node that allows specifying color by Kelvin color temperature,
Another is the procedural Sky texture featuring Hosek / Wilkie and Preetham physical sky models, that can also be controlled according to global position, date and time with this addon.

Recently I’ve had a pleasant surprize finding out that Cycles actually has another important feature for a photometric workflow, and that is that Cycles Area Lights maintain a fixed general light output (‘Luminous Flux’) while area is changed and changes specular intensity correctly to so that the smaller the light source area, the greater its brightness (as it should physically be).
* This in difference to the way a mesh light with an emission shader behaves where the light output is per area and therefore increases or decreases when changing the shape and size of the surface.

This makes designing light sources with a fixed total output of light yet different shape, and therefore different specular reflection, shading, shadow softness possible,
And is in itself a valuable feature in realistic light source design.
* Especially coupled with setting the light color using Kelvin color temperature (Black-body node)
The only thing missing is the an ability to specify the total output of the light source in Lumens (lm) units.

I have encountered a mentioning of Cycles having a physical scale conversion ratio here:

http://www.3d-wolf.com/camera.html

Marco Pavanello, the developer of the Blender ‘Real Camera Addon‘ wrote:
“In Blender the Emission Node Strength is measured in W/m^2”
I haven’t had the time yet to seriously find out how that should be translated to intensity in lumens..
* It  should be noted that both the Cycles Area light and mesh light use the Emission shader as there source for intensity / color settings, but differently,
You can see in the demonstrations below that for a light source of the same surface area a significantly larger strength value is needed to produce roughly the same light output as the light mesh and this is probably due to the output being internally divided by surface area which is in fact the subject of this post.

Here are some renders to illustrate the point, and the diffrent behavior of light mesh (mesh with an Emission shader)
I’ve added a rough glare effect that depends on float color intensity to illustrate the way the specular highlight intensity increases as the area of the ligt source gets smaller while overall light output is the same:

AREA_Sizes
Cycles Area Light with different sizes but same strength
MESH_Sizes
Cycles Mesh Light using an Emission Shader with different sizes but same strength

MESH_Sizes_Compensation

Cycles Mesh Light using an Emission Shader with different sizes and strength changes to compensate

Arnold renderer – First impressions

Software:
Maya 2018 | Arnold 5

As a 3D rendering instructor I’ve been recently required to get familiar with rendering animations using Arnold for Maya so that I’ll be able to train VFX / Animation students to do so.

So today, after about 15 years since the last time I worked with Maya, I installed the latest version of the software’s educational edition on my PC, and started finding my way around the basics, and rendering with the Arnold renderer.

So obviously, the Arnold renderer is a state of the art production ray-tracer for the film VFX industry, and it sure feels that way with its no-nonsense super-realistic uncompromising physical approach to all the aspects of rendering, giving the artist total freedom to configure whatever he or she can possibly want,
And for someone with an understanding of physical definitions of light sources, optical attributes of surfaces, physical shaders and the technical process of ray-tracing, it’s an absolute joy to use.

So what’s the problem?

The problem is that the Arnold renderer wasn’t developed as a practical rendering solution for independent artists relaying on one or two PC CPU’s as the main rendering work force.
Arnold’s Brute Force rendering approach is very convenient to use and provides awesome shading quality, but it requires massive processing power to be practical in production of animations, even with today’s multicore desktop CPU revolution that was started with AMD launching the Ryzen chips.

* I must admit that (in the field of 3D visualization) I got spoiled by using Mental Ray and V-Ray over the years and got used to rendering with at least 3 bounces of indirect diffuse illumination,
Something that using interpolated GI calculations like irradiance caching and such can be done relatively fast on a desktop PC, but using accurate Brute Force to do it (on a desktop PC CPU) makes it impractically too slow.

The good news:

A) The GPU rendering revolution that was enabled by the nVidia Cuda technology is making massively parallel Brute Force rendering practical at a fraction of the price of CPU processing power.
Example:
About 3 years ago I decided I must check what’s this “Cuda rendering” all about, so I purchased a Geforce Gtx Titan Black GPU (Geforce 7 series) for about 1200$.
That GPU had Brute Force rendering power equivalent to about 16 3Ghz CPU cores.
Today you can get the same speed and memory with a 300$ Geforce Gtx 1060 GPU.
But Arnold isn’t a GPU renderer.. one may rightfully say….
* It should be said that GPU rendering is currently limited in the amount of memory compared to CPU rendering, and also OSL shaders are not supported.

B) Cycles renderer, Blender’s own built-in render engine is a GPU renderer, and it’s very similar to Arnold in its highly physical no-nonsense Brute Force rendering approach.
So if you wish to enjoy an “Arnold Style” physical shading and Brute Force rendering workflow in a small indie studio environment, GPU rendering with Blender and Cycles is a good way to do that, plus the software is free.
A relatively modest investment in 2 Geforce Gtx 1070 GPUs will give you Brute force rendering power roughly equivalent to 40 3Ghz CPU cores, at about a 4th or a 5th of the price it would cost in CPU’s.

All that being said..
Arnold is absolutely awesome! 😀

Update:
It seam that a version of Arnold that can render on GPU is on it’s way, and this is great news!