Jump to content

Fixing the awful green tint


nandchan

Recommended Posts

Mod now has its own page: http://skyrimnexus.com/downloads/file.php?id=2644

 

Ignore this thread

 

I'm creating this thread to discuss, demonstrate and gather feedback on a mod I'm planning: A color management shader which will eventually completely fix the green tinting issues, done properly.

 

The reason I've decided to take matters into my own hands is that currently, there's a whole flood of “FXAA settings” mods out there that just slap on some bloom, up the saturation, apply tons of technicolor and sharpening, without really improving anything - only making it worse, or rebalancing the tint in another direction (eg. blue or red).

 

What I aim to do, however, is applying my knowledge of colorimetry and color science in order to achieve a truly white looking white inside the world of Skyrim.

 

Goals, both near and future:

 

1. Sample a lot of ingame screenshots to get a feel for how the white point and tone curve is mapped throughout the game, relative to a reference color space of sRGB - by assuming that the game was originally mastered for sRGB (due to the majority of monitors having this space)

 

2. Allow tailoring the reference input and output spaces according to your preferences and topology, for example, the ingame colors could be mapped onto a wider color space like ProPhotoRGB to attempt to more closely model the real world illumination models. The major disadvantage here is that some form of perceptual mapping would have to be applied to prevent clipping on lower gamut monitors (basically every monitor except higher end laser projectors).

 

3. Tools for automatically detecting the currently loaded ICC profile in Windows and mapping against its specified gamut, white point and tone curve - to compensate for the fact that d3d doesn't color manage its output (and, in fact, resets the CLUTs as well)

 

4. Generating a volume texture during load which would work as a massive 3DLUT, allowing for full mapping in all three dimensions beyond what's reasonably possible in realtime, eg. L*Ch desaturation, gamut border detection, 3D gamut perceptual mapping, black point compensation and so on.

 

5. Miscellaneous, colorimetrically correct adjustments like chroma saturation (in L*Ch linear space) and gamma adjustments (eg. to an sRGB curve or 2.4 PPC, for playing in a very dark room) - but these will all be optional and disabled by default.

 

To demonstrate the kind of changes I'm planning to make, consider this very small demonstration. To generate it, I simply forced the weather to a clear sky, took an average sampling of the sun + its “halo” at midday (assumed to be sRGB with 2.2 PPC for simplicity here), calculated a chromatic adaptation matrix to shift from the measured whitepoint to sRGB's D65 (neutral tonemap), then reconverted back into sRGB/2.2 for output:

 

Vanilla: http://img706.imageshack.us/img706/9162/tesv2011112115565173.png

Shader: http://img265.imageshack.us/img265/3189/tesv2011112115565374.png

 

The effect is that, well, the white clouds appear white. If your monitor is calibrated to sRGB/D65, it will have the same white color as the European midday sunlight.

 

The shader code I used to generate this example is:

 

http://pastebin.com/aYrAXfSG

 

As you can see, it's still in a very early stage. I hope to expand on the idea much further though, if this gains any weight/support.

Edited by nandchan
Link to comment
Share on other sites

No, cool grey to neutral grey.

 

If you open up the “before” screenshot and go through some of the cloud values with a color picker, you'll see values like 200/215/221 - definitely biased towards blue and green.

 

The goal of this mod would be to get those gray values to something more neutral, eg. 213/215/218 for the above example. The current “after” screenshot is still biased towards the blue/green though, but I only spent a few seconds measuring the values - there's plenty of room for tuning and improvements.

 

Warm gray, on the other hand, would be biased towards the red spectrum, eg. 221/215/200.

 

See this comparison for an example:

 

http://img11.imageshack.us/img11/8913/graycomp.png

 

Don't let your eyes deceive you, the center square is perfectly neutral gray, the left is biased towards blue/green, and the right is biased towards red/green.

 

Note: It may be possible that it looks different for you, because your monitor is configured incorrectly. But, on a correct monitor, the perfect square would be perfectly gray, that is, having a hue of exactly D65.

Edited by nandchan
Link to comment
Share on other sites

You might want to start working with this then:

 

http://www.skyrimnexus.com/downloads/file.php?id=822

 

Not only does it fix the horrible tint, it also adds a lot more depth, enhances bloom, increases lighting fidelity and fixes the washed out colours. Give the palette file a spin, see what you can come up with. I'll be keeping an eye on anything you work on, you seem to have a lot of knowledge about general colour/lighting.

Link to comment
Share on other sites

You might want to start working with this then:

 

http://www.skyrimnexus.com/downloads/file.php?id=822

 

Not only does it fix the horrible tint, it also adds a lot more depth, enhances bloom, increases lighting fidelity and fixes the washed out colours. Give the palette file a spin, see what you can come up with. I'll be keeping an eye on anything you work on, you seem to have a lot of knowledge about general colour/lighting.

 

Thanks for the suggestion, but I won't be basing this off anything at all, for a couple of reasons.

 

1. A fresh approach is needed. I don't want to change the palette, I want to transform the existing palette into a more realistic color space. The important distinction is that the ratios will be preserved. If something is red, and something else is a little bit more red, or a slightly greener red in the original, then those ratios will be preserved after chromatic adaptation.

2. “Enhancing depth” is marketing buzz for “oversaturated and crushed blacks”. It's simply not good.

3. When it comes to bloom, less is bad. I wouldn't touch the vanilla bloom at all, it's already too much. Especially the engine's HDR is horrible, the change is much too fast. But I can't fix that without losing precision, since the image I get is already saturated down to integer range.

 

I will be adding the option of improving the “washed out” colors, as I mentioned in the first post. But such things should neither be forced nor default, because many people, me included, don't like saturated colors.

Edited by nandchan
Link to comment
Share on other sites

Interesting.

One question though: Could it not be that this hue was choosen on purpose?- You know to make the image colder.

Anyway I for once would like to see what you can do and how the game will look in the end.

 

Looks good but next time you think about typing the phrase "my knowledge of colorimetry and color science" you should have more than a few pictures of grey clouds to back it up.

 

I think that was rather uncalled for.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...