Black outlines/multiplication


#1

Hi all, struggling junior-ish vfx artist here. Having problems with multiplication/black outlines on my renders after taking them into Nuke. I have direct and indirect diffuse renders, AO and shadow renders. It seems no matter what I do, I cannot get rid of the black outline and it appears to be an issue for each separate pass. I think this is true because I changed the background environment colour on the render cam (from black) to red and green for the direct and indirect. Both red and green outlines show up in Nuke together. I assume it’s affecting my shadow renders too, although I can’t check it in Nuke and the problem remains with the other renders when I disable the shadows from the tree.

No combination of premult and unpremult node in any order in my Nuke tree or any other tweak in Maya seems to fix this issue for me.

Maybe it’s an issue with my backplate? I have no idea. It’s a targa sequence taken from 3D Equalizer.

Any suggestions or links would be greatly appreciated, thanks for reading.


#2

Yes, premultiplication expects a black back ground because it is multiplying the foreground by the alpha which will cause issues like this if it is not black. I would turn off primary visibility on the the background so it does not render so you get the default black.


#3

Thanks for your response. Yes, I was thinking that I wanted the default black. My rendercam display mode is overridden to ‘none’ with an environment colour of black - is that not the same thing? I’m now looking for some extra options to disable my image plane - hopefully one will cooperate with me.

Luckily, I’ve clicked some extra buttons in Nuke and got a result that should work for me, even if I don’t figure out the problem.


#4

I think maybe I missread you. Is the background color not being black coming from Nuke or the 3d app you are rendering out of?


#5

Is this in regard to my first post? I picked the red and green deliberately - The reason I showed them was to try to illustrate how there’s a definite outline around several of my passes that I can’t get rid of. The issue is that it seems to stay there no matter what I do.


#6

To sum this up, normally, the 3D object, which you want to composite in Nuke over a background plate, needs to be rendered on black background.

If you put separate passes together in Nuke, you need to insert an Unpremultiply node directly after each Read node to restore color information of semi-transparent pixels.

Once the passes are added together, you need a single Premultiply node at the end (before any blurring nodes and before merging your 3D object over the background plate).

This way, you avoid darkening of semi-transparent areas and anti-aliased / defocused / motion blurred edges.

I hope, this helps…


#7

I’m sorry I’m only just posting a reply GringoFX. Thanks for your post - I was looking for something to clear that up for me. I’ve got my nodes in the right place now but I still have a faint white edge along some of my composite in Nuke.

It’s hard for me to tell where it’s coming from but I think it’s the AO layer. Comping the scene without AO leaves a nice clean edge. I’ve only just managed to get the layer to display correctly too. The checkbox for “premultiplied” in it’s read node would always invert the white background to black, or, the other way around if I turned off “premultiply” in Maya. Frustrating and confusing! It’s fine now, although I’m not sure why.

So, for now, still just a faint white edge along some of the edges. I don’t know why I’m having such issues…


#8

Indeed, just like any other pass, the AO has to be on the black background at the point when you add it to the equation.
To remove the default white background from it, you can subtract white Constant by means of a Merge with the inverted alpha mask.

If you don’t want to use too many nodes, just add an Expression with the following in the channel fields:
r-1*(1-a)
g-1*(1-a)
b-1*(1-a)
this will produce the same result.