- 0. Bu kimin için?
- 1. Giriş
- 2. Kamera konumunun belirlenmesi
- 3. Işıklandırma oluşturma
- 4. Geometri oluşturma
- 5. Malzemelerin oluşturulması
- 6. Sahne ve render ayarları
- 7. Minimum işlenebilir sahne
- A. Kısa eklenti referansı
0. Bu kimin için? #
Bu kılavuz, ana uygulama sahnesindeki verilerden V-Ray ile render almak için bir sahne oluşturmak üzere Uygulama SDK’sını kullanmak isteyen kullanıcılar içindir. Burada Uygulama SDK’sı ile kod yazma detaylarını ele almayacağız – bunun için SDK paketinde ayrı belgeler ve örnekler bulunmaktadır. Bunun yerine, sahneye hangi V-Ray eklentilerinin ekleneceğini, bunların nasıl bağlanacağını ve hangi parametrelerin ayarlanacağını ele alacağız.
Not: Bu belge zaman içinde güncellenecek ve genişletilecektir.
1. Giriş #
1.1. Terminolojiye dair bir not #
-
Eklenti : “Eklenti” terimini çok sık kullanıyoruz . Teknik olarak, V-Ray için bir eklenti DLL’si (V-Ray’in kendisi de bir tür eklentidir) veya içinde tanımlanan tür, örneğin programlama anlamında bir sınıf veya son olarak bellekte bulunan ve bir sahne dosyasına kaydedilebilen bu sınıfın bir örneği anlamına gelebilir. Biz burada “eklenti” terimini eklenti örneklerine atıfta bulunmak için kullanacağız .
-
Dışa aktarıcı/çevirici : Yerel sahne formatını V-Ray sahne formatına çeviren yazılıma, birbirinin yerine dışa aktarıcı veya çevirmen diyoruz . Temel olarak yaptığı şey, bir dizi V-Ray eklentisi oluşturmak ve parametrelerini ayarlamaktır. Ayrıca, sahneyi (zaten çevrilmiş olan) bir *.vrscene dosyasına kaydetme eylemine atıfta bulunmak için bazen “dışa aktarmak” fiilini de kullandığımızı unutmayın.
1.2. V-Ray sahne içeriği #
V-Ray sahnesini oluşturan eklentileri gayri resmi olarak üç tür olarak tanımlayabiliriz.
Bunlardan ilki, herhangi bir eklenti ağacının parçası olmadan kendi başlarına var olabilen “üst düzey” eklentilerdir. Örneğin, ışıklar üst düzey eklentilerdir. Elbette diğer eklentilerden de girdi alabilirler, ancak diğer eklentilere değer göndermezler.
Üst düzey olmayan eklentiler, belirli bir türde eklenti gerektiren parametre yuvaları için girdi görevi görür. Örneğin, bir malzeme eklentisi isteğe bağlı bir doku girdisi gerektirebilir ve burada bir doku eklentisine referans verirsiniz. Doku eklentisi bir UVW oluşturucudan girdi alabilir ve benzeri.
Üçüncü tür ise yalnızca bir örneği olan özel bir üst düzey eklenti türüdür. Bunlar temelde ayar eklentileridir. Çoğunun adında “Ayarlar” ifadesi bulunur, ancak birkaçında bulunmaz. V-Ray kamerası da bu tür tekil bir ayar eklentisi tarafından tanımlanır.
7. bölümde küçük bir örnek sahne bulunmaktadır. Bu sahnenin içeriği, sonraki bölümleri okuyarak anlaşılabilir hale gelecektir.
1.3. Parametre türleri #
Aşağıda, bir V-Ray sahnesinde (örneğin .vrscene dosyası) tanınan türler yer almaktadır. Bunların farklı Uygulama SDK dil bağlamalarında karşılık gelen türleri vardır. SDK, mümkün olan her yerde ilgili temel dil türlerini kullanır ve geri kalanlar için özel tür sınıfları tanımlar.
-
Temel veri tipleri: int, bool, float, Color (3 float RGB), AColor (4 float ARGB), Vector (3 float ), string (UTF-8), Matrix (3 Vector ), Transform (öteleme için bir Matrix ve bir Vector ).
-
Nesneler: Diğer eklenti örneklerine yapılan referanslar.
-
Türlü listeler: App SDK’deki türlü listeler IntList , FloatList , ColorList , VectorList , TransformList ve PluginList’tir .
-
Genel heterojen listeler: C++’da, Uygulama SDK’sı genel bir listedeki öğeler için Value adlı genel bir tür sınıfı kullanır . C#, Python ve Node.js’de ise yerel dil türleri (listeler veya diziler) kullanılır. Genel listelerin iç içe geçebileceğini unutmayın.
-
Çıkış parametreleri: Bunlar, belirli bir eklenti tarafından oluşturulan ve diğerleri tarafından girdi olarak kullanılabilen ek değerlerdir. Örneğin, TexAColorOp eklentisi (5.2 bölümünde açıklanmıştır) doğrudan bir doku olarak referans alınabilir ve varsayılan renk dokusu çıktısını verir, ancak farklı sonuçlar için toplam, fark, maksimum vb. diğer çıktılarından herhangi birine de referans verebilirsiniz (Not: Bazı durumlarda bir çıkış parametresini bir giriş parametresine doğrudan bağlamak işe yaramayabilir, bu nedenle bağlantıyı TexAColor veya TexFloat gibi bir sarmalayıcı eklenti aracılığıyla yapmanız gerekir ). App SDK’da çıkış parametreleri , bir eklenti referansını ve bir çıkış adını birleştiren PluginRef türüyle temsil edilir .
Parametre polimorfizmi, V-Ray’in önemli bir özelliğidir. Doku parametreleri basit (temel) değerler kabul eder, bu nedenle tek bir renk üreten ek bir doku eklentisi oluşturmak yerine, doku yuvasına bir Renk değeri atamanız yeterlidir. Aynı şey kayan noktalı dokular ve tek kayan noktalı değerler için de geçerlidir. Ayrıca, yukarıda açıklandığı gibi bir doku parametresinin değerini bir çıktı parametresine de atayabilirsiniz.
1.4. V-Ray sahne dosyası formatı #
V-Ray, metin tabanlı bir sahne dosyası formatı (.vrscene) kullanır. Oldukça basit olması, hata ayıklamayı ve elle değiştirmeyi kolaylaştırır. Format büyük/küçük harf duyarlıdır ve JSON’a biraz benzer. Geometri tanımları gibi büyük veri değerleri sıkıştırılabilir (ve metin olarak kodlanabilir). Dosya, ardışık eklenti örneği tanımlarını içerir: tür, örnek adı, parametre listesi. İç içe yerleştirme desteklenmez.
Başlıca kurallar şunlardır:
-
Her eklenti örneği, tür adıyla başlayan, ardından bir boşluk, örnek adı, başka bir boşluk ve açılış küme paranteziyle devam eden yeni bir satırda tanımlanır.
-
Her parametre, adıyla, her iki tarafında boşluk bulunmayan bir eşittir işaretiyle ve değeriyle birlikte yeni bir satıra yazılır. Satır noktalı virgülle biter. Liste gibi uzun değerler için parametre tanımlama satırı birden fazla satıra bölünebilir.
-
Diğer eklentilere yapılan referanslar, örnek adlarının tırnak işaretleri olmadan yazılmasıyla tanımlanır. Çıkış parametreleri de aynı şekilde, ek olarak çift nokta üst üste ve parametre adı ( instance_name::out_param_name ) ile belirtilir.
-
Eklenti tanımının sonu, yeni bir satırda kapanış paranteziyle işaretlenir.
-
C++ tarzı tek satırlık yorumlar desteklenmektedir.
-
Dosyalar, C dilinde olduğu gibi `#include “another.vrscene”` yönergesiyle bir araya getirilebilir.
-
Dosyanın ilerleyen kısımlarında tanımlanacak olan eklentilere atıfta bulunulabilir.
-
Ayrıştırıcı, girintilere ve boş satırlara kayıtsızdır. Tek kural, parametreler için değer atama operatörünün (=) etrafında boşluk olmamasıdır.
Sahne dosyaları V-Ray tarafından oluşturulmalıdır. Bunları kendiniz yazmaya çalışmamalısınız, ancak elbette bunları elle değiştirmekte özgürsünüz.
Şunu belirtmekte fayda var ki, eklenti örneklerinin tanımlanma sırası genellikle önemli değildir. Bu durum, bir sahneyi dosyaya dışa aktarmasanız bile, bellekte oluşturulan sahneler için de geçerlidir. Kamera ile ilgili ayarlar eklentileri gibi birkaç istisna vardır; V-Ray bunları belirli bir sırayla işlemezse doğru çalışmayabilirler.
1.5. Varsayılan değerler #
Her parametrenin varsayılan bir değeri vardır, bu nedenle “boş” bir eklenti örneği oluşturduktan sonra bile aslında tamamen işlevseldir. Elbette, örneğin geometri eklentilerinde olduğu gibi veriye ihtiyaç duyabilir, ancak bir ışık hemen çalışır (0 koordinatına yerleştirilir). Bununla birlikte, bazı eklentilerin neredeyse her zaman değiştirilmesi gereken sakıncalı varsayılan değerleri vardır (örneğin, görüntü örnekleyici ayarları veya bazı gölge parametreleri gibi bazı ayar eklentileri). Varsayılan değerleri genellikle düzeltemeyiz, çünkü mevcut kullanıcı sahnelerini bozar. Bununla birlikte, ne yaptığınızı bilmiyorsanız, varsayılan değerlere bağlı kalmanız önerilir. Elbette denemeler yapabilirsiniz, ancak anlamadığınız değerleri kullanmayın, çünkü bunlar performans veya kalite sorunlarına yol açabilir veya hatta fiziksel mantığı bozabilir.
Bir vrscene dosyasını dışa aktardığınızda (kaydettiğinizde), bunları siz oluşturmamış olsanız bile her zaman bir sürü ayar eklentisi içereceğini unutmayın. Bunların varsayılan parametre değerleri olacaktır. V-Ray dosyaları her zaman bu şekilde kaydeder.
1.6. Hata ayıklama ve yardım #
Uygulama SDK’sı ve bu kılavuzla birlikte gelen dokümantasyonun yanı sıra, docs.chaos.com adresindeki 3dsMax ve Maya yardım sayfaları, parametre bilgileri ve örnekleri için iyi bir kaynaktır; ancak bunlar, sahne parametrelerinin gerçek adlarını değil, kullanıcı dostu arayüz adlarını kullanırlar. Temel parametre bilgileri için çok kullanışlı bir araç, SDK’nın ikili klasöründe bulunan plgparams.exe’dir . Belirtilen eklenti (veya -list ile tüm eklentiler ) için tüm parametreleri ve bunların türlerini, varsayılan değerlerini ve metin yorumlarını listeler. Benzer bilgiler, C++ klasöründeki ListAllPluginsAndProperties örneği (veya başka bir dil için eşdeğer kod) kullanılarak da elde edilebilir. Her şeyi doğru yapıp yapmadığınızı kontrol etmek için sahnenizi bir dosyaya kaydetmek genellikle yararlıdır. Örneğin, bazı parametreleri doğru şekilde ayarlayamamış olabilirsiniz ve bunu dosyada eksik veya yanlış bir değer olarak görebilirsiniz; ancak kodunuzda da ayarlama işleminin sonucunu kontrol edebilirsiniz. Sahnenin bazı bölümlerini (parametreler veya tüm eklentiler) silerek ve yeniden render alarak sorunları belirlemeye çalışabilirsiniz. 3dsMax veya Maya için V-Ray’iniz varsa ve vrscene dosyalarını dışa aktarmak için kullanıyorsanız, hangi eklentilerin ve parametrelerin yazıldığını görmek çok faydalı olabilir. 3dsMax ve Maya için dışa aktarıcılar “gerçek veri” olarak kabul edilebilir (ara sıra bir hata veya eksik özellik içerebilseler de). Siyah bir render alıyorsanız, kameranızın doğru konumlandırıldığından ve yönlendirildiğinden ve bir nesnenin içinde olmadığından emin olun. Varsayılan yukarı eksenin Z olduğunu, ancak genellikle Y olmak üzere başka bir şeye ayarlanabileceğini unutmayın. Ekli materyalde bir sorun varsa görünmez veya siyah nesneler de alabilirsiniz. Bu durumda, özellikle arkasında hiçbir şey yoksa, nesneyi alfa kanalında hala görebilirsiniz. Dikkat edilmesi gereken bir diğer şey de V-Ray’in hataları ve uyarılarıdır, bu nedenle her zaman DumpMessage geri çağırma işlevini uygulayın.
Tüm V-Ray eklentileriyle ilgili bilgiler, C++ için vrayplugins.hpp başlık dosyasında ve C# için VRayPlugins.cs dosyasında mevcuttur.
Eğer renderer, Python veya Node.js’de bir VRayRenderer örneği ise , bir eklenti hakkında bilgi şu şekilde elde edilebilir:
-
renderer.getDescription() – eklenti açıklamasını gösterir
-
renderer.getMeta() – eklentinin tüm özellikleri/parametreleri hakkında bilgi gösterir.
-
renderer.getCategories() – eklentinin ait olduğu kategoriyi alır.
1.7. “alt bölümler” parametreleri #
Birçok ışık ve BRDF eklentisinde subdivs (alt bölümler) parametrelerini göreceksiniz . Bunlar, malzemeler üzerindeki parlak ve dağınık efektleri hesaplamak için oluşturulan yeni ışınların sayısını veya ışık ve gölge değerlendirmelerinin sayısını vb. kontrol eder. Gerçek ışın sayısı, parametre değerinin karesiyle orantılıdır . Bunlar, ilgili ışık veya malzeme için örneklemeyi artırmak veya azaltmak için kullanılabilir, ancak bunları varsayılan değerlerde bırakmanızı şiddetle tavsiye ederiz . Ayrıca, yerel subdivs değerlerini tamamen devre dışı bırakmanızı da öneririz – ayrıntılar için DMC örnekleyici bölümüne bakın. Bazı ayar eklentilerinde de, örneğin Işınım Haritası ve Işık Önbelleği gibi, değiştirilmesi sorun olmayan subdivs parametreleri bulunur.
Not: Oluşturucunun parametre değerinin karesini kullanmasının nedeni, Monte Carlo entegrasyon yönteminin şu özelliğidir: Gürültüyü (varyansı) yarıya indirmek için (1/2 gürültü), dört kat daha fazla örnek (4x) gerekir; varyansı 1/10’a indirmek için ise 100 kat daha fazla örnek gerekir… Bu şekilde, alt bölüm parametrelerindeki doğrusal artışlardan doğrusal sonuçlar elde ederiz.
2. Kamera konumunun belirlenmesi #
Öncelikle kameranızı kontrol etmeniz gerekir. Bu işlem RenderView eklentisi aracılığıyla yapılır. Sahnelerinizde her zaman bu eklentiden yalnızca bir tane oluşturup kurmanız gerekecektir. (Dokuları pişirdiğiniz durumlar hariç – o zaman BakeView kullanırsınız .)
Başlıca parametreler şunlardır:
-
fov – Radyan cinsinden yatay görüş alanı.
-
ortografik – Perspektif yerine ortografik projeksiyon kullanmayı sağlar ( RenderView::fov bu durumda önemli değildir, bunun yerine RenderView::orthographicWidth tercih edilir ).
-
Transform – Kameranın nerede olduğunu ve nasıl döndürüldüğünü tanımlayan bir dönüşüm (döndürme + öteleme). Matris sütun öncelikli formatta olduğundan, kendiniz hesaplamanız gerekecektir. Çoğu 3D yazılımında olduğu gibi döndürme açılarını ayarlayamazsınız. Birim matrisli varsayılan kamera yönlendirmesi, +Y’nin yukarıyı ve -Z’nin görüş yönünü göstermesidir. Sahneniz yukarı eksen için +Y kullanıyorsa, V-Ray’in sahne yukarı eksenini buna göre ayarlamanız gerekecektir – aşağıdaki ayarlar bölümündeki Birimler alt bölümüne bakın.
Alan derinliği, pozlama, bozulma, vinyetleme vb. gibi gelişmiş kamera efektleri için, RenderView’e ek olarak fiziksel kamerayı da etkinleştirmeniz gerekecektir . Ayrıntılar için aşağıdaki ayarlar bölümündeki Fiziksel kamera alt bölümüne bakın. Yalnızca alan derinliğine ihtiyacınız varsa, bunun yerine SettingsCameraDof’u da kullanabilirsiniz (bkz. 6.11. Çeşitli).
3. Işıklandırma oluşturma #
İyi fotogerçekçi render’lar elde etmek için en önemli şey iyi aydınlatmadır. Ayrıca görüntü gürültüsünü ve performansı da etkiler. Bazı ışıklar (genellikle daha basit olanlar, özellikle listedeki ilk dört ışık) diğerlerine göre daha hızlı ve daha az gürültüyle render edilir. Işıkların gürültüsünü ve performansını etkileyebilecek şeyler şunlardır: düz renk yerine doku kullanmak; karmaşık bir ağa sahip olmak; nispeten küçük boyutta bir alan ışığı olmak.
Aşağıda, fotogerçekçilik düzeyine göre kabaca sıralanmış V-Ray ışık eklentileri listelenmiştir. Ortak parametreler listenin sonunda yer alırken, bazı özel parametreler bu belgenin sonundaki Referans bölümünde açıklanmıştır. Burada bahsetmeyeceğimiz daha birçok parametre de mevcuttur.
-
LightAmbient – Bunu kullanmayın. Ortam aydınlatması yapay bir efekttir.
-
LightOmni – Noktasal bir ışık kaynağı. Işık şiddetinin azalma hızı ve yumuşak gölgeler oluşturma parametrelerine sahiptir ( aşağıda shadowRadius ).
-
LightDirect – Sonsuz paralel ışık. Konumundan kaynaklanmaz, bu nedenle yalnızca dönüş matrisi önemlidir.
-
LightSpot – El fenerinden gelen ışık gibi konik spot ışığı.
-
LightRectangle – Dikdörtgen alan aydınlatması. Disk şekline yuvarlama seçeneği. Dokulu hale getirilebilir.
-
LightSphere – Küresel alan ışığı. Geometrik detay, segment sayısı ile parametrelendirilir.
-
LightMesh – Bir geometri eklentisini ışık kaynağına dönüştürür. Doku eklenebilir.
-
LightDome – Sahneyi sonsuza dek çevreleyen, ışık yayan bir kubbe. Genellikle küresel doku dosyasıyla HDR görüntü tabanlı aydınlatma (IBL) için kullanılır.
-
LightIES – .IES dosyası aracılığıyla tanımlanan, gerçek dünyadaki ışıkların ölçümlerini içerir. Şekil değiştirilebilir.
-
SunLight – Güneşimizin matematiksel olarak yaklaşık modeli. Işık, yüksekliğine göre değişir. Genellikle TexSky ortam dokusuyla birlikte kullanılır. Ayrıntılar için aşağıdaki Ortam ayarları bölümüne bakın.
Bu eklentilerin bazılarının, LightOmniMax , LightSpotMax vb. gibi ek parametreler içeren 3dsMax sürümleri de mevcuttur.
Genel ışık parametreleri:
-
Etkinleştirildi – Varsayılan olarak etkinleştirilmiştir. Parametreleri yeniden oluşturup sıfırlamaya gerek kalmadan ışıkları açıp kapatmak için kullanılır.
-
Dönüştürme – Konum ve yönlendirme. Yukarıdaki kamera konumuyla ilgili notlara bakın. Bazı ışıklar ölçeklendirilebilir.
-
Renk – Yayılan ışığın rengi. Varsayılan değer beyazdır (1.0, 1.0, 1.0). Daha yüksek yoğunluk için değer 1’in üzerinde olabilir, ancak çoğu ışığın bunun için ayrı bir yoğunluk parametresi vardır. Dikdörtgen ve ağ ışıkları gibi bazı ışıklar, ek parametreler aracılığıyla dokulu renge sahip olabilir. Örneğin, bu şekilde vitray bir pencere yapabilirsiniz. Güneş ışığının bu parametresi yoktur, ancak renk kontrolü için başka parametreleri vardır.
-
Gölgeler – Varsayılan olarak etkinleştirilmiştir. Gölge oluşturmaması için false olarak ayarlayın. Tavsiye edilmez.
Birçok ışıkta ortak olan, ancak tüm ışıklarda bulunmayan diğer parametreler (ilgili parametre listelerine bakınız):
-
shadowRadius – Omni, spot, direkt gibi basit ışık kaynaklarının alan ışıkları gibi davranmasını ve yumuşak gölgeler oluşturmasını sağlamak için kullanılabilir.
-
yoğunluk ( intensity_tex ) – Işığın yoğunluğu için çarpan.
-
Görünmez – Varsayılan olarak Yanlış. Alan ışığının kamera tarafından görünmez olmasını sağlar. Bu, örneğin dikdörtgen ışıkların arka yüzünü de içerir.
-
Birimler – Fotometrik ışıkların yoğunluğu için fiziksel birimler. Olası değerler şunlardır: 0 – varsayılan, 1 – lümen, 2 – lm/m/m/sr, 3 – Watt, 4 – W/m/m/sr
Dikdörtgen, ağ ve kubbe ışıklarına doku eklenebilir. Doku dosyalarının, varsayılan değeri kubbe ve dikdörtgen için 512, ağ ışıkları için ise 256 olan tex_resolution parametresiyle kontrol edilen bir çözünürlükte yeniden örneklendiğini unutmayın. Bu nedenle, özellikle kubbe ortamında ışık dokusu çok pikselli görünüyorsa, bu çözünürlüğü artırmayı deneyin. Bu elbette bellek kullanımını ve render süresini biraz artıracaktır.
4. Geometri oluşturma #
4.1. Node eklentisi #
Gerçek geometri verilerinizi tanımlamaya geçmeden önce, ışık yaymayan nesneler için Node adı verilen üst düzey bir eklenti bulunmaktadır. Bu eklenti, geometri verilerini ( geometri parametresi) bir malzeme eklentisiyle ( malzeme parametresi) ilişkilendirir ve onu dünyada konumlandırır ( dönüşüm parametresi). Aynı geometriyi farklı konumlardaki farklı düğümlerde referans alabilirsiniz.
4.2. Geometri kaynakları #
Şimdi başlıca geometri kaynağı eklentilerine bakalım (diğer bazılarını göz ardı edeceğiz):
-
GeomStaticMesh – Çoğu durumda kullanacağınız temel sabit geometri tanımlayıcısıdır. Köşe ve normal verilerinin yanı sıra isteğe bağlı UVW doku eşleme koordinatlarını gerektirir.
V-Ray statik ağları yalnızca üçgen geometriyle çalışır, bu nedenle daha büyük çokgenleriniz varsa, bunları üçgenleştirmeniz gerekecektir. En basit yol, dışbükey çokgenler için kulak kırpma yöntemidir. Üçgenin ön yüzüne bakıyorsanız, V-Ray için geometri dizilerinde üçgen köşe indeksleri saat yönünün tersine belirtilir. -
GeomStaticNURBS – Kontrol noktaları ve ağırlıklar kullanarak düzgün bir NURBS yüzeyi tanımlar.
-
GeomStaticSmoothedMesh – Başka bir mesh eklentisine (genellikle GeomStaticMesh ) referans verir ve pürüzsüz, alt bölümlere ayrılmış bir sürüm oluşturur.
-
GeomDisplacedMesh – Başka bir mesh eklentisine (genellikle GeomStaticMesh ) referans verir ve bir doku haritası kullanarak yer değiştirmiş bir sürüm oluşturur.
-
GeomHair – Başka bir mesh eklentisine (genellikle GeomStaticMesh ) referans verir ve üzerinde saç (kürk, çimen, kabarık halı vb. için ayarlanabilir) oluşturur. Saç tellerinin boyutu, şekli ve dağılımı için birçok parametreye sahiptir. Bu, 3dsMax ve Maya’daki VRayFur’a karşılık gelir.
-
GeomMeshFile – Bir dosyadan geometri yükler, bu dosya bir geometri proxy’si olarak adlandırılır. Geometri yalnızca bir ışın ona çarptığında talep üzerine yüklenir, bu nedenle dağıtılmış kova oluşturma gibi bazı durumlarda gereksiz hesaplamaları ve bellek kullanımını önleyebilir. Şu anda desteklenen formatlar V-Ray’in .vrmesh ve Alembic .abc’dir . Başka bir formatta, örneğin .obj, bir dosyanız varsa, onu ply2vrmesh aracıyla dönüştürmeniz gerekir.
-
GeomParticleSystem – Birçok (genellikle küçük) parçacık üretir.
4.3. Örnekleme #
Instancer ve Instancer2 eklentileri, diğer geom kaynak eklentilerinden sahnede çok sayıda nesneyi verimli bir şekilde oluşturmak için kullanılabilir. Genellikle parçacıklar ve bitki örtüsü için kullanılır.
-
Örnekleyici => N * Düğüm (görünmez) => GeomSomething
Instncer2 aynı zamanda bir geometri kaynağıdır ve bir Node eklentisine bağlanabilir:
-
Düğüm => Instancer2 => N * Düğüm (görünmez) -> GeomSomething
ve hatta -
Düğüm => Instancer2 => Düğümler => Instancer2 => vb.
5. Malzemelerin oluşturulması #
Malzemeleri dışa aktarmak muhtemelen en karmaşık kısımdır, çünkü özellikle Autodesk’in popüler DCC araçları gibi yüksek sanatsal kontrol sağlayan uygulamalarda karmaşık gölgelendirici ağları içerebilir. Bununla birlikte, yalnızca birkaç eklenti kullanarak bile iyi sonuçlar elde edebilirsiniz.
Burada iki tür eklenti söz konusudur: malzeme (“Mtl” ile başlayan isimler) ve BRDF (“BRDF” ile başlayan isimler) eklentileri. BRDF’ler, ışığın yüzeyle etkileşime girdiğinde neler olduğunu, örneğin kırılma, dağınık saçılma vb. olayları tanımlar. BRDF’ler, davranışlarını genişletebilen veya birleştirebilen malzeme eklentilerine bağlanır. Son olarak, malzeme eklentisi, onu sahnedeki geometrik bir nesneye bağlayan bir Düğüm’e bağlanır.
Her zaman bir MtlSingleBRDF örneğini Node::material yuvasına bağlamalısınız . Adına rağmen, MtlSingleBRDF::brdf parametresi diğer Mtl eklentilerini de kabul eder, bu nedenle MtlSingleBRDF’yi eklemeden önce herhangi bir materyali kullanmanın bir sakıncası yoktur (bu bölümün sonundaki nota bakın).
Malzeme ayarlarınızın temel bileşeni BRDFVRayMtl olmalıdır . Bu eklenti, üç farklı efekt türünü tek bir pakette birleştirir: difüz, yansıma ve kırılma (bunlar sırasıyla BRDFDiffuse, BRDFMirror ve BRDFGlass olarak ayrı eklentilerde mevcuttur ). Ancak, diğer katmanların renklerini siyaha ayarlayarak yalnızca bir katmanı kullanabilirsiniz. Eklenti, gelen ışık enerjisini üç katmanın renklerine göre böler. Örneğin, varsayılan olarak yansıma ve kırılma siyah renktedir, bu nedenle bu katmanlar atlanır. Beyaz bir yansıma rengi ayarlarsanız ayna elde edersiniz. Beyaz bir kırılma rengi ayarlarsanız cam elde edersiniz. Katmanlar şu sırayla değerlendirilir: yansıma, kırılma, difüz. Bir sonraki katmana geçen enerji miktarı, katmanın renginin tamamlayıcı rengidir. (0.2, 0.2, 0.2) yansıma rengine sahipseniz, ışık enerjisinin %20’si speküler yansımaya, %80’i ise kırılma katmanına gider. Eğer kırılma katmanınızın rengi (1.0, 1.0, 1.0) ise, kalan enerjinin tamamı kırılan ışık olarak devam edecek, böylece cam malzeme etkisi elde edeceksiniz (biraz yansıma ve geri kalanının tamamen kırılması). Bunun yerine kırılma rengi (0.5, 0.5, 0.5) ise, kalan enerjinin %50’si kırılacak ve %50’si dağıtıcı katmandan dağılacaktır. Dağıtıcı renk beyaz ise, kalan enerjinin tamamı sahneye dağılır ve siyah ise tamamı emilir (bu da gerçek dünyada nesneyi ısıtır). Şimdi gelen enerjiyle neler olduğunu birkaç örnekle özetleyelim:
-
Yansıma=(0.1, 0.1, 0.1), kırılma=(1.0, 1.0, 1.0), yayılma=(1.0, 0.0, 0.0) => %10 yansıma, %90 kırılma ve %0 yayılma, bu nedenle o kırmızı rengi hiçbir yerde görmeyeceksiniz.
-
Yansıma=(0.1, 0.1, 0.1), kırılma=(0.5, 0.5, 0.5), yayılma=(1.0, 0.0, 0.0) => %10 yansıma, %45 kırılma ve %15 yayılma, bu nedenle biraz kırmızı içeren yarı saydam bir nesne göreceksiniz. Enerjinin son %45’inin 1/3’ünün kırmızı saçılma olduğunu unutmayın, yani aslında orijinal enerjinin %15’i sadece kırmızı kanalda saçılır ve %30’u diğer kanallarda emilir.
-
Yansıma=(1.0, 1.0, 1.0), kırılma=(0.5, 0.5, 0.5), dağılma=(1.0, 0.0, 0.0) => %100 yansıma, %0 kırılma ve %0 dağılma, bu nedenle mükemmel bir ayna göreceksiniz – içinden hiçbir şey görünmez ve kırmızı ışık olmaz.
-
Yansıma=(0.1, 0.1, 0.1), kırılma=(0.0, 0.0, 0.0), yayılma=(0.5, 1.0, 0.5) => %10 yansıma, %0 kırılma, %60 yayılma ve %30 emilim (yeşil kanalda enerji emilmiyor)
Difüz katmandaki enerji emilimi, küresel aydınlatma (GI) için önemlidir. Tamamen beyaz difüz duvarlara sahip kapalı bir oda, aynalarla dolu bir odaya sahip olmak gibidir. V-Ray, ışığı maksimum GI derinliğine ulaşana kadar yansıtacak ve bu da render işlemini yavaşlatabilir. Duvarlar %88 beyaz olsaydı, 20 yansımadan sonra orijinal enerjinin sadece %7’si kalırdı. Bir noktada V-Ray, ışının çok zayıf ve önemsiz olduğuna karar verecek ve izlemeyi durduracaktır. V-Ray, ışık yoğunluğuna bağlı olarak birçok karar verir, bu nedenle bu önemlidir. Yoğun ışığa sahip örnekler, zayıf ışığa sahip örneklerden daha önemli kabul edilir.
BRDFVRayMtl’nin önemli bir yönü, Fresnel yansıma parametresidir (bir örnek oluşturduğunuzda varsayılan olarak kapalıdır, oysa 3dsMax için V-Ray’de varsayılan olarak açıktır). Etkinleştirildiğinde, yansıma miktarı geliş açısına bağlıdır. Cam açıları, yüzeye doğrudan bakmaktan daha fazla yansıma üretir. Bu, malzemenin katmanlarında enerjinin nasıl dağıldığı hakkında yukarıda vardığımız sonuçları değiştirir. %100 yansıma (beyaz renk) olsa bile, enerjinin bir kısmı kırılma ve difüz katmana geçecektir. Fresnel yansımaları, fiziksel olarak makul malzemeler için şarttır. Fresnel için, malzeme hiç ışık kırmasa bile, doğru bir kırılma indisi (IOR) ayarlamanız gerekir. Örneğin, metallerin çok yüksek IOR değerleri vardır.
BRDFVRayMtl’nin saydamlık seçeneği de var, ancak yüzey altı saçılımı için bunun yerine BRDFSSS2’yi kullanmalısınız .
Opaklık hakkında önemli not : BRDFVRayMtl dahil birçok materyalin ayrı bir opaklık parametre yuvası vardır (bu değer aynı zamanda “alfa” olarak da bilinir, şeffaflığın tersidir). Örneğin, difüz parametresinin 1.0’ın altında bazı alfa değerlerine sahip olması bile bir etki yaratmayacaktır. Örneğin, TexBitmap::out_alpha’yı opaklığa ayrı olarak bağlamanız gerekir. Ayrıca , kırılma katmanı nedeniyle bir materyalin herhangi bir opaklık ayarlanmamış olsa bile şeffaf görünebileceğini de unutmayın.
Not: Uyumluluk nedenleriyle hala mevcut olan bazı materyal ve BRDF eklentileri bulunmaktadır, ancak bunları kullanmanızı önermiyoruz. Örneğin, MtlDiffuse’u bir Düğüm’e bağlamak yerine, BRDFDiffuse -> MtlSingleBRDF::brdf -> Node::material oluşturmalısınız . Adları “_ASGVIS” ile biten eklentiler de göz ardı edilebilir. Şu anda kullanımdan kaldırılmış eklentilerin kapsamlı bir listesine sahip değiliz.
5.1. Malzeme ve BRDF eklentileri #
-
MtlSingleBRDF – Node::material’e bağlanması gereken ana malzeme türü .
-
Mtl2Sided – Üçgenlerin arka yüzü ve ön yüzü için (muhtemelen farklı) bir malzeme tanımlar.
-
MtlMulti – Bu özelliği GeomStaticMesh::face_mtlIDs ile birlikte kullanarak , tek bir geometrik nesne üzerindeki üçgen alt kümeleri için farklı malzemeler belirleyebilirsiniz.
-
MtlVRmat – Bir .vrmat (eski adıyla .vismat) dosyasından V-Ray gölgelendiricisini yükler. Ayrıca vrscene dosyalarından MtlSingleBRDF materyallerinin yüklenmesini de destekler. Bu, farklı ana uygulamalar arasında materyal aktarımı için kullanılır.
-
MtlGLSL – Dosyadan bir GLSL shader’ı yükler ve ona bazı parametreler sağlar.
-
MtlOSL – Dosyadan bir OSL gölgelendirici yükler ve ona bazı parametreler sağlar.
-
MtlRoundEdges – Normal vektörlerini değiştirerek belirli bir yarıçap içindeki keskin kenarları yumuşatır.
GLSL hakkında ayrıntılı bilgi için bu sayfaya , OSL hakkında ayrıntılı bilgi için ise bu sayfaya bakınız .
Bazı ileri düzey malzemeler:
-
MtlMaterialID – Belirli bir render kanalından kompozisyon işleminde kullanılacak özel bir temel malzeme için benzersiz bir renk tanımlamak için kullanılabilir.
-
MtlOverride – Yansımalar, kırılmalar, küresel aydınlatma (GI), gölgeler ve ortam gibi öğelerin temel materyalini geçersiz kılmanıza olanak tanır.
-
MtlRenderStats – Temel bir materyal kullanan nesne için görünürlük ve gölge ayarlarını geçersiz kılar. Bu materyal, kabartma, sarmalayıcı, çift taraflı veya karışım materyallerinin içine yerleştirilerek kullanılmamalıdır.
-
MtlWrapper – (çok gelişmiş) GI, render öğeleri vb. ile ilgili olarak malzeme başına ek yüzey özelliklerini belirtmek için kullanılabilir.
Aşağıda, malzemeler için BRDF eklentilerinin bir listesi bulunmaktadır. Blinn, Phong, Ward, Cook-Torrance ve GGX modelleri arasındaki fark, yansıma vurgusunun nasıl davrandığı ve onu kontrol etmek için hangi parametrelere sahip olduğunuzdadır. İlgili BRDF eklentileri, dağınık ve parlak bir yansıma bileşenini birleştirirken, VRayMtl, Fresnel terimi, kırılma vb. gibi daha fazla seçenek sunar.
-
BRDFVRayMtl – Tüm BRDF eklentilerinin en iyisi. Cook-Torrance hariç tüm türleri bir araya getirir (hepsini aynı anda değil – bir tür seçmeniz gerekir). Çoğu durumda tercih edilen seçenektir.
Farklı BRDF türleri hakkında bilgi için VRayMtl sayfasına bakın .
-
BRDFBlinn – Parlak vurgular için Blinn BRDF modeli. Wikipedia makalesine bakın .
-
BRDFCookTorrance – Parlak vurgular için Cook-Torrance BRDF modeli. Bkz. Vikipedi .
-
BRDFGGX – Parlak vurgular için yeni GGX (mikro yüzey GTR) BRDF modeli.
-
BRDFPhong – Parlak vurgular için Phong BRDF modeli. Wikipedia makalesine bakın .
-
BRDFWard – Parlak vurgular için Ward BRDF modeli. Bkz. Vikipedi .
-
BRDFDiffuse – Temel bir yaygın BRDF.
-
BRDFGlass – Temel bir kırılma BRDF’si.
-
BRDFGlassGlossy – Parlak kırılmayı sağlayan BRDFGlass’ın bir uzantısıdır; bu, eşit geliş açısına sahip ışınların biraz farklı açılarda kırılması anlamına gelir.
-
BRDFLight – Kendi kendini aydınlatan BRDF. Bunun yerine LightMesh kullanmayı düşünün .
-
BRDFMirror – Temel bir speküler yansıma BRDF’si.
-
BRDFLayered – Herhangi bir sayıda BRDF eklentisinin ağırlıklı bir kombinasyonu. (Bu, 3dsMax ve Maya için V-Ray arayüzünde Blend materyali olarak da bilinir.)
Gerçek dünyadaki belirli malzemeleri simüle eden bazı BRDF’ler:
-
BRDFCarPaint – Temel renk, rastgele metalik pullar ve kaplama katmanından oluşan metalik boya simülasyonu.
-
BRDFFlakes – Sadece araç boyasının BRDF pulcukları.
-
BRDFHair3 – Saç için optimize edilmiş bir BRDF. GeomHair ile birlikte kullanın .
-
BRDFSSS2 – Balmumu, süt, reçine, mermer vb. malzemeler için yüzey altı dağılımı. Cilt için bunun yerine BRDFSkinComplex kullanın.
-
BRDFSSSS2Complex – Daha da fazla parametreye sahip SSS.
-
BRDFScanned – Bu, özel donanımımızla taranarak dosyaya kaydedilmiş gerçek dünya malzeme örneğini yükler. Ayrıntılar için bize e-posta gönderin.
-
BRDFSkinComplex – Cilt tipine özel bir SSS eklentisi.
-
BRDFStochasticFlakes – Rastgele oluşturulan minik ışıltılı parçacıklar için yeni bir eklenti. Bu, bazı giysilerde ve ayakkabılarda bulunanlara benzer parıltılı bir malzeme üretir.
Ve kabartma haritaları:
-
BRDFBump – Bazı temel BRDF dosyalarına kabartma haritası uygular.
-
BRDFMultiBump – 4 adede kadar kabartma haritasını birleştirir.
5.2. Doku ve UVW oluşturucuları #
BRDF’ler (ve bazı ışıklar) doku eklenebilen birçok Renk, AColor ve Kayan Nokta parametre yuvasına sahiptir. Genellikle sadece doku dosyalarını yüklersiniz, ancak V-Ray ayrıca birçok prosedürel doku ve değiştirici görevi gören doku eklentileri (yani basit bir işlev uygulamak, dokuları birleştirmek, kanallardan birinden veri çıkarmak vb.) sunar. 200’den fazla doku eklentisi vardır, bu nedenle yalnızca en önemlilerine bakacağız. Eklentilerin çoğu belirli ana uygulamalar için yapılmıştır. Doku verilerinin kendisi dışında, V-Ray, UVW eşleme koordinatları oluşturmak veya geometri kaynağından gelen orijinal verileri değiştirmek için UVW oluşturucu eklentileri kullanır. Bir UVWGen eklentisi kullanmak zorunlu değildir.
Doku dosyaları için:
-
TexBitmap – Bitmap arabelleğindeki verileri (sonraki iki maddeye bakın) renk çarpanları, döşeme vb. gibi bazı ek parametrelerle kullanır.
-
BitmapBuffer – Bir resim dosyasını yükler. Çok sayıda format desteklenir – kayıplı/kayıpsız, 8 bitten 32 bite kadar. Bu bir doku eklentisi değildir ve tek amacı TexBitmap’e veri sağlamaktır . Filtreleme ve gama için bazı seçenekleri vardır.
-
RawBitmapBuffer – BitmapBuffer ile aynıdır , ancak diskteki bir dosya yerine bellekteki sıkıştırılmamış verileri kullanır.
-
TexPtex – Bir PTex dosyasından yüklenen doku. Bu, BitmapBuffer kullanmaz .
Renkleri değiştiren ve birleştiren dokular:
-
TexAColorOp – En çok kullanılan kombinasyon eklentilerinden biri. İki giriş AColor dokusu, iki isteğe bağlı çarpan dokusu, isteğe bağlı ayrı bir alfa kanalı giriş dokusu ve çok sayıda çıkış dokusu içerir: toplam, fark, çarpım, bölme, minimum, maksimum, yoğunluk, güç ve tek renk kanalı çıkışları.
-
TexBlend – İki giriş AColor dokusunu, ağırlıklandırma için başka bir float dokusu (veya elbette sabit bir değer) kullanarak birleştirir.
-
TexClamp – Giriş dokusunu belirli minimum ve maksimum değerler arasında sınırlandırır.
-
TexCondition – İki kayan noktalı doku arasında yapılan bir tür karşılaştırmaya bağlı olarak iki AColor dokusu arasında geçiş yapar.
-
TexFloatOp – TexAColorOp’a benzer şekilde, float’lar için kullanılır.
-
TexGradient, TexGradRamp, TexRamp – Gradyan dokuları.
-
TexHSVToRGB – HSV giriş dokusunu RGB’ye dönüştürür.
-
TexInvert – Giriş dokusunun tamamlayıcı rengini döndürür.
-
TexLayered – Sınırsız sayıda dokuyu birleştirin.
-
TexLuminance – Giriş renk dokusundan tek bir kayan noktalı parlaklık değeri (0.3R + 0.59G + 0.11B) döndürür. V-Ray terimleriyle bunun “yoğunluk” teriminden farklı olduğunu unutmayın; yoğunluk (0.33R + 0.33G + 0.33B)’dir.
-
TexMulti – MtlMulti’ye benzer şekilde , yüzey malzemesi kimliği veya nesne kimliği ile indeksleyerek veya rastgele bir listeden doku seçin.
-
TexRaySwitch – Farklı ışın türleri için farklı dokular kullanın: gölge, küresel aydınlatma, yansıma, kırılma ve varsayılan.
-
TexRemap – Giriş dokusunun rengini, kullanıcı tanımlı bir eğri aracılığıyla yeniden eşler.
-
TexUserColor ve TexUserScalar – Kullanıcı öznitelikleriyle gelişmiş kullanım.
Bazı prosedürel dokular:
-
TexChecker – Bir dama tahtası deseni. Birbirini takip eden iki renk aynı zamanda dokulandırılabilir özelliktedir.
-
TexCloth – Dokuma kumaş deseni (Autodesk Maya’daki gibi)
-
TexCellular – İşlemsel hücresel gürültü deseni. Fraktal dahil olmak üzere farklı hücre tipleri desteklenmektedir.
-
TexCurvature – Gölgelendirme noktasındaki yerel eğriliğe orantılı bir değer.
-
TexDirt – Geometrideki içbükey kenarlar ve girintiler etrafında ortam kapatma efekti (ters çevirme seçeneğiyle).
-
TexDistance – Belirtilen nesne listesine olan uzaklığa göre renk geçişi oluşturur.
-
TexEdges – Çokgen kenarları boyunca tel çerçeve rengi oluşturur.
-
TexFalloff – Yüzey normali ile kamera görüş yönü veya başka bir eksen arasındaki açıya bağlı olarak bir düşüş gradyanı oluşturur.
-
TexFresnel – BRDFVRayMtl kullanmıyorsanız Fresnel yansıma rengi oluşturmak için kullanılır .
-
TexLeather – Yapay deri taklidi.
-
TexMarble – Yöntemle mermer taklidi.
-
TexNoise, TexNoiseMax, TexNoiseMaya – Yapılandırılabilir farklı türde prosedürel gürültü.
-
TexRock – İşlemsel taş taklidi.
-
TexSmoke – Prosedürel 2 boyutlu duman dokusu.
-
TexSnow – Prosedürel kar taklidi. Yüzeyi, belirli bir normal vektör eşiğine kadar kar rengiyle kaplar.
-
TexSoftbox – Gerçek dünyadaki “softbox” profesyonel aydınlatmasını simüle etmek için dikdörtgen ışıklarla kullanım için özel olarak tasarlanmıştır.
-
TexTiles – Farklı yerleşim seçeneklerine sahip prosedürel karolar.
-
TexWater – Prosedürel dalga dokusu.
-
TexWood – İşlemsel ahşap taklidi.
Son olarak, UVW jeneratörleri:
-
UVWGenChannel – Geometri kaynağından gelen UVW verileri için değiştirici. Ana parametre uvw_channel’dır – kullanılacak eşleme kanalı verilerinin indeksi (örneğin GeomStaticMesh::map_channels ). Varsayılan değer 1’dir, çünkü 3dsMax’te indeksleme 1’den başlar, ancak uygulamanızda bu 0 veya başka bir değer olabilir. -1 indeksini ayarlarsanız, V-Ray ilk kullanılabilir kanalı alacaktır. Bu eklenti ayrıca dönüştürme, sarma ve kırpma parametrelerinin yanı sıra başka bir UVWGen eklentisinden UVW verisi alma seçeneğine de sahiptir.
-
UVWGenEnvironment – Küresel, küp vb. dokuları ortam renk yuvasına veya kubbe ışıklarına eşlemek için kullanılır.
-
UVWGenExplicit – Dokudan açık UVW verilerini tanımlayın.
-
UVWGenMayaPlace2dTexture – UVWGenChannel’a benzer , ancak daha fazla seçeneğe sahiptir.
-
UVWGenObject –
-
UVWGenPlanarWorld –
6. Sahne ve render ayarları #
Ayarlar eklentileriyle ilgili genel bir not: Yeni bir Renderer nesnesi oluşturduğunuzda bunların örnekleri mevcut değildir, bu nedenle parametreleri değiştirmeden önce bunları oluşturmanız gerekecektir. Render işlemine başladığınızda App SDK bir SettingsOutput oluşturacak ve render modu RT ise SettingsRTEngine oluşturacaktır . Öte yandan, bir sahneyi dosyadan yüklüyorsanız, çoğu (ancak tümü değil) ayar eklentisinin örneklerine sahip olacaktır ve bunları kullanmanız gerekecektir. Bunun nedeni, V-Ray her vrscene dosyasını dışa aktardığında, varsayılan değerlerde olsalar bile ayarları otomatik olarak yazmasıdır.
Önerilen ayarlar API’si
14 Haziran 2016’dan sonraki 1.09 gece derlemelerinden itibaren, VRayRenderer sınıfı setImprovedDefaults() yöntemini içermektedir . Bu yöntem (gerekirse) bazı ayar eklentisi örnekleri oluşturur ve çeşitli parametreleri eklenti varsayılanlarından farklı değerlere ayarlar. Bu değerler, V-Ray for 3dsMax ve Maya gibi ana ürünlerimizde kullanılan varsayılan değerlerle eşleşir. Eklenti varsayılanları uyumluluk nedenleriyle (eski sahnelerin olduğu gibi çalışmaya devam etmesi için) değiştirilemez. Ancak kullanıcı arayüzü varsayılan değerleri zaman içinde değişmiştir. setImprovedDefaults() tarafından ayarlanan parametrelerin ve ilgili değerlerin çoğu aşağıdaki paragraflarda belirtilmiştir. Bunlar sadece iyi başlangıç değerleridir. Bunları kullanmaktan veya kullanmamaktan, hatta bazılarını geçersiz kılmaktan, örneğin daha hızlı render almak için kaliteyi düşürmekten çekinmeyin.
6.1. Görüntü ve bölge boyutu #
Bunlar SettingsOutput eklentisinden kontrol edilir , ancak eklentiye doğrudan dokunmamanız gereken birkaç istisnadan biridir . Uygulama SDK’sında görüntü ve bölge boyutunu ayarlamak için API’ler bulunur (örneğin, renderer.setRenderRegion , dile bağlıdır).
6.2. Görüntü örnekleme ve filtreleme #
V-Ray’in çeşitli görüntü örnekleme algoritmaları vardır. Bunlar, her piksel için kaç örnek alınacağını belirleyen algoritmalardır. Bu, son görüntüyü yumuşatabilen veya keskinleştirebilen bir görüntü filtresiyle birleştirilir.
Görüntü örnekleyici, SettingsImageSampler’dan kontrol edilir. Tür parametresi için dört tür mevcuttur :
-
type=0 , Sabit örnekleyici – Her piksel için sabit sayıda örnek kullanır. Bu, fixed_subdivs parametresiyle kontrol edilir. Bu örnekleyici türü önerilmez.
-
tip=1 , Uyarlanabilir örnekleyici
-
type=2 , Uyarlanabilir alt bölümleme örnekleyicisi. Bu örnekleyici türü kullanımdan kaldırılmıştır.
-
tip=3 , Aşamalı örnekleyici
Aşamalı örnekleyici, yinelemeli olarak tüm görüntüleri üretir ve her geçişte bunları iyileştirir. Diğer örnekleyiciler küçük “gruplar” üzerinde çalışır ve yalnızca tamamlandığında bir görüntü döndürür.
Uyarlanabilir ve aşamalı örnekleme hakkında ayrıntılı bilgi için bu sayfaya bakın . Ayrıca CTO’muzun örnekleme hakkında neler söylediğini şu bağlantıdan izleyebilirsiniz: https://www.youtube.com/watch?v=tKaKvWqTFlw .
SettingsImageSampler eklentisini oluşturduğunuzda (veya oluşturmadığınızda) varsayılan değerlerden bazıları optimal değildir. Bunlar şu anda uyumluluk nedenleriyle korunmaktadır. Bunları değiştirmek için bazı yönergeler şunlardır:
-
min_shade_rate – 6 ile 8 arasında bir değer kullanın.
Uyarlanabilir örnekleyici için: -
dmc_minSubdivs – Genel olarak, gereksiz örneklemeyi önlemek için değeri 1’de tutun. 1’in yeterli olmadığı ve görsel bozulmalara yol açtığı bazı istisnai durumlar (örneğin sis) olabilir.
-
dmc_maxSubdivs – 24 ile başlayın ve gürültü kaybolmazsa artırın.
-
dmc_threshold – 0.005 ile başlayın ve dmc_maxSubdivs’i artırmak gürültüyü azaltmaya yardımcı olmazsa düşürün . Hızlı render’lar istiyorsanız elbette 0.01 gibi daha yüksek bir değer de kullanabilirsiniz. Aşamalı örnekleyici:
-
progressive_minSubdivs – Değeri 1 olarak tutun.
-
progressive_maxSubdivs – 60 ile 100 arasında bir değer kullanın.
-
progressive_threshold – dmc_threshold’a benzer şekilde , 0.005’ten başlayın ve gürültü devam ederse azaltın. 0.001’in altına inmeyin.
-
progressive_maxTime – Bu, dakika cinsinden bir render süresi sınırıdır; güvenlik sınırı istemiyorsanız 0’da bırakın.
Çoğu filtrede çekirdek yarıçapı için yalnızca bir boyut parametresi bulunur. Catmull-Rom’da ise parametre yoktur. Mevcut filtre eklentileri şunlardır:
-
FilterBox – Kenarları 2 kat daha büyük olan bir kutu içindeki tüm numuneler eşit ağırlıkta alınır.
-
FilterArea – Belirtilen yarıçap boyutundaki bir daire içindeki tüm örnekler eşit ağırlıkta değerlendirilir.
-
FilterTriangle – Örnek ağırlığı, merkezden uzaklığın üçgen fonksiyonu şeklinde azalır.
-
Gauss Filtresi – Klasik bulanıklık filtresi.
-
FilterSinc – Daha az bulanık düşük geçişli filtre. Bkz. Vikipedi .
-
FilterLanczos (şu anda 3dsMax ve Maya için V-Ray’de varsayılan olarak kullanılıyor) – Wikipedia’ya bakın .
-
FilterCatmullRom – Kübik kenar iyileştirme filtresi.
-
FiltrePişirmeDeğişkeni
-
FilterMitNet – Orijinal makaledeki B ve C’ye karşılık gelen ek bulanıklık ve halkalanma parametrelerinde, bulanıklık ve ayrıntı arasında öznel olarak optimize edilmiş bir uzlaşmaya sahip Mitchell- Netravali kübik filtresi .
Filtre uygulamak için, bu eklentilerden birinin örneğini oluşturmanız yeterlidir. Aynı anda yalnızca birini kullanabilirsiniz.
Filtreler hakkında daha fazla bilgi için 3dsMax veya Maya belgelerine bakın .
Not: SettingsImageFilter oluşturmayın . Bu özellik kullanımdan kaldırılmıştır. Yukarıda açıklanan eklentileri kullanın.
6.3. DMC örnekleyici #
Deterministik Monte Carlo Örnekleyicisi hakkında ayrıntılı bilgi için bu sayfaya bakın .
SettingsDMCSampler parametrelerini, use_local_subdivs parametresi hariç , varsayılan değerlerinde bırakmanızı öneririz . Bu parametreyi 0 olarak ayarlayın, böylece yalnızca genel alt bölümleme ayarları kullanılır.
6.4. Küresel Aydınlatma #
Farklı GI motorları hakkında ayrıntılı bilgi için bu sayfaya bakın .
Varsayılan olarak, boş bir sahnede küresel aydınlatma (GI) devre dışıdır (GI’yi devre dışı bırakamayacağınız RT GPU modu hariç). İkincil ışınların izlenmesini etkinleştirmek için SettingsGI::on değerini 1 olarak ayarlamanız gerekir. Herhangi bir fotogerçekçi render işlemi GI gerektirir, bu nedenle bazı hata ayıklama işlemleri dışında, her zaman GI’yi etkinleştirmek isteyeceksiniz.
İlgilenilen diğer SettingsGI parametreleri şunlardır:
-
primary_engine – Birincil GI yansıma motoru. Birincil veya ikincil olarak Photon Map kullanmanızı önermiyoruz. Olası değerler şunlardır: 0=Işınım Haritası, 1=Photon Haritası, 2=Kaba Kuvvet, 3=Işık Önbelleği.
-
secondary_engine – İkincil yansıma GI motoru. Olası değerler, birincil motorla aynıdır, ancak Işınım Haritası hariç – bunu 0 olarak ayarlarsanız ikincil yansımaları devre dışı bırakır.
-
ao_on, ao_amount, ao_radius – Ortam örtüşmesinin (AO) gölgeleri elde etmenin fiziksel olarak doğru/hassas bir yolu olmadığını unutmayın. ao_on ile ortam örtüşmesini etkinleştirirseniz, ao_amount 0,0 ile 1,0 arasında etkinin gücü için bir çarpan görevi görür ve ao_radius örtüşme için değerlendirilen yarım küreyi tanımlar.
Kontrast ve doygunluk parametrelerini değiştirmenizi önermiyoruz.
Özellikle aydınlatmanın büyük kısmının dolaylı olduğu iç mekanlarda, GI motorlarının ve parametrelerinin seçimi çok önemlidir. Yanlış seçimler, çok fazla gürültüye veya bozulmaya ve/veya belirli görüntü kalitesi için orantısız render süresine yol açabilir. İç mekanlar için yaygın kurulum, ikincil olarak Işık Önbelleği ile Işınım Haritası (Irradiance Map) iken, dış mekan sahneleri için genellikle birincil olarak Kaba Kuvvet (Brute Force) ve ikincil olarak BF veya LC kullanılır.
6.4.1. Kaba kuvvet #
Kaba kuvvet saldırısının ayarları SettingsDMCGI’de bulunur . Sadece iki parametre vardır:
-
subdivs – Her kesişim noktasında oluşturulan yeni ışınların sayısını kontrol eder. Varsayılan değeri kullanmanızı öneririz.
-
Derinlik – Durmadan önce izlenecek ikincil yansımaların sayısı. Daha büyük değerler, işleme süresinin uzaması pahasına dolaylı aydınlatmanın parlaklığını artırabilir. Varsayılan değer 3’tür.
6.4.2. Işınım haritası #
Işınım haritası, SettingsIrradianceMap üzerinden yapılandırılır .
Algoritma ve parametreleri hakkında ayrıntılı bilgi için bu sayfaya bakın .
Başlıca iki parametre şunlardır:
-
Alt bölümler – Varsayılan değer 50’dir. Daha yüksek değerler nokta benzeri bozulmaları düzeltebilir ve daha düşük değerler oluşturma sürelerini iyileştirebilir.
-
interp_samples – Varsayılan değer 20’dir. Yüzeyler çok bulanık görünüyorsa daha düşük bir değer ayarlamak yardımcı olabilir.
6.4.3. Hafif önbellek #
Light önbelleği, SettingsLightCache üzerinden yapılandırılır .
Algoritma ve parametreleri hakkında ayrıntılı bilgi için bu sayfaya bakın .
İnce ayar yapmak ve belirli sorunları gidermek için birçok parametre vardır, ancak ana parametre şudur:
-
subdivs – Varsayılan değer 1000’dir. Daha yüksek değerler nokta benzeri bozulmaları düzeltebilir ve daha düşük değerler render sürelerini iyileştirebilir.
6.5. Çevre #
Ortam arka planı, aydınlatma (GI), yansıma, kırılma renkleri veya dokularını SettingsEnvironment eklentisi aracılığıyla tanımlayabilirsiniz . Genellikle tüm yuvalar aynı değere sahiptir. Ortam dokuları , küresel, küp vb. haritalama için UVWGenEnvironment kullanır.
Ortam hacmi listesi aracılığıyla sahne genelinde hacimsel efektler de ekleyebilirsiniz .
Güneş-Gökyüzü sistemi özel bir durumdur. V-Ray, bu ortam yuvaları için SunLight ile birlikte kullanılan özel bir prosedürel doku olan TexSky’a sahiptir . Ortamın rengi, Güneş’in konumuna bağlıdır.
TexSky, TexSky::sun ayarı etkinleştirilmişse parametrelerini SunLight’tan alır. Güneş olmadan da TexSky kullanabilirsiniz. Parametre detayları için alttaki referans bölümüne bakın.
6.6. Birimler (ölçek) #
V-Ray’de fizik tabanlı bazı hesaplamalar, sahne birimlerinin metre, Watt, saniye vb. gerçek dünya birimlerine doğru ölçeklendirilmesini gerektirir. Bu, aşağıda listelenen özelliklere sahip SettingsUnitsInfo eklentisi aracılığıyla kontrol edilir. Bu, fiziksel kamerayı, IES ışıklarını, hacimsel efektleri vb. etkiler.
-
meters_scale – Sahne boyutlarını bu değerle çarpmak, nesne boyutlarını metre cinsinden vermelidir.
-
fotometrik_ölçek – Fotometrik ışıklar için ölçek.
-
seconds_scale – Animasyon yapılırken, bu kare hızının tersidir.
-
scene_upDir – Sahnenin varsayılan +Z ekseninden farklı bir yukarı ekseni varsa bu ayarlanmalıdır. Bu parametre yalnızca bazı eklentiler için anlamlıdır; örneğin, istemci döndürme uygulamak istiyorsa.
-
rgb_color_space – Güneş/gökyüzü rengini, renk sıcaklıklarını ve kırılma özelliğine sahip malzemelerdeki dağılımı etkiler.
6.7. Fiziksel kamera #
Adından da anlaşılacağı gibi, CameraPhysical eklentisi bir ayar eklentisidir (singleton). Alan derinliği (DoF) ve bozulma gibi efektler için kamera ışınlarının nasıl çekildiğini ve bunların görüntüye nasıl entegre edildiğini (pozlama) değiştirir. Kameranın konumu ve yönü hala RenderView tarafından tanımlanır . Parametrelerin çoğu, gerçek dünyadaki bir DSLR veya video/film kamerasındakiyle tamamen aynıdır.
Parametrelerin çoğu bu sayfada ayrıntılı olarak açıklanmıştır . Biz burada sadece birkaç şey ekleyeceğiz:
-
Tip – 0=fotoğraf makinesi, 1=film makinesi, 2=video kamera. Bazı parametreler, farklı deklanşör mekanizması türleri nedeniyle yalnızca bu tiplerden biri için geçerlidir.
-
fov – Burada ayarlanan değeri kullanmak için specify_fov=1 olarak da ayarlayın . Aksi takdirde SettingsCamera ve RenderView’den gelen fov değeri kullanılır.
-
Vinyetleme – Varsayılan değerin 1.0 olduğunu unutmayın. Eşit şekilde pozlanmış bir çerçeve elde etmek için 0.0 olarak ayarlamak isteyebilirsiniz.
-
white_balance – Bu renk tonu sezgisel olmayabilir. Maviye ayarlarsanız sıcak bir görüntü elde edersiniz ve benzer şekilde diğer renkler için de aynı durum geçerlidir.
-
blades_enable – Bokeh efektlerini etkinleştirmek için true olarak ayarlayın.
-
bmpaperture_enable – bmpaperture_tex dokusunu kullanmak için 1 olarak ayarlayın .
-
use_dof – Varsayılan olarak devre dışı. Işın izlemeli alan derinliği için 1 olarak ayarlayın. DSLR’lerde olduğu gibi, net alanın derinliğinin diyaframa ve odak mesafesine bağlı olduğunu unutmayın.
-
use_moblur – Varsayılan olarak devre dışı. Kamera hareket bulanıklığını etkinleştirmek için 1 olarak ayarlayın.
-
distortion_type – 0=kuadratik, 1=kübik, 2= lens_file parametresinden gelen lens dosyası; 3= distortion_tex parametresinden gelen doku
6.8. Renk eşleme #
Bu, SettingsColorMapping tarafından kontrol edilir .
SettingsColorMapping eklentisi oluşturduğunuzda varsayılan değerler, eski sistemlerle uyumluluk nedenleriyle 3dsMax ve Maya’da önerilen değerlerden farklıdır. Yeni sahneler için kullanmanız gereken değerler şunlardır :
-
type=6 // 6=Reinhard eşlemesi (eklenti varsayılanı 0=doğrusal)
-
dark_mult=1 // Koyu renkleri ayrıca değiştirmeyin
-
bright_mult=1 // Parlak renkleri ayrıca değiştirmeyin
-
gama=2.2 // sRGB’ye yakın (eklenti varsayılanı 1.0’dır)
-
alt piksel eşlemesi=0
-
clamp_output=0
-
kelepçe_seviyesi=1
-
adaptation_only=2 // 2=yalnızca renk eşlemesini uygula (eklentinin varsayılan değeri 0’dır=hem renk eşlemesini hem de gama değerini uygula)
-
linearWorkflow=0 // Bu önemli – bu seçenek yalnızca eski sahneler için geçerlidir.
6.8.1. Doğrusal iş akışı #
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 .
Doğru doğrusal iş akışı için, SettingsColorMapping parametrelerinden gamma , adaptation_only ve linearWorkflow değerlerini yukarıda listelenen değerlere ayarlamanız gerekir . 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.
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::saveImage() ile kaydettiğiniz gerçek 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, dinamik aralık sıkıştırması için ~2,2 gama uygular. JPEG okuyan uygulamalar bunu işler ve verileri gerekli renk uzayında, gama kodlu veya doğrusal 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.
6.8.2. Bit Eşlemler #
Doku dosyası varlıkları için renk eşlemesini kontrol edebileceğiniz bir yer daha var: BitmapBuffer . Görüntü dosyası renklerini dönüştürmek için iki parametresi vardır: gama ve color_space . Gama parametresi yalnızca color_space=1 olduğunda dikkate alınır ve doku okumalarının gama sıkıştırılmış değerleri doğrusal hale getirmek için ters gama uygulamasını sağlar. Çoğu tamsayı formatı color_space=1 ve gamma=0.454545 ayarlarını gerektirir . color_space=2 olduğunda , sRGB kod çözme işlemi gerçekleştirilir ( color_space=1 ve gamma=0.4545 ile benzer, ancak aynı değildir ).
6.9. Stereo ve panorama oluşturma #
Küresel panorama oluşturma için şunları yapmanız gerekir:
-
SettingsCamera’nın type parametresini 9 olarak değiştirin . ( Type=1’in küresel olduğunu, ancak panoramalar için geçerli olmadığını unutmayın.)
-
Görüş alanını 360 dereceye veya daha doğrusu 2*pi’ye ayarlayın , çünkü fov parametresi radyan cinsindendir. Bunu RenderView eklentisi ve SettingsCamera ile yapmanız gerekiyor ; her ikisinde de fov parametresi bulunur . Ayrıca, specify_fov=1 ile CameraPhysical kullanıyorsanız , orada da fov’u ayarlayın .
-
Dikey görüş alanını 180 dereceye ayarlayın. Bu biraz kafa karıştırıcı olabilir: Ayarlar Kamerası’nın yükseklik parametresi üzerinden ayarlanır . Ayrıca değer radyan cinsinden değil, derece cinsindendir.
Kübik (6×1) panorama oluşturma için şunları yapmanız gerekir:
-
SettingsCamera’nın type parametresini 10 olarak değiştirin .
-
Çözünürlüğü 6:1 en boy oranıyla (veya stereo yapıyorsanız 12:1) ayarlayın. Yani 1000×1000 piksel küp kenarlarına sahip stereo kübik panorama için 12000×1000 çözünürlükte render alacaksınız.
Stereo görüntüleme için:
-
CPU (Production veya RT) renderlama için bir VRayStereoscopicSettings eklentisi oluşturmanız gerekir . Bu eklenti, SettingsCamera ve SettingsOutput eklentilerinden sonra oluşturulmalıdır , aksi takdirde çalışmaz! Panorama için VRayStereoscopicSettings::focus_method parametresini 1’e, normal kamera için ise 2’ye değiştirmeniz önerilir .
-
GPU ile görüntüleme için RenderView::stereo_on değerini 1 olarak ayarlamanız gerekir . Ayrıca, varsayılan 1.0 yerine RenderView::stereo_eye_distance değerini 6.5 (ortalama insan) gibi bir değere ayarlamak isteyebilirsiniz . Panorama için RenderView::stereo_focus_method parametresini 1’e, normal kamera için ise 2’ye değiştirmeniz önerilir .
Stereo için yatay çözünürlüğü iki katına çıkarmayı da unutmayın. Yani normal render çözünürlüğünüz 640×480 ise, bunu 1280×480 yapın. Görüntünün sol yarısı sol göz görüntüsü, sağ yarısı ise sağ göz görüntüsü olacaktır.
6.10. RT Motoru #
Oluşturucu nesneniz RT CPU veya RT GPU modu parametresiyle oluşturulduysa, SettingsRTEngine ile RT’ye özgü parametreleri kontrol edebilirsiniz . GPU’da render işlemi yapılırken GI’nin her zaman etkin olduğunu ve devre dışı bırakılamayacağını unutmayın.
-
trace_depth – Yansıma ve kırılma ışınlarını izlemek için maksimum derinlik. Varsayılan değer 5’tir.
-
gi_depth – Dağınık GI ışınlarını izlemek için maksimum derinlik. Varsayılan değer 3’tür. Daha hızlı render almanız gerekiyorsa ve sahne dış mekan ise daha düşük bir değer kullanın. İç mekanlarda yeterli aydınlatma elde etmek için bu değeri artırmanız gerekebilir, aksi takdirde sahne çok karanlık kalabilir.
-
coherent_tracing – Tutarlılık için deneysel ışın gruplaması (varsayılan olarak devre dışı). Bu, GPU’larda performansı artırabilir çünkü GPU’lar ıraksamayan kodu daha iyi işler. İlk birkaç örnekleme geçişinde çok fazla yapaylık olacaktır, çünkü ışınların tüm grupları birlikte hareket eder. Zamanla bu kaybolmalı ve nihai sonuç, bu seçenek kapalıyken elde edilen görüntüyle aynı olmalıdır. Bu seçenek yalnızca GPU’da çok fazla GI bulunan iç mekanlar için kullanışlıdır.
-
cpu_bundle_size – Performansla ilgili bir parametre. Bu, birlikte işlenen ışın sayısıdır. CPU için varsayılan değer olan 64 iyidir.
-
cpu_samples_per_pixel – Bir örnekleme geçişinde her piksel için alınacak örnek sayısı. Daha düşük bir değer ayarlarsanız, daha sık görüntü elde edersiniz ki bu etkileşim için iyidir. Daha yüksek bir değer ayarlarsanız, daha az ileri geri örnekleme geçişi nedeniyle nihai kaliteye biraz daha hızlı ulaşabilirsiniz, ancak görüntüler arasında daha fazla beklemeniz gerekecek ve sahnede bir şeyi değiştirmeye çalışırken tepkisiz hissedilebilir.
-
gpu_bundle_size – cpu_bundle_size ile benzerdir , ancak GPU modu içindir. Varsayılan değer 256’dır ve değiştirilmesi performansı artırabilir. En uygun değer GPU mimarisine ve modeline bağlıdır, bu nedenle deneme yapmanız gerekir. 256’nın altında veya üstünde olabilir, ancak varsayılan değer en uygun performanstan çok uzak olmamalıdır.
-
gpu_samples_per_pixel – cpu_samples_per_pixel ile benzerdir , ancak GPU’ların performansı daha iyi olduğu için değerler daha yüksek ayarlanabilir. Maksimum etkileşim için yine de 1 olarak ayarlayabilirsiniz.
-
progressive_samples_per_pixel – Eğer true olarak ayarlanırsa, ilk geçişte piksel başına örnek sayısını 1 olarak ayarlayın ve cpu/gpu_samples_per_pixel değerine ulaşılana kadar her ardışık geçişte bu sayıyı ikiye katlayın. Bu, ilk geçişler arasındaki görüntü farkı daha büyük olduğu için başlangıçta daha hızlı geri bildirim almanızı sağlar.
-
Örnekleme azaltma – 0’ın üzerinde ayarlandığında, 1/(2^örnekleme azaltma) çözünürlükte işlemeye başlanır. Örneğin, değer 4 ise, örnekleme orijinal çözünürlüğün 1/16’sında başlayacaktır. Bu çözünürlükte bir geçiş yapıldığında, çözünürlük iki katına çıkarılır ve tam çözünürlüğe ulaşılana kadar bu işlem tekrarlanır. Örneğimizde bu, 1:16 çözünürlükte ve ardından 1:8, 1:4 ve 1:2 çözünürlükte örneklenmiş görüntüler döndürecektir (Görüntüler tam çözünürlüğe sahiptir, ancak örneklenmemiş pikseller için değerler tekrarlanır). Bu, daha hızlı geri bildirim içindir, ancak görüntüler oldukça pikselli olacaktır.
-
max_sample_level – Sıfırdan büyük bir değere ayarlanırsa, piksel başına örnek sayısı bu değere ulaşıldığında işleme durdurulur. Bu değer, işleyici nesnesinin yapıcı metodu aracılığıyla ayarlanır.
-
max_render_time – Sıfırdan büyük bir değere ayarlanırsa, belirtilen dakika (ondalık sayı) geçtikten sonra işlem durdurulur. Bu değer, render nesnesinin yapıcı metodu aracılığıyla ayarlanır.
-
noise_threshold – Sıfırdan yüksek bir değere ayarlanırsa, komşu pikseller arasındaki gürültü farkı tüm pikseller için bu eşiğin altına düştüğünde işlemeyi durdurur. Kullanılan birim, dahili gürültü hesaplama algoritması tarafından tanımlanır ( SettingsImageSampler’daki eşiklerle aynıdır ). Değerler genellikle 0,001 ile 0,1 arasındadır. Bu, işleyici nesnesinin yapıcı fonksiyonu aracılığıyla ayarlanır.
-
max_draw_interval – Sıfırın (varsayılan değer) üzerinde bir değere ayarlanırsa kısmi görüntü güncellemelerini kontrol eder. Bu, görüntü güncellemeleri arasındaki milisaniye cinsinden maksimum süredir. Bu nedenle, bu süre her geçtiğinde potansiyel olarak kısmi bir görüntü güncellemesi alırsınız. Bu, kullanıcının ön sonuçları daha erken görmesini sağlar. 3dsMax ve Maya için V-Ray’deki değer 150’dir.
-
min_draw_interval – Bu, görüntü güncellemeleri arasındaki minimum süredir. VFB’de veya kendi görüntüleme alanınızda çizim miktarını sınırlamak istiyorsanız sıfırın üzerinde bir değer ayarlayın. Bu, render işlemi çok hızlı olduğunda CPU ve bellek kullanımına yardımcı olabilir. 3dsMax ve Maya için V-Ray’deki değer 50’dir.
-
opencl_texsize – Adından da anlaşılacağı gibi, hem OpenCL hem de CUDA modları için geçerlidir. Bu, opencl_resizeTextures true ise ve doku bundan daha büyükse , dokuların yeniden örnekleneceği çözünürlüktür . Bu, sınırlı GPU belleğiyle başa çıkmaya yardımcı olmak için tasarlanmıştır, ancak yeterli belleğiniz varsa ayrıntı kaybını önlemek için varsayılan 512 değerinden artırabilirsiniz.
-
opencl_resizeTextures – Doğruysa, opencl_texsize uygulayın .
-
opencl_textureFormat – Belleğe okunduktan sonra dokuların bit derinliğini belirler. 0=32 bit kayan nokta, 1=16 bit kayan nokta, 2=8 bit. Varsayılan değer 16 bittir.
-
disable_render_elements – Varsayılan olarak False. True olarak ayarlanırsa, hiçbir render öğesi hesaplanmayacak, bu da bazı hesaplama ve bellek tasarrufu sağlayabilir.
İşleme , max_sample_level, max_render_time veya noise_threshold değerlerinden herhangi birine ulaşıldığında durur. Hepsi sıfır ise, örnekleme süresiz olarak devam eder.
6.11. Çeşitli #
SettingsRaycaster eklentisinin en önemli parametresi şudur:
-
embereUse – Bunu 1 olarak ayarlamanız gerekir (varsayılan değer 0’dır), çünkü ışın izleme performansını artırır.
SettingsRegionsGenerator, üretim modunda kovaların boyutunu ve oluşturulma sırasını kontrol eder.
-
xc ve yc – Kovaların yatay ve dikey boyutları.
-
seqtype – Yeni kovaların oluşturulma sırası – 0=Üstten Alttan; 1=Soldan Sağa; 2=Damalı; 3=Spiral; 4=Üçgenleme; 5=Hilbert eğrisi
-
dynbuckets – Bu varsayılan olarak etkinleştirilmiştir. V-Ray’in yük dengelemesini iyileştirmek için render işleminin sonuna doğru daha küçük kovalar oluşturmasına olanak tanır. Kovalarınızın her zaman aynı boyutta olmasını istiyorsanız 0 olarak ayarlayın.
SettingsOptions menüsü , çeşitli seçenekler içerir; bunlardan bazıları şunlardır:
-
gi_dontRenderImage – Bir GI ön geçişi (Işınım Haritası veya Işık Önbelleği) dosyası oluşturuyorsanız ve gerçek render işlemini atlamak istiyorsanız 1 olarak ayarlayın.
-
mtl_maxDepth – Yansımalar ve kırılmalar için izlenecek maksimum yansıma sayısı. Varsayılan değer 5’tir. Yalnızca ihtiyacınız varsa artırın. RT modunda bunun yerine SettingsRTEngine::trace_depth ayarını kullanın .
-
misc_transferAssets – Dağıtılmış işleme (DR) sırasında eksik varlıkları istemciden işleme sunucusuna aktarmayı dener. Varsayılan olarak devre dışıdır.
-
misc_abortOnMissingAsset – Bir varlık bulunamazsa DR’yi başarısız kıl. Varsayılan olarak devre dışı.
-
`ray_max_intensity` ve `ray_max_intensity_on` – `ray_max_intensity_on` ile etkinleştirirseniz , `ray_max_intensity`, genel görüntü parlaklığında hafif bir sapma pahasına, temizlenmesi zor olan “ateşböceği” yapaylıklarını önlemek için bazı çok parlak örneklerin değerlerini sınırlandırır.
-
num_probabilistic_lights ve probabilistic_lights_on – ( deneysel ) probabilistic_lights_on doğruysa , olasılıksal aydınlatma için örneklenecek ışık sayısı . Olasılıksal aydınlatma, yalnızca birkaç “önemli” ışık kaynağını örnekleyerek yüzlerce ve binlerce ışıkla render hızlarını iyileştirir.
-
misc_lowThreadPriority – Çoklu görev performansını artırmak için düşük iş parçacığı önceliğiyle render işlemi gerçekleştirir. Varsayılan olarak devre dışıdır.
Daha fazla SettingsOptions parametresi için bu sayfaya bakın .
Oluşturulan görüntüyü bir Uygulama SDK API’sinden değil de VFB’den kaydederseniz , ilgili Ayarlar{JPEG|PNG|EXR|TIFF} eklentisi sıkıştırma kalitesini ve kanal başına bit sayısını kontrol eder. Bunları ihtiyaçlarınıza göre değiştirmeniz gerekebilir.
Hareket bulanıklığını etkinleştirmek istiyorsanız, SettingsMotionBlur eklentisinin parametresini 1 olarak ayarlayın. Ayrıca kaliteyi etkileyen geom_samples parametresi de vardır , ancak artırılırsa render süresini önemli ölçüde uzatabilir. Statik olmayan geometri verilerindeki geometri örneklerinin sayısına eşit olmalıdır. Bu eklentinin ( SettingsMotionBlur ) CameraPhysical ile çakıştığını unutmayın .
SettingsLightLinker eklentisi , ışıklar ve nesneler için dahil etme veya hariç tutma listeleri tanımlamanıza olanak tanır; böylece örneğin belirli ışıklar bazı nesneleri etkilemez. Açıklamalar için eklenti parametre meta verilerine bakın.
SettingsCaustics, foton eşleme ile kostik efektlerinin daha iyi işlenmesini sağlar. Bunun çalışması için bazı malzeme parametrelerinin de ayarlanması gerekir.
Kostikler hakkında daha detaylı bilgi için bu sayfaya bakın .
Alan derinliği için CameraPhysical kullanmıyorsanız , bunun yerine SettingsCameraDof’u kullanabilirsiniz . Ancak bu eklentinin ( SettingsCameraDof ) CameraPhysical ile çakıştığını unutmayın .
-
on – DoF’yi etkinleştirmek için true olarak ayarlayın.
-
Diyafram – Kameranın diyafram açıklığının sahne birimleri cinsinden boyutu. Bu sayının artmasının, kameranın fiziksel F-değerinin azalmasına karşılık geldiğini unutmayın.
-
focal_dist – Kameranın odak düzlemine olan uzaklığı (sahne birimleri cinsinden).
.vrscene dosyası birden fazla kamerayı saklayabilir; bunlardan yalnızca biri aynı anda ‘render edilebilir’ olarak ayarlanabilir. Geri kalan kameralar, örneğin V-Ray Standalone’da -camera komut bayrağı kullanılarak render için seçilebilir. Bu, bir projenin genellikle farklı kameralardan farklı sekansların render edilmesini gerektirdiği durumlarda kullanışlıdır; sahnede başka hiçbir şey değişmez – basit bir örnek, aynı görselleştirmenin iki farklı görünümünü render etmek olabilir ve bu şekilde aynı sahne V-Ray Standalone ile iki kez render edilebilir. İki kameraya sahip bir örnek sahnede, kameralardan biri varsayılan olarak render edilirken diğeri dont_affect_settings bayrağı etkinleştirilir.
Gölgelendirme ayarlarında, dokular kameralardan yansıtılabilir. Bu, ya render için kullanılan aynı kamera olabilir ya da sahnede yalnızca doku yansıtmak için kullanılan başka bir kamera olabilir. Her iki durumda da, dont_affect_settings bayrağı etkinleştirilmiş olarak kamera yansıtması için ekstra bir SettingsCamera ve RenderView eklentisi dışa aktarılır. Bu, Çoklu Kameralar kurulumuna benzer . Her durumda, aynı kamera olsa bile, render için bir kamera ve doku yansıtması için başka bir kamera dışa aktarmak iyi bir fikirdir, çünkü her biri için farklı özellikler geçerlidir.
7. Minimum işlenebilir sahne #
Bu, bir nesneyi oluşturacak en basit sahnenin diyagramıdır. Bunlar, oluşturmanız ve ayarlamanız gereken eklentiler ve parametrelerdir.

A. Kısa eklenti referansı #
Bu kaynak, V-Ray’in tüm eklentilerini listelemiyor, ancak çoğu kullanıcının burada belirtilmeyen eklentilere nadiren ihtiyacı olacaktır.
Ayrıca burada parametrelerin sadece bir kısmı açıklanmıştır. Genel kural olarak, eklentiler hakkında bilgi ararken Hata Ayıklama ve yardım bölümündeki tavsiyelere uyun.
A.1. Yaygın eklentiler #
Hafif eklentiler (yukarıdaki 3. bölüme de bakınız) #
LightOmni
-
bozunma – Yoğunluk bozunmasının üssü. Varsayılan değer, ters kare yasasına karşılık gelen 2,0’dır.
Işık Noktası
-
coneAngle – Radyan cinsinden tam koni açısı.
-
Yarı gölge açısı – Koninin etrafındaki kısmen aydınlatılmış ek alanın radyan cinsinden büyüklüğü. Negatif ise koninin içindedir.
-
dropOff – Eksen dışı açıya orantılı zayıflama. Daha büyük değerler, koninin geniş açılarına doğru ışığı azaltır.
-
falloffType – Yarı gölge bölgesindeki geçiş türü. 0 – doğrusal; 1 – düzgün kübik
-
bozunma – Yoğunluk bozunmasının üssü. Varsayılan değer, ters kare yasasına karşılık gelen 2,0’dır.
IşıkDikdörtgeni
-
noDecay – Eğer true olarak ayarlanırsa, ışık yoğunluğu mesafeyle azalmaz. Varsayılan olarak ters kare yasası uygulanır.
-
Çift Taraflı – Dikdörtgenin arka yüzlerinden de ışık yayılıp yayılmayacağı.
-
u_size – Sahnedeki ışığın genişliği (birim cinsinden).
-
v_size – Sahnedeki ışığın uzunluğu (birim cinsinden).
-
Yönsel – Daha büyük değerler, ışığı yerel UVW uzayında +W ekseni boyunca daha yoğun hale getirir.
-
is_disc – Dikdörtgeni disk (elips) şekline yuvarlamak için True değeri.
-
rect_tex – Açık renk için dikdörtgen üzerine doku uygulamak üzere kullanılan bir doku eklentisi.
-
use_rect_tex – rect_tex parametresini gerçekten kullanabilmek için bunu da true olarak ayarlamanız gerekiyor .
-
tex_resolution – Doku aslında bu çözünürlükte yeniden örneklenir. Varsayılan değer 512’dir, bu nedenle yüksek çözünürlüklü bir görüntünüz olsa bile, bunu artırmazsanız pikselli görünebilir. Bu daha fazla bellek tüketecektir.
Işık Küresi
-
noDecay – Eğer true olarak ayarlanırsa, ışık yoğunluğu mesafeyle azalmaz. Varsayılan olarak ters kare yasası uygulanır.
-
Yarıçap – Oluşturulan kürenin sahne birimleri cinsinden yarıçapı.
-
sphere_segments – Küreyi oluşturan düz segment sayısı. Daha pürüzsüz bir şekil istiyorsanız varsayılan 20 değerini artırın.
Hafif Örgü
-
noDecay – Eğer true olarak ayarlanırsa, ışık yoğunluğu mesafeyle azalmaz. Varsayılan olarak ters kare yasası uygulanır.
-
Çift Taraflı – Üçgenlerin arka yüzlerinden de ışık yayılıp yayılmayacağı.
-
Geometri – Işığın şeklini tanımlayacak bir geometri eklentisi. Karmaşık geometrilerin mesh ışıklarını daha yavaş ve gürültülü hale getirebileceğini unutmayın.
-
tex – Geometriye ışık rengi uygulamak için kullanılan bir doku eklentisi. Bu, geometri eklentisinin geçerli UV verilerine sahip olmasını gerektirir.
-
use_tex – tex parametresini gerçekten kullanabilmek için bunu da true olarak ayarlamanız gerekiyor .
-
tex_resolution – Doku aslında bu çözünürlükte yeniden örneklenir. Varsayılan değer 256’dır, bu nedenle yüksek çözünürlüklü bir görüntünüz olsa bile, bunu artırmazsanız pikselli görünebilir. Bu daha fazla bellek tüketecektir.
Işık Kubbesi
-
dome_spherical – Kubbeyi tam bir küreye genişletmek için true olarak ayarlayın. Varsayılan olarak, sahnenin tepe noktasında merkezlenmiş yalnızca yarım bir kubbedir. SettingsUnitsInfo::scene_upDir’in doğru şekilde ayarlanması gerekir.
-
dome_tex – IBL için kullanılacak bir doku eklentisi. Bunun genellikle küresel haritalama gerektirdiğini unutmayın.
-
use_dome_tex – Dome_tex’i kullanmak için bunu da true olarak ayarlamanız gerekiyor .
-
tex_resolution – Doku aslında bu çözünürlükte yeniden örneklenir. Varsayılan değer 512’dir, bu nedenle yüksek çözünürlüklü bir görüntünüz olsa bile, bunu artırmazsanız pikselli görünebilir. Bu daha fazla bellek tüketecektir.
Işıklar
-
ies_file – Işık kaynağını tanımlayan dosyanın yolu
-
filter_color – Işığı renklendirmek için kullanılır. Varsayılan değer beyazdır (1.0, 1.0, 1.0). Işık rengi, IES dosyasındaki renk sıcaklığı ile tanımlanır.
-
soft_shadows – Noktasal ışık olarak sert gölgeler oluşturmak için 0 (varsayılan) olarak ayarlayın; gölgeler için ışığın şeklini kullanmak için 1; aydınlatma için de şekli kullanmak için 2 olarak ayarlayın.
-
güç – Dosyada belirtilen gücü, 0’dan büyükse geçersiz kılar. Birimi lümendir.
-
ies_light_shape – Değeri >= 0 olarak ayarlanırsa dosyadaki şekli geçersiz kılar. Olası numaralandırılmış değerler: aşağıdaki tabloya bakın.
-
ies_light_width – ies_light_shape geçersiz kılma özelliği etkinleştirildiğinde kullanılır.
-
ies_light_length – ies_light_shape geçersiz kılma özelliği açık olduğunda kullanılır.
-
ies_light_height – ies_light_shape geçersiz kılma özelliği etkinleştirildiğinde kullanılır.
-
ies_light_diameter – ies_light_shape geçersiz kılma özelliği açık olduğunda kullanılır.
|
şekil |
Genişlik |
uzunluk |
yükseklik |
çap |
|---|
|
şekil |
Genişlik |
uzunluk |
yükseklik |
çap |
|---|---|---|---|---|
|
0=puan |
0 |
0 |
0 |
0 |
|
1=dikdörtgen |
>= 0 |
>= 0 |
0 |
0 |
|
2=çember |
0 |
0 |
0 |
< 0 |
|
3=küre |
0 |
0 |
0 |
< 0 |
|
4=dikey silindir |
0 |
0 |
> 0 |
< 0 |
|
5 = yatay silindir (uzunluk) |
0 |
> 0 |
0 |
< 0 |
|
6 = yatay silindir (genişlik) |
> 0 |
0 |
0 |
< 0 |
|
7=elips (uzunluk) |
< 0 |
> 0 |
0 |
0 |
|
8=elips (genişlik) |
> 0 |
< 0 |
0 |
0 |
|
9=elipsoid (uzunluk) |
< 0 |
> 0 |
< 0 |
0 |
|
10=elipsoid (genişlik) |
> 0 |
< 0 |
< 0 |
0 |
Güneş Işığı
-
Dönüştürme – Doğrudan ışık eklentisine benzer şekilde, ışık sonsuzdan geldiği için konumun önemi yoktur. Güneş teorik olarak her yöne doğru ışık yaymasına rağmen, dönüş matrisinin doğru şekilde ayarlanması gerekir. Birim matris, -Z ekseni boyunca yönlendirilmiş ışıkla sonuçlanır, bu da öğlen güneşi anlamına gelir.
-
target_transform – Şu anda bir fark yaratmıyor. Başlatılmamış bırakmayın – özdeşlik dönüşümü ayarlayın.
-
bulanıklık – VRaySun’a bakın
-
ozon – VRaySun’a bakın
-
su buharı – VRaySun’a bakın
-
size_multiplier – VRaySun’a bakın
-
color_mode – VRaySun’a bakın. Filtre, Doğrudan ve Geçersiz Kılma modları için değerler sırasıyla 0, 1, 2’dir.
-
intensity_multiplier – Güneşin göreceli yoğunluğu (varsayılan 1.0). Öncelikle SettingsUnitsInfo’da doğru ölçekleri ayarlamayı deneyin.
-
filter_color – Renk tonu uygulayın. Bunu beyaz bırakmak muhtemelen daha iyidir. Ayrıca color_mode parametresine de bakın.
-
ground_albedo – Gökyüzü parametresi, eğer gökyüzü eklenmemişse kullanılmaz. Hayali bir zeminden yansıyan ve gökyüzüne geri saçılan ışığı hesaba katar. Varsayılan değer (0.2, 0.2, 0.2)’dir.
-
horiz_illum – Gökyüzü parametresi, eğer gökyüzü eklenmemişse kullanılmaz. sky_model değeri 1 veya 2 ise, gökyüzünden gelen yatay yüzeylerdeki aydınlatmanın yoğunluğunu (lüks cinsinden) belirtir.
-
sky_model – Gökyüzü parametresi, gökyüzü eklenmemişse kullanılmaz. Gökyüzü aydınlatmasını yaklaşık olarak hesaplayan matematiksel modeli seçer. Değerler: 0=Preetham vd.; 1=CIE Açık; 2=CIE Bulutlu; 3=Hosek vd.
-
up_vector – Sahnenizin yukarı ekseni +Y ise, doğru aydınlatma için (0.0, 1.0, 0.0) olarak ayarlayın.
-
Görünmez – Güneşi kamerada ve yansımalarda görünmez hale getirir.
Geometri eklentileri #
Düğüm
-
transform – Nesne uzayında tanımlanan geometri köşelerine uygulanan dünya dönüşümü.
-
geometri – Örneğin GeomStaticMesh gibi bir geometri kaynağı eklentisine referans .
-
material – Bir malzeme eklentisine referans. Bu her zaman bir MtlSingleBRDF olmalıdır. ( MtlSingleBRDF’nin brdf yuvasına diğer Mtl eklentilerini de takabileceğinizi unutmayın .)
-
visible – Nesneyi devre dışı bırakmak için false olarak ayarlayın. Işın izleme kesişim ağacına dahil edilmeyecektir.
GeomStaticMesh
-
vertices – Nesne uzayındaki köşe koordinatlarını içeren VectorList.
-
faces – Köşe dizisindeki indeksleri içeren bir IntList . Her üç indeks bir üçgen oluşturur. Aynı köşe indeksi birden fazla kez kullanılabilir (parçası olduğu farklı üçgenler için).
-
normals – Nesne uzayındaki normal vektörleri içeren VectorList. Bunların sayısı, köşe sayısından farklı olabilir .
-
faceNormals – Normals dizisindeki indeksleri içeren bir IntList . Her indeks, faces dizisindeki karşılık gelen köşe için normali tanımlar .
-
map_channels – İsteğe bağlı bir iç içe liste listesi; her iç liste geneldir ve üç öğeye sahiptir. İlk öğe kanal indeksidir (genellikle 1’den başlar), ardından UVW koordinatlarını içeren bir VectorList gelir (yalnızca 2D haritalama yapıyorsanız W’yi 0.0’da bırakın). Üçüncü öğe, UVW dizisindeki indeksleri içeren bir IntList’tir. Her indeks, faces dizisinde tanımlanan bir köşeye karşılık gelir.
-
map_channels_names – map_channels listesinin ilgili öğeleri için adlar içeren isteğe bağlı bir dize listesi .
-
face_mtlIDs – Her üçgen için malzeme indekslerini içeren isteğe bağlı bir IntList. İndeks sayısı, faces dizisinin uzunluğunun 3’e bölünmesiyle elde edilir.
-
dynamic_geometry – Eğer true olarak ayarlanırsa, geometri statik kesişim ağacının bir parçası olmaz. Sadece sınırlayıcı kutusu kullanılır ve eğer bu kutu kesişirse ayrı bir yerel ağaç kesişir. Bu, hareketli nesnelerin gerçek zamanlı işlenmesinde performansı artırabilir.
GeomStaticNURBS
-
cvs – Vektörlerden oluşan listelerin listesi. Her iç içe liste, bir NURBS için kontrol noktalarını içerir.
-
Ağırlıklar – İlgili CV’ler listesindeki her bir CV için ağırlıkları içeren kayan noktalı sayılardan oluşan listeler .
-
uKnots – U yönünde düğüm değerlerine sahip kayan noktalı sayıların listesi.
-
vKnots – V yönünde düğüm değerlerine sahip kayan noktaların listesi.
-
generateStatic – Örtük NURBS yüzeyi yerine bellekte açık statik üçgenler oluşturmak için true olarak ayarlayın.
GeomStaticSmoothedMesh
-
mesh – Temel ağ yapısı, genellikle bir GeomStaticMesh’tir .
-
static_subdiv – Eğer true olarak ayarlanırsa, yeni oluşturulan üçgenler statik ışın sunucusu ağacına kaydedilecektir. Bu, bellek kullanımını artıracaktır.
-
use_globals – SettingsDefaultDisplacement’tan global ayarların kullanılıp kullanılmayacağı . Varsayılan değer true’dur.
-
view_dep – use_globals false ise, mozaikleme miktarının görünüme bağlı olup olmadığını belirler. Varsayılan değer true’dur.
-
edge_length – Görünüme bağlı seçenek açıksa (genel veya yerel olarak), bu, piksel cinsinden alt bölümlere ayrılacak hedef kenar boyutudur. Aksi takdirde, sahne birimleri cinsindendir.
-
max_subdivs – use_globals false ise, bu ağ için maksimum üçgen alt bölüm sayısı.
GeomDisplacedMesh
-
mesh – Temel ağ yapısı, genellikle bir GeomStaticMesh’tir .
-
static_displacement – Eğer true olarak ayarlanırsa, yeni oluşturulan üçgenler statik ışın sunucusu ağacına kaydedilecektir. Bu, bellek kullanımını artıracaktır.
-
use_globals – SettingsDefaultDisplacement’tan global ayarların kullanılıp kullanılmayacağı . Varsayılan değer true’dur.
-
view_dep – use_globals false ise, mozaikleme miktarının görünüme bağlı olup olmadığını belirler. Varsayılan değer true’dur.
-
edge_length – Görünüme bağlı seçenek açıksa (genel veya yerel olarak), bu, oluşturulan üçgenlerin piksel cinsinden hedef kenar boyutudur. Aksi takdirde, sahne birimlerindedir.
-
max_subdivs – use_globals false ise, bu ağın orijinal üçgenlerinden birinin maksimum üçgen alt bölüm sayısı.
Diğer parametreler için VRayDisplacementMod’a bakın . -
yer değiştirme_doku_rengi
-
yer değiştirme_tex_kaydırma
-
yer değiştirme miktarı
-
yer değiştirme_kayması
-
sürekliliği koru
-
harita_kanal
-
nesne_mekan_yer değiştirmesi
-
sınırları kullan
-
minimum_sınır
-
maksimum sınır
-
çözünürlük
-
kesinlik
GeomHair
-
YAPILACAKLAR
GeomMeshDosyası
-
dosya – Yüklenecek vrmesh veya abc dosyasının yolu.
-
object_path – Alembic kullanılırken, başlangıç nesne yolu dizesi.
Dokular ve UVWGeneratörler #
TexSky
-
sun – Bir SunLight örneğine referans. sun_dir_only true olarak ayarlanmadığı sürece tüm gökyüzü parametreleri Sun eklentisinden alınır.
-
sun_dir_only – Sadece Güneş’in konumunu ve yönünü alın. Diğer her şey için TexSky parametrelerini kullanın.
A.2. Diğer eklentiler #
Kamera Kubbesi
Etki Lensi
GeomParçacıkSistemi
-
mesh – render_type’a bağlı olarak bazı örnek türleri için kullanılacak bir mesh eklentisi .
-
render_type – 3=çok noktalı; 4=çoklu çizgi; 6=noktalar; 7=küreler; 8=sprite’lar; 9=çizgi. Varsayılan değer 7’dir.
-
renkler – Her parçacık için bir renk içeren Renk Listesi.
-
pozisyonlar – Parçacık pozisyonlarını içeren VectorList.
-
Hızlar – Hareket bulanıklığı için hızları içeren VectorList. Değerler kare başına dünya birimi cinsindendir.
Belirli parçacık türleri için diğer parametreler için, Hata Ayıklama ve yardım bölümünde açıklandığı gibi parametre listesine bakın .
VRayClipper
Hacimsel eklentiler #
Bu sayfadaki bilgiler, V-Ray Uygulama SDK Kullanıcı Kılavuzu’nda da mevcuttur .
