After Effects cannot correctly interpret Alpha from Krakatoa


#1

I rendered some images that are to be composited in AE, in AE we are experiencing strange issues with the alpha channel. I must admit I am not an AE user, kind of hate the software, plus in Nuke, everything coming out of Krakatoa looks like it is supposed to look.

I am rendering OpenEXRs, 16Bit linear in Max, but I also tried TGA and TIFF. I used unpremultiplied images as well as premultiplied images (I unpremultiplied EXRs in Nuke and then fed them back into AE or rendered unpremultiplied TGAs out of Krakatoa), it didn’t work with both kinds of images.

The problem is they cannot push the images like they need to, for example changing the Gamma to 2,2 (via Effects > Color Correct > Exposure) only does as expected if I load the images without alpha into AE. No matter if they come in premultiplied or unpremultiplied and no matter what the format is. It feels like stupid AE does something to the alpha on import or at least has a very unique way of interpreting alpha channels, compared to Nuke or Fusion.

If I preview just the RGB without any Alpha inside AE, everything is looking fine…adding the alpha kills anything. Has anybody seen this or could at least lead me anywhere so I can fix this issue?

Thank you in advance!


#2

This topic might help.

viewtopic.php?f=22&t=8732


#3

Actually, it doesn’t.

First, I am previewing my particles without any Gamma/LUT correction and the cloud seems very dense, I also tried making it denser by increasing FPD - without any success in AE. The problem is no matter how dense my particles or Alpha is, in AE all ColorCorrect Effects or similar stuff have virtually no effect on my image unless I do away with the alpha.

Even when I first read the files into Nuke and then export a new EXR (or TIFF or whatever…) to AE, the issues remain. As far as I understand this, Nuke writes clean and new images…and AE seems to have problems with both. Krakatoa renderings read directly into AE as well as those first imported into Nuke and prepared for AE, there.

To me it looks like a problem in After Effects, not being able to correctly interpret some values real compositing software doesn’t have an issue with. All I’m looking for is a kind of workaround to give the AE team files they can work with (Motion Graphers, not having the slightest of ideas what terms like linear or bit depths actually mean).


#4

So if you make a PNG with a gradient from 0-1 across the x dimension in RGBA, and one where you make it only in A and set RGB to 1, neither of those are able to be loaded correctly in AE? And if they don’t, what are you seeing that’s different from the expected result?


#5

Neither are loaded correctly into AE, right. I created two PNGs 16Bit, linear and unpremultiplied as Nuke’s write node won’t allow me to premultiply images in linear colorspace.

The RGBA gradient is way too dark, completely misinterpreted. No matter if I say AE the footage was unpremultiplied or premultiplied it is displayed that way. If the alpha isn’t taken into account the image displays correctly.

The RGB = 1, Alpha = Gradient shows the gradient in the viewport, as if the image was premultiplied upon import. Also, Interpret Footage and switching through straight/premultiplied/no Alpha just shows the original image without any information in the alpha.


#6

The RGBA gradient, when unpremultiplied, should be the SAME as the RGB = 1 gradient (ok, maybe not on the first pixel if it’s actually A=0). So something is odd with it coming out of Nuke in that case?

But it’s also goofy that telling AE to premultiply or not doesn’t actually DO anything. And it’s PNG, not EXR, so it’s not like AE should have a problem with that either.

There’s many reasons we don’t use AE here. The “interpret footage” is one of the more objectionable ones. :frowning:


#7

because adobe does all it’s compositing maths wrong, you need to always provide it with unpremultiplied images when coming from software that does it correctly (max and nuke)

I wrote a plugin for max that is an effect. It just unpremults. I need to rebuild it for the latest versions. Failing that, you can load your images into nuke, add an unpremult node and render them back out.

When you pull them into aftereffects, set the alpha to be interpreted as straight. You will then have perfect edges and transparencies.

R


#8

FYI Krakatoa has an “Post-divide RGB by alpha” option that will convert to un-premultiplied alpha after a render. Its in the “Global Render Values” rollout of the renderer’s GUI. thinkboxsoftware.com/krak-gl … er-values/


#9

But it seems he’s tried that as well.


#10

Gees no sh!t, it is so aggravating that “professional” software is such a PITA to display an image that no one else seems to have issues displaying.


#11

I just went through this same thing and this is what helped.

-Rendering the files to exr.
-import the files into a 32 bit composition. This is key.
-Then use gamma correction or use preserve RGB in the interpret footage settings.
-Using an levels on the alpha channel also gives some control.


#12

“Helped” isn’t the same as “fixed”, though.

Can you confirm using some sort of unit test the correct import settings? Something about gamma correction and levels sound pretty suspicious, but AE is known to label things in a peculiar way. I’m with Rhys, Adobe can’t be trusted with the math, and their user-friendly interface to the bad math is just as bad. :slight_smile:


#13

This made my day!


#14

Don’t get me wrong, I have absolutely nothing against After Effects. It’s just not very good software.


#15

Hi Yes,

Helped is not the same as fixed , I would say it was super close to what I rendered in Max. What do you mean by unit test?


#16

Render out something where you know AHEAD OF TIME what the result will be. Something where the math is really simple. Like the gradient example. Render out one that is R=G=B=1, but has a gradient in A, and one where R=G=B=A across a gradient. Those two images would represent the unpremultiplied and the premultiplied images. Using those you can figure out exactly how the images are being interpreted by the software.

There’s more complex patterns that can help you determine visually if there is any gamma correction or other effects going on, but basically what you want can be tested with a very simple image where A varies and RGB either matches or does not.


#17

pieforme:

Five years on from your post, I’m so glad I found your solution regarding the 32 bpc setting in AE. I’d abut given up trying to work it out.