Luxcore To Aces Study

Discussion related to the LuxCore functionality, implementations and API.
User avatar
Sharlybg
Donor
Donor
Posts: 3076
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Luxcore To Aces Study

Post by Sharlybg »

Update
You can try Luxcore with Blender 2.93 actually with ocio Thanks a
very kind Blender developer Nyck. Hope he soon get an account on
the forum:
You can download this window build to test :
https://drive.google.com/file/d/18ph2O0 ... sp=sharing


Old infos


I have been studying recently How Aces Work and possible implementation Inside Blendluxcore.
Since Quite a while now Luxcore already support OCIO wich include ACES (you can view the thread Here :
viewtopic.php?f=5&t=3446)

Since it is also Possible to install ACES profile color management directly inside blender I also decide to give
it a go. For those willing to test here is a tutorial on how to do it : https://youtu.be/B7FWNNDXBl0
here is a lighter ACES Package for quick download : https://github.com/colour-science/OpenC ... s/tag/v1.2

The scene for the test is quite simple and was done to show main difference between Blender Cycles Aces And Luxcore under the same
Blender modified Aces color management.

Here are the result :

Cycles SRGb vs Luxcore SRGb
FlatSky_SRGB.jpg
Cycles ACES vs Luxcore ACES Flat color Sky
FlatSky ACES.jpg

First Conclusion : You can see that they look identical ( except that Luxcore is a bit brighter and cleaner due to Gi cache)
So color Input are respected



Cycles ACES vs Luxcore ACES Flat color Sky + textured floor
FlatSky+Texture ACES.jpg

Cycles ACES vs Luxcore ACES HDRi + textured floor
HDRi+Texture ACES.jpg


Second Conclusion : As soon as texture are involved huge difference spike due to the fact that it isn't yet possible to set texture input color space in Blendluxcore even if the core engine support it

So look like we just need this option to specify texture input color space and we are good to go with ACES in Luxcore.
1_Texture input color space
2_Hdri Color space
3_maybe there are some other part for texture input color space but you get the point.

How it look under Cycles :
Colorspace input.jpg
Last edited by Sharlybg on Sun Jul 10, 2022 4:10 pm, edited 1 time in total.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
Sharlybg
Donor
Donor
Posts: 3076
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Luxcore To Aces Study

Post by Sharlybg »

As color still work I just Push a bit to see the difference in color between
Blender Filmic And ACES both on Luxcore render :

ACES Luxcore
Aces_Kitchen.jpg

Filmic Luxcore
Filmic_High_Contrast.jpg
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
daros
Posts: 275
Joined: Thu Dec 12, 2019 3:25 pm
Location: inside human language
Contact:

Re: Luxcore To Aces Study

Post by daros »

Hi charles, thanks. One silly question: what happens if you don't know the texture color space?
PetrT
Posts: 81
Joined: Sun Dec 02, 2018 6:13 pm
Location: Russia
Contact:

Re: Luxcore To Aces Study

Post by PetrT »

usualy
jpg,png have Srgb color space
hdri - linear
User avatar
Sharlybg
Donor
Donor
Posts: 3076
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Luxcore To Aces Study

Post by Sharlybg »

In addition to what PetrT said.
If it happen that the colorspace of the texture is not correctly set you end with wrong color output as you can see in my first post with the wrong floor and hdri input color space.
But this is corner case as most image respect what PetrT said.
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
Luximage
Posts: 121
Joined: Sun Jan 14, 2018 8:01 pm

Re: Luxcore To Aces Study

Post by Luximage »

The images were rendered in blender 2.92, cycles and blendluxcore 2.5.
To match the scene results in cycles the house texture is a jpg in utility srgb texture colorspace and the hdr light set to acescg colorspace,
in blendluxcore the house texture is a converted exr with gamma set to 1 in the image node settings.

cycles aces display device, rec.709 view transform
cycles aces.jpg
luxcore aces display device, rec.709 view transform
luxcore aces.jpg
luxcore filmic high contrast look
luxcore filmic high.jpg
luxcore filmic medium contrast look
luxcore filmic medium.jpg

You can use Krita or Affinity photo to achieve the proper color space that is utility srgb texture you choose in cycles.
In Krita open a jpg texture, to setup aces from the menu bar go to settings/dockers/lut management, then in the lut management window check use opencolorIO, in the color engine choose OCIO and in configuration specify the path to aces ocio. If you want you can uncheck use opencolorIO, it's not necessary anymore. Now in the menu go to image/convert image color space, choose depth 16 bit float, profile acescg elle v4 and hit ok. Finally export your image as an exr file.

In Affinity photo setup aces in color preferences specifying the path to aces ocio, open a jpg texture and export it as 16 bit exr, load the
exported exr, put an ocio adjustment layer choosing utility linear srgb as source colorspace, leave role scene linear as destination colorspace, then export it again as an exr file replacing the old one. You must be careful not to do it all at once applying the adjustment layer to the jpg and then exporting it as exr because you will get a slightly different result.
PetrT
Posts: 81
Joined: Sun Dec 02, 2018 6:13 pm
Location: Russia
Contact:

Re: Luxcore To Aces Study

Post by PetrT »

Sharlybg wrote: Wed Apr 13, 2022 2:17 pm As color still work I just Push a bit to see the difference in color between
Blender Filmic And ACES both on Luxcore render :

ACES Luxcore
Aces_Kitchen.jpg


Filmic Luxcore
Filmic_High_Contrast.jpg
Aces IMHO looks more natural,and saves more details
PetrT
Posts: 81
Joined: Sun Dec 02, 2018 6:13 pm
Location: Russia
Contact:

Re: Luxcore To Aces Study

Post by PetrT »

https://youtu.be/iKsCZz4RrXI example of using and distinct result of using ACES
User avatar
Sharlybg
Donor
Donor
Posts: 3076
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: Luxcore To Aces Study

Post by Sharlybg »

You can use Krita or Affinity photo to achieve the proper color space that is utility srgb texture you choose in cycles.
In Krita open a jpg texture, to setup aces from the menu bar go to settings/dockers/lut management, then in the lut management window check use opencolorIO, in the color engine choose OCIO and in configuration specify the path to aces ocio. If you want you can uncheck use opencolorIO, it's not necessary anymore. Now in the menu go to image/convert image color space, choose depth 16 bit float, profile acescg elle v4 and hit ok. Finally export your image as an exr file.
Thanks Luximage for your nice tips. I tried It and it work for the Diffuse color texture as you explain for Krita.
But wonder how to do the convertion for Specular/roughness/bump maps and HDRi ...
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
Luximage
Posts: 121
Joined: Sun Jan 14, 2018 8:01 pm

Re: Luxcore To Aces Study

Post by Luximage »

For the hdr texture if you want to get the same result you get in cycles with utility linear srgb colorspace you can use the same process as you did in krita for the diffuse map. If it is a hdr and not an exr file you must first convert it to exr to some other program because krita doesn't support the hdr format.
For greyscale images such as specular and roughness maps you can just set the gamma to 1 in the image node settings, there seems to be no need for conversion. Also for the normal map texture you can just use it as usual, no need to convert it.
In the following example i used a specular, a roughness and a normal map texture. The same textures are used both for cycles and luxcore without a conversion, only the gamma is set to 1 in luxcore image nodes. The textures for cycles are set to raw colorspace.

luxcore aces
SPN aces luxcore.jpg
cycles aces
SPN aces cycles.jpg
Post Reply