Hi,
In this thread I will talk about comping ACEScg renders in Photoshop. This is a follow up on my ACES workflow in Vray for Modo
Photoshop doesn't support OCIO and most of the tools don't work in 32 bit. So this is more like a hack for working with ACEScg in Photoshop, typically you need something like Nuke, Fusion, Resolve or After Effects.. as they have proper color management and proper toolset for dealing with float EXRs.
Thanks to Simon Bjork for his help with this thread.
Notes about how Photoshop deals with Linear EXRs:
-Photoshop reads Float 16bit/32bit EXRs linearly, then it uses its own sRGB view transform to display the image. This sRGB view transform you cannot change or control unfortunately. We will get around this issue by creating our proper view transform.
-Photoshop 16bit mode uses integer, not float, so if you load half-float EXR you will be in 32 bit mode, and if you downgrade to 16bit it will be in integer mode so they will not match.
Dealing with ACEScg EXRs:
-Download OpenColorIO plugin for Photoshop CC here. Copy the file to your Photoshop plugin folder
-You can access the plugin inside Photoshop under Filter menu
-Now lets open up an ACEScg EXR and see how this works, navigate to the OpenColorIO plugin in the filter menu. You will see this UI
-Navigate to your ACES folder, in my case I'm using ACES 1.2
Input Space should be ACEScg, because my linear render uses ACEScg primaries
And for Output Space, pick your Output Transform that you used in the Vray Frame Buffer. In my case it is Output - sRGB which is basically (ACES)sRGB View Transform. I talked about this in details here
-We are gonna export a LUT for our Output Transform. Click on Export and set LUT type to .csp
Pick a path for your LUT and click Save.
-After saving the LUT close the OpenColorIO UI, don't click on OK because we don't need the colorspace conversion.
-Now lets load our LUT using a Color Lookup. Navigate to the path you saved your .csp LUT
-Now we need to counter the sRGB view transform that Photoshop uses by default. We can export another LUT using these settings,
-Add another ColorLookup, and load Inverse_sRGB.csp
The render now should exactly match what you have in the VFB
-it is very important to note that the 2 LUTs are basically your View Transform in Photoshop. This means you need to keep them always at the top of the stack, so any adjustments you do in 32 bit has to be under these 2 layers. This is important for Linear workflow, if you will comp light AOVs
-I will group the 2 LUTs now and name them View Transform.
-When you are done with your 32 bit adjustments you have 2 options. You can collapse the stack into one layer and go to 8 bit mode for final retouching. Another option if you still need to keep your image in Linear ACEScg colorspace, in this case just delete the view transform group then export an EXR (to use in Nuke or Resolve or whatever)
Alex Fry's method:
-He explained a different workflow in this post and it doesn't require the OpenColorIO plugin.
-Download this ICC profile
-Restart PS and lets open an ACEScg EXR, I will use the same one from the last example.
-Edit menu > Assign Profile and choose the ICC we just installed
-Now download this LUT by Alex Fry, And load it in a Color Lookup layer
Now it should match the Frame Buffer 1 to 1 , but problem with Alex Fry's method is that it is limited to ACES sRGB View Transform. I don't know how he generated the LUT, but it is an easier/better workflow in my view compared to OpenColorIO plugin.
Keep in mind that this workflow is a hack, only use if you don't have access to Nuke or Fusion or Resolve. Photoshop is very limited in dealing with linear EXRs and it doesn't have any color management.
Let me know if you have questions.
Best,
Muhammed
In this thread I will talk about comping ACEScg renders in Photoshop. This is a follow up on my ACES workflow in Vray for Modo
Photoshop doesn't support OCIO and most of the tools don't work in 32 bit. So this is more like a hack for working with ACEScg in Photoshop, typically you need something like Nuke, Fusion, Resolve or After Effects.. as they have proper color management and proper toolset for dealing with float EXRs.
Thanks to Simon Bjork for his help with this thread.
Notes about how Photoshop deals with Linear EXRs:
-Photoshop reads Float 16bit/32bit EXRs linearly, then it uses its own sRGB view transform to display the image. This sRGB view transform you cannot change or control unfortunately. We will get around this issue by creating our proper view transform.
-Photoshop 16bit mode uses integer, not float, so if you load half-float EXR you will be in 32 bit mode, and if you downgrade to 16bit it will be in integer mode so they will not match.
Dealing with ACEScg EXRs:
-Download OpenColorIO plugin for Photoshop CC here. Copy the file to your Photoshop plugin folder
Code:
C:\Program Files\Adobe\Adobe Photoshop 2020\Plug-ins
-Now lets open up an ACEScg EXR and see how this works, navigate to the OpenColorIO plugin in the filter menu. You will see this UI
-Navigate to your ACES folder, in my case I'm using ACES 1.2
Input Space should be ACEScg, because my linear render uses ACEScg primaries
And for Output Space, pick your Output Transform that you used in the Vray Frame Buffer. In my case it is Output - sRGB which is basically (ACES)sRGB View Transform. I talked about this in details here
-We are gonna export a LUT for our Output Transform. Click on Export and set LUT type to .csp
Pick a path for your LUT and click Save.
-After saving the LUT close the OpenColorIO UI, don't click on OK because we don't need the colorspace conversion.
-Now lets load our LUT using a Color Lookup. Navigate to the path you saved your .csp LUT
-Now we need to counter the sRGB view transform that Photoshop uses by default. We can export another LUT using these settings,
-Add another ColorLookup, and load Inverse_sRGB.csp
The render now should exactly match what you have in the VFB
-it is very important to note that the 2 LUTs are basically your View Transform in Photoshop. This means you need to keep them always at the top of the stack, so any adjustments you do in 32 bit has to be under these 2 layers. This is important for Linear workflow, if you will comp light AOVs
-I will group the 2 LUTs now and name them View Transform.
-When you are done with your 32 bit adjustments you have 2 options. You can collapse the stack into one layer and go to 8 bit mode for final retouching. Another option if you still need to keep your image in Linear ACEScg colorspace, in this case just delete the view transform group then export an EXR (to use in Nuke or Resolve or whatever)
Alex Fry's method:
-He explained a different workflow in this post and it doesn't require the OpenColorIO plugin.
-Download this ICC profile
-Restart PS and lets open an ACEScg EXR, I will use the same one from the last example.
-Edit menu > Assign Profile and choose the ICC we just installed
-Now download this LUT by Alex Fry, And load it in a Color Lookup layer
Now it should match the Frame Buffer 1 to 1 , but problem with Alex Fry's method is that it is limited to ACES sRGB View Transform. I don't know how he generated the LUT, but it is an easier/better workflow in my view compared to OpenColorIO plugin.
Keep in mind that this workflow is a hack, only use if you don't have access to Nuke or Fusion or Resolve. Photoshop is very limited in dealing with linear EXRs and it doesn't have any color management.
Let me know if you have questions.
Best,
Muhammed
Comment