Noise und Gamma
Verfasst: 05.03.2009, 14:58
Hi,
Ich lege gleichmäßigen Noise über mein Bild. Soweit, so gut.
Nun ist meine Render-Target-View allerdings im sRGB-Format, wird also nach dem Shader Gamma-korrigiert. Für den Noise – der im linearen Farbraum vorliegt – bedeutet das aber, dass er in dunklen Bereichen ganz anders zur Geltung kommt als in hellen.
Eine Lösung wäre, den Input ans Gamma anzupassen, dann den Noise aufzuaddieren und das Ergebnis wieder in den linearen Farbraum zurück zu konvertieren … nur, damit er dann beim Schreiben ins Render-Target automatisch wieder ans Gamma angepasst wird …
Meine Fragen also:
– Lässt sich Noise auch Gamma-korrigiert anwenden, ohne dabei Gamma auf den Frame anzuwenden und wieder umzukehren?
– Falls das nicht geht: Überwiegen die Vorteile eines sRGB-Render-Targets (Konvertierung in Hardware) überhaupt noch oder wäre es besser, direkt in ein normales Render-Target zu schreiben (wo ich die Gammakorrektur dann ja eh im Shader durchführen muss)?
Gruß, Ky
Ich lege gleichmäßigen Noise über mein Bild. Soweit, so gut.
Nun ist meine Render-Target-View allerdings im sRGB-Format, wird also nach dem Shader Gamma-korrigiert. Für den Noise – der im linearen Farbraum vorliegt – bedeutet das aber, dass er in dunklen Bereichen ganz anders zur Geltung kommt als in hellen.
Eine Lösung wäre, den Input ans Gamma anzupassen, dann den Noise aufzuaddieren und das Ergebnis wieder in den linearen Farbraum zurück zu konvertieren … nur, damit er dann beim Schreiben ins Render-Target automatisch wieder ans Gamma angepasst wird …
Meine Fragen also:
– Lässt sich Noise auch Gamma-korrigiert anwenden, ohne dabei Gamma auf den Frame anzuwenden und wieder umzukehren?
– Falls das nicht geht: Überwiegen die Vorteile eines sRGB-Render-Targets (Konvertierung in Hardware) überhaupt noch oder wäre es besser, direkt in ein normales Render-Target zu schreiben (wo ich die Gammakorrektur dann ja eh im Shader durchführen muss)?
Gruß, Ky