Iris Shaders

Iris Shaders

38M Downloads

Global display colour space setting(s) with support for proper handling by the shaderpack

rre36 opened this issue ยท 1 comments

commented

Basically most shaderpacks look wrong or rather unpleasant with wide gamut displays unless they're configured to not exceed the sRGB colour gamut, and as Windows' colour management doesn't really do anything on applications such as Minecraft I suggest the addition of a setting that allows the user to select the correct colour space that their display is configured for. This would come with two "paths" a shaderpack can choose so to speak when it comes to handling this.

Shaderpacks without explicit support for different output colour spaces (basically >95% of the currently existing shaderpacks):
With these packs it can be assumed that they are designed to output an sRGB image, thus all that has to be done is to run an additional shader ontop of the final image that converts the colour from sRGB into whatever output colour space is selected. This would ensure the correct look on displays with wider colour spaces than sRGB without having to modify the shaderpack itself.

Shaderpacks with explicit support for different colour spaces:
These packs could be identified by adding a flag such as SupportsColourManagement = true in shaders.properties, which would disable the generic sRGB->Display Space transform I've described above. The selected output colour space should be passed into the shaderpack as a macro value similar to other platform or version specific parameters (eg. #define DISPLAY_OUTPUT_SPACE <SRGB|DCI_P3|DISPLAY_P3|BT2020>), so that the shaderpack can then handle the correct output transform itself. This would allow certain shaderpacks that internally render in a wider colour gamut to leverage the wider colour space of the users display and a global setting on Iris' side would eliminate the need to manually set this per-shaderpack.

commented

well i forgot to close this