giriiş #
“Gama düzeltmesi” aslında insan görsel sistemimizin doğrusal olmayan yapısına dayanan bir veri sıkıştırma tekniğidir. Sınırlı sayıda biti kullanarak, yoğunluk değişimlerine daha duyarlı olduğumuz karanlık seviyeleri daha fazla kodlarken, aydınlık seviyeler daha seyrektir. Bu nedenle, kayan noktalı çıktı formatlarının buna ihtiyacı yoktur, çünkü kayan noktalı sayılar tanım gereği üstel olarak kodlanır.
V-Ray’in matematiksel olarak doğru hesaplamalar yapabilmesi için, giriş ve çıkış renk verilerinin doğrusal olması gerekir. Sonuçlar yalnızca görüntüleme için doğrusal olmayan bir renk uzayına (örneğin sRGB) dönüştürülmelidir. Buna doğrusal iş akışı denir .
Varsayılan olarak VFB (V-Ray Frame Buffer) sRGB seçeneği etkinleştirilmiştir, bu nedenle orijinal doğrusal görüntüyü sRGB uygulanmış bir işlem sonrası görüntü olarak göreceksiniz. VFB’den veya VRayRenderer::VFB::saveImage() ile kaydettiğiniz dosyalar , EXR veya VRIMG gibi kayan noktalı bir biçimde kaydedilirse, gerçek veriler gibi doğrusal olacaktır. Öte yandan, çoğu 8/16 bit tamsayı biçimi verilerini örtük olarak gama kodlu olarak kaydeder (örneğin JPEG, renk kodlaması için ~2,2 gama uygular. JPEG okuyan uygulamalar bunu işler ve verileri gerekli renk uzayında, gama kodlu veya doğrusal olarak çözülmüş olarak görüntüler). saveImage() ile veya VFB düğmesinden bu tür tamsayı dosya biçimlerine kaydetmek, sRGB dönüştürmesi de dahil olmak üzere VFB’de yapılan tüm renk düzeltmelerini de kaydeder. Bu nedenle bu dosyalar, VFB’de gördüğünüz gibi görünecektir. Bu durum EXR ve VRIMG için geçerli değildir.
CGArena’da doğrusal iş akışı (LWF) hakkında iyi bir makale var .
Parametreler #
Renk eşleştirmeyi kontrol eden eklentiye SettingsColorMapping adı verilir . Şu parametrelere sahiptir:
-
Tür – Renk eşleme türü. Aşağıdakilerden biri:
-
0 – Doğrusal
-
1 – Üstel
-
2 – HSV Üstel
-
3 – Yoğunluk üstel
-
4 – Gama düzeltmesi
-
5 – Yoğunluk gama düzeltmesi
-
6 – Reinhard
-
-
affect_background – Renk eşlemesinin arka planı etkileyip etkilemeyeceğini belirtir.
-
dark_mult – type değeri Linear multiply, Exponential, HSV exponential veya Intensity exponential olarak ayarlandığında koyu renklere uygulanan çarpanı belirtir . Varsayılan değer 1.0’dır.
-
bright_mult – type değeri Linear multiply, Exponential, HSV exponential veya Intensity exponential olarak ayarlandığında parlak renklere uygulanan çarpanı belirtir . Varsayılan değer 1.0’dır.
-
gamma – Renk eşleme modundan bağımsız olarak çıktı görüntüsü için gama düzeltmesini kontrol eder. Örneğin, görüntüyü 2,2 gama ekran için düzeltmek için bu parametreyi 2,2 olarak ayarlayın.
-
subpixel_mapping – Renk eşlemesinin nihai görüntü piksellerine mi yoksa tek tek alt piksel örneklerine mi uygulanacağını kontrol eder. V-Ray’in eski sürümlerinde bu seçeneğin her zaman etkin olduğu varsayılıyordu. Ancak daha yeni sürümlerde varsayılan olarak devre dışı bırakılmıştır, çünkü bu daha doğru render’lar üretir.
-
clamp_output – Etkinleştirildiğinde, renk eşlemesinden sonra renkler sınırlandırılacaktır. Bu, enerji kaybı nedeniyle sonucu fiziksel olarak hatalı hale getirecektir. Bazı durumlarda bu istenmeyen bir durum olabilir. Örneğin, görüntünün HDR bölümlerini de kenar yumuşatma işlemine tabi tutmak istiyorsanız, sınırlandırmayı kapatın.
-
clamp_level – Renk sınırlandırması açık olduğunda renklerin sınırlandırılacağı seviye.
-
adaptation_only – Görüntüye renk eşleme ve gama uygulanıp uygulanmayacağını belirtir:
-
0 – Hem renk eşleme hem de gama uygulanır – Hem renk eşleme hem de gama nihai görüntüye işlenir.
-
1 – Hiçbir şey uygulanmaz – Ne renk eşleme ne de gama son görüntüye işlenmez. Ancak V-Ray, renk eşleme ve gama uygulanmış gibi tüm hesaplamalarına devam eder (örneğin, gürültü seviyeleri buna göre düzeltilir). Bu, örneğin, daha sonra görüntüye bazı renk düzeltmeleri uygulayacağınızı biliyorsanız, ancak kompozisyon amacıyla görüntünün kendisini doğrusal uzayda tutmak istiyorsanız yararlı olabilir.
-
2 – Yalnızca renk eşleme uygulanır – Son görüntüye yalnızca renk eşleme uygulanır, gama düzeltmesi uygulanmaz. Bu önerilen seçenektir. V-Ray, hem renk eşleme hem de gama uygulanmış gibi görüntüyü örneklemeye devam eder, ancak nihai sonuca yalnızca renk düzeltmesini (Doğrusal, Reinhard vb.) uygular.
-
-
linearWorkflow – Bu seçenek kullanımdan kaldırılmıştır ve yeni sahnelerde ayarlanmamalıdır . Yalnızca doğru doğrusal iş akışı dikkate alınmadan ayarlanmamış eski sahneleri hızlı bir şekilde dönüştürmek için tasarlanmıştır. Bu seçenek, doğru bir doğrusal iş akışının yerini tutmaz – aşağıya bakın. Bu etkinleştirildiğinde, V-Ray, sahnenizdeki tüm BRDFVRayMtl materyallerine gama parametresinde ayarlanan gama düzeltmesinin tersini otomatik olarak uygulayacaktır.
-
Pozlama – Ek görüntü pozlaması (renk olarak). Her renk kanalına farklı değerler uygulanabilir.
Etkinleştirildiğinde, Sıkıştırma çıkışı seçeneği, Yalnızca Uyarlama seçeneğinin değerinden bağımsız olarak etkili olacaktır .
Önerilen ayarlar #
Doku dosyası varlıkları için doğru iş akışı, renk eşlemesini BitmapBuffer veya RawBitmapBuffer aracılığıyla kontrol etmektir . Görüntü dosyası renklerini dönüştürmek için birkaç parametreleri vardır: transfer_function , rgb_color_space , gamma .
En önemlisi transfer_function’dır ( geriye dönük uyumluluk için color_space olarak da adlandırılır ). Şu değerleri destekler:
-
0 – doğrusal
-
1 – gama düzeltmesi yapılmış (varsayılan)
-
2 – sRGB
-
3 – otomatik
Çoğu tamsayı formatı (bmp, png, jpeg, tiff) transfer_function=2 ayarını gerektirir .
Gamma parametresi yalnızca transfer_function=1 olduğunda kullanılır. Hem transfer_function=1 hem de gamma=0.4545 ayarlarını yapmak, transfer_function=2 ayarına benzer (ancak tamamen aynı olmayan) bir sonuç verecektir.
`rgb_color_space` , dokunun doğrusal RGB renk uzayını belirten bir dize parametresidir. Olası değerler şunlardır:
-
” ham ” (varsayılan, dönüştürme yok)
-
sRGB için ” lin_srgb “
-
” acescg ” for ACEScg
OCIO ortam değişkeni ayarlanmışsa veya SettingsUnitsInfo::ocio_config_file parametresi ayarlanmışsa, değer OCIO yapılandırmasında bulunan herhangi bir renk uzayı olabilir. Bu dönüştürme, aktarım fonksiyonundan sonra uygulanır. transfer_function parametresi ayarlanmalıdır, aksi takdirde doku filtrelemesi doğru çalışmaz.
`linearWorkflow` parametresi yalnızca eski vrscene dosyalarıyla uyumluluk için tasarlanmıştır ve yanıltıcı adına rağmen 1 olarak ayarlanmamalıdır .
Bu ayarlar , VRayRenderer.setImprovedDefaultSettings() yöntemi (diğerleriyle birlikte) tarafından da belirlenir :
Örnekler #
Renk Eşleme Türleri #
Bu örnek, bazı renk eşleme türleri arasındaki farklılıkları göstermektedir.
Şibenik Katedrali modeli Marko Dabrovic (http://www.rna.hr) tarafından yapılmış olup, CGTechniques Radiosity yarışması için hazırlanan modellerden biriydi.


Yukarıdaki görsellerde de görüldüğü gibi, doğrusal çarpma eşleme yöntemi parlak renkleri beyaza sıkıştırarak görüntünün parlak kısımlarının “yanmış” görünmesine neden olur. Hem üstel hem de HSV üstel türleri bu sorunu önler. Üstel yöntem renkleri soluklaştırma ve doygunluklarını azaltma eğilimindeyken, HSV üstel yöntemi renk tonunu ve doygunluğunu korur.
