• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

How to export to Open EXR with alpha chanel without being premultiplied

Participant ,
Nov 14, 2019 Nov 14, 2019

Copy link to clipboard

Copied

How to export to (Open EXR with alpha chanel without being premultiplied)

 

just render to Open EXR with alpha packed up within frame and not being premultiplied?

 

 

Any thoughs?

Ofcourse88
TOPICS
How to

Views

17.4K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Explorer , Feb 12, 2021 Feb 12, 2021

Sorry, this DID work! I created a script file called EXR.jsx and added the code:

var section = "Misc Section";
var pref = "Allow writing straight alpha into EXR";
var type = PREFType.PREF_Type_MACHINE_INDEPENDENT;

if(app.preferences.havePref(section, pref, type))
{
	if(app.preferences.getPrefAsBool(section, pref, type))
	{
		alert("EXR straight alpha pref already set to TRUE.");
	}
	else
	{
		alert("EXR straight alpha pref was set to FALSE. Setting to TRUE.");
		
		app.preferences.savePrefAsBool
...

Votes

Translate

Translate
Enthusiast ,
Apr 29, 2021 Apr 29, 2021

Copy link to clipboard

Copied

Right, but EXR was created for use in 3D rendering, where alpha means transparency and renders are premultiplied. Premultiplied is in the spec.

 

I'm glad you're able to write a straight alpha and use it this way, but it was not the intention of EXR. It could also be a little risky because you're not guaranteed to get good RGB pixels in areas where the alpha is 0, but if it's working for you I'm glad.

 

If you think EXRs should support straight alpha, you can make your case to the steering committee.

 

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jun 11, 2021 Jun 11, 2021

Copy link to clipboard

Copied

The part about this being beyond the colorist's ability is not true anymore.    Their support team breaks everything out.    We are getting specs from D.I. houses now that show exactly how to do this in Nuke.     They're giving how-to documentation on multi-layer EXRs with 4 mattes per layer.       After Effects is woefully far behind the industry in this area.    We just got the ability to write timecode reliably in AE 2020.      Really puts AE artitst at a disadvantage here. 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Jun 11, 2021 Jun 11, 2021

Copy link to clipboard

Copied

After Effects can now export any channels you like in an EXR using Composition > Save Frame As > ProEXR. Granted, it's kind of a hack and doesn't go through the regular AE render queue, and you have to figure out how to set your layers up properly. But it works.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
Apr 30, 2021 Apr 30, 2021

Copy link to clipboard

Copied

Interesting. I've always considered straight alphas to be far superior to premult due to less colour polution in semi-transparent pixels and there's no risk of it being matted with the wrong colour. Premult is pretty terrible when the BG is not a solid colour as well but I suppose this happens less often when coming from a CG render. It surprises me that staright is not written into the spec as an optiona at least rather than the default.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
May 03, 2021 May 03, 2021

Copy link to clipboard

Copied

The OpenEXR spec says the image should be premultiplied, and that is assumed to mean premutiplied over black. When you premultiply over black and have 16- or 32-bit floating point pixels, you can generally convert back to straight without any noticeable loss, as After Effects does because it works with straight internally. Film compositing programs like Nuke are premultipled internally, so EXRs work smoothly there.

 

The advantage of straight alpha is you can recover RGB values in your transparent areas just by filling in the alpha. Or you can use the alpha for some completely different purpose like the guys above were trying to do.

 

The advantage of premultiplied alpha is if you have RGB values in an area with 0.0 alpha, this composites as a glow or a light ray—a purely additive element that doesn't block the background. If your 3D renderer can create glows, this is how they'll probably turn out, and you can't composite them properly in a program like After Effects without resorting to some tricks.

 

OpenEXR has some cool samples of non-zero RGB over zero Alpha. Try importing them into After Effects and then try setting alpha interpretation to Ignore.

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines