Blender Git Commit Log

Git Commits -> Revision a04c29e

Revision a04c29e by Sergey Sharybin (master)
May 8, 2017, 14:45 (GMT)
Fix crash and assert failure when using OCIO GLSL draw mode and color management disabled

The issue was happening when display device is set to None, which makes it so
all the color transformation is a no-op which does not really require any LUT.

This is something we can not know from Blender side easily, because LUT sampling
and related logic is fully done in OCIO library itself. The following happens:

- OCIO sees that no LUT is needed and uses simple pass-through logic in the
color conversion function.

- GLSL compiles sees that uniform used for LUT is unused in the GLSL code and
strips it out.

We can not know this from Blender side because technically any conversion to
the same space might be a no-op and that we wouldn't know without some tricky
parse of the OCIO configuration.

So for now we simply avoid crash but are disabling checks for existence of the
uniform.

Ideally would be nice to have some GLSL-code parses which gets the uniforms
from the code itself, so we can distinguish between typo in the uniform name
and uniform being optimized out.

Commit Details:

Full Hash: a04c29e8abae93bb27d22ce1d7322b793fc19fa9
Parent Commit: 883c62d
Lines Changed: +13, -3

1 Modified Path:

/intern/gawain/src/immediate.c (+13, -3) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021