Colormanagement and the 3D-View
Closed, ResolvedPublic


In a recent project i noticed something curios. (I reported something similar before, but had not a true way to provide a comparison) Suddenly the 3D-View was much brighter and had pale looking colors, but the texture painting was much much faster (about 10 to 100 times). Now i have two versions of a file. "hinata-only-12.blend" and "hinata-only-13.blend". In the first file the colors aren't normal, but the texturepainting is fast. In the second file i switched to "solid" before saving. It shows the normal colors as loaded. But as soon you go to "textured" and move the viewport a little it gets bright+fast.

I don't know what is triggering this change, but it does not always occur (in other files). If it doesn't switch to this mode then the texture painting is sloppy and very slow in comparison (I'm barely able to paint).

I appended two screenshots. The first shows the usual colors and the second of the "fast mode". Additionally i uploaded an archive with the blend files and textures to (It is 22 MB, that why i put it there, message me or leave a comment if you have problems with downloading the file)

Download URL:

Additional infos: r45534, Ubuntu 10.10 32bit, Geforce 7600 M.

I hope that you can reproduce the problem, because i heard from many other users that texture painting is very slow as well. But inside this "ugly" mode it is very fast. I guess there is some kind of bug in the details, which slows everything down so much. If you need more info give me any kind of instructions to get what you need.



PS: Enabling/Disabling VBO, Mip-Mapping, 16-Bit Textures, Anisotrophic Filtering makes no difference. It's like as if the reversal of the colormangement (linear to srgb) is somehow disabled or simply ignored by the driver, which makes it somehow much faster. That would/could mean that my driver/graphics card has a problem with this part of the shader, while this part is also a bottleneck for the performance. Maybe it can't execute the shader on the GPU and falls back to software mode for this shader, until even this mode can't handle it anymore.

I fixed the strange color switching to the lighter colors now, was an invalid opengl call that put things in an undefined state. However I still have no idea how this switch would suddenly increase performance for you.

Here with NVidia 8800 GTS on Ubuntu 11.04, and NVidia 9600M GT on OS X 10.7, there's no noticeable performance difference between the two.

Also, the bug I fixed seems to have been unrelated to color management. From what I can tell the invalid opengl call somehow caused an ambient color to be added to the model.

At first a big Thank You for the fix! It is now as fast as it should be and it is additionally in the right colors.

But i found something also something else. If I'm in "Blender Internal" with "Solid + GLSL + Textured Solid" and then switch to paint mode, the object painted on is displayed as "Textured + GLSL". Additionally GLSL seams to be a little bit to bright (hard to tell since there are lights in play).

I uploaded another version of the file. Just enable "textured solid", select the "top" and go into paint-mode. You should see that it is not drawn as textured solid.


I also appended three Screenshots:
#71: Anything normal in object mode
#73: GLSL used in paint mode with "full" shading
#74: The normal map is clearly visible.

PS: The file uses the same textures as the previous ones.

OK, that problem should now be fixed as well, it will show textured solid now in this case.