0821 - 24259735

SRGB – Linear Converter

Render-Engines wie zum Beispiel V-Ray arbeiten mit einem anderen Farb-Gammawert als andere Programme. Sie nutzen einen Wert von 1.0 (Linear Gamma) während wir auf unseren Bildschirmen generell mit einem Gammawert von 2.2 (sRGB Gamma) arbeiten. Das bedeutet das wir Texturen und Farbwerte die wir in V-Ray nutzen wollen eigentlich vorher korrigieren müssen, damit sie sich im entsprechenden Farbbereich befinden. Da diese am Ende des Rendervorgangs aufgehellt werden um auf Gammawert 2.2. Tippen wir zum Beispiel einen RGB-Wert von (128,128,128) im Shader ein erhalten wir im Render (186,186,186) und nicht den gewünschten Wert. Die meisten 3D-Programme sorgen jedoch automatisch dafuer das Texturen konvertiert werden, sobald wir sie in die Shader laden. Manchmal muss man jedoch dennoch selbst die Farbwerte konvertieren. Bei den Diffuse-Color-Werten des VrayMtl in 3DsMax kommt das vor. Wollen wir hier zum Beispiel einen Wert von (128,128,128) im Render dann müssen wir (56,56,56) als Wert eingeben damit nach der Korrektur auf einen Gammawert von 2.2 unsere Farbe korrekt ist. Damit man nicht immer die Umrechnungsformeln rauskramen muss, hab ich schnell einen Converter programmiert, der die Werte in die jeweiligen anderen Umrechnet. Es ist zwar noch ziemlich rudimentär implementiert, wird aber in Zukunft noch mehr Funktionen erhalten.

Tutorial Gamma 1.0 vs 2.2 Diffuse Teapot

Tutorial Gamma 1.0 vs Gamma 2.2 Verlauf


sRGB to Linear

expects RGB values ranging from 0-255

sRGB

RGB: (128,128,128)

Linear

RGB: (56,56,56)

Linear to sRGB

expects float values ranging from 0-1

Linear

RGB: (128,128,128)

sRGB

RGB: (186,186,186)