Ana sayfa Donanım 3D Sahne Aydınlatma Yöntemleri

3D Sahne Aydınlatma Yöntemleri

493
0

3D tasarımda kullanılan ışık üretici araçlar ve kullanım yöntemleri üzerine yoğunlaşıyoruz.

Herkese selamlar. Bu ayki konumuz 3D tasarım programlarında sahne aydınlatma yolları. Bu yazının birçoğunuza hesaplama öncesi ışık konfigürasyonu oluşturmada yardımcı olacağını düşünüyorum. öncelikle şunu belirtmek isterim: Bu anlatımda sadece Modo kullandım, hatta ek olarak araçların uygulamalarını Modo üzerinde anlattım fakat programlar arasında ışık türleri ve render sistemleri açısından -kullanıcı seviyesine indirgediğimizde- yaklaşımsal bir farklılık neredeyse yok. Hesaplama motorları kendi aralarında kodlama ve hesaplama algoritmaları açısından illa ki farklılıklara sahiptirler ama bu, zaten biz “son kullanıcıları” çok da ilgilendiren bir konu değil.

Işık kaynakları…
Ben aydınlatma araçlarını ve bu araçların saçtığı ışınların hesaplanma yöntemlerini ikiye ayırıyorum. Bunlardan birisi prosedürel ışık türleri dediğim, programın hazır ışık kaynakları ile uygulanan aydınlatma; diğeri ise irradiance hesaplarına dayalı daha uzun render sürelerine sahip genel aydınlatma (global illumination) sağlama yöntemi…
öncelikle prosedürel ışık türlerine ve onlarla neler yapabileceğimize bakalım.
Omni/Point Light  (Noktasal Işık Kanyağı)
Noktasal ışık kaynakları adlarından da anlaşılacağı üzere tek noktadan yatay ve dikey 360 derece olmak üzere her yöne ışın saçarlar. Bu tür ışık kaynakları gölgeleri kendi merkezlerinden dışarıya doğru oluştururlar. Genellikle iç mekanlarda lamba taklidi yapma açısından kullanışlı olabilirler (resim 01). Görselden de görebileceğiniz üzere çok temel bir gölge oluşumu söz konusu ve ışığı görmeyen yüzeyler doğrudan ölü bölgeler olarak kapkaranlık duruyor. Gerçek hayatta ışık ışınları bir noktaya çarptıktan sonra orada yok olmazlar, enerjilerinin bir kısmını çarptıkları noktada bırakıp başka alanlara sekerler ve dolayısıyla mutlaka bazı seken ışınlar bu ölü bölgelere de geri döndüğünden normalde gölgeler bu şekilde zifiri karanlığa sebep olmazlar. Genel aydınlatma (GI) bize bu noktada yardımcı olur fakat bu konuya sonra değineceğiz.

 

Noktasal ışık kaynaklarının çapının genişletilmesi, onları alan ışığı dediğimiz daha farklı gölge oluşumlarına sebep olan ışık kaynaklarına dönüştürür. Artık ışık kaynağı bir nokta olarak değil bir küreymiş gibi hesaplama yapılır. Bu sayede daha yumuşak gölge oluşumlarına sebep olur. (resim 01b ve resim 02)

Alansal ışıklarda sample (örnekleme) değerlerine dikkat etmelisiniz. Bu değer yumuşatılmış gölgenin yumuşaklığını (pürüzsüzlüğünü) kontrol eder. Ne kadar yüksek olursa gölgelerinizin yumuşadığı kısımlar o kadar az noise”e (gürültüye) sahip olur.
Temsili olarak çizdiğim Resim 02a”ya tekrar döndüğümüzde göreceksiniz ki; noktasal ışık kaynağında bir kürenin gölge sınırlarını belirlemek için iki adet sınır çizgisi yeterliyken, Resim 02b”deki küresel ışık kaynağında bunun için 4 adet temsili sınır çizgisi gerekiyor ve değişken tonda gölge oluşumlarını da simgelemek istesek sonsuz sayıda hat çekmemiz gerekiyor. Alansal ışıkların Sample değerleri bu bahsettiğim temsili ışınların sayısını belirler. Bu değer artırıldıkça hesaplama süresi de artmaktadır, bu yüzden yumuşak gölgeler sahnenizin geneline yayılacaksa bu parametreyi dikkatli belirlemenizde fayda var.
Modo da noktasal ışık kaynağının genişliğini artırmak için ışık özelliklerinden radius (yarıçap) değerini değiştirmeniz yeterli. Aynı zamanda hemen altındaki sample parametresi ile gölge kalitesini ayarlayabilirsiniz.

Spot Light (Konik Işık Kaynağı)
Spot ışıklar adından da anlaşılacağı gibi noktasal bir kaynaktan spot şeklinde ışık ışınları yayan kaynaklardır (resim 03a). Bu ışık kaynakları Modo”da otomatik olarak kenar yumuşaklığına sahiptirler ve ışık ayalarında soft edges derecesini değiştirerek kontrol edilebilirler. İkinci kontrol mekanizması konik açıyı tanımlayacak parametredir. Noktasal ışık kaynağından konik olarak saçılan ışınların açısını bu değerle tanımlayabilirsiniz. Spot ışığın soft edges isimli derece cinsinden önceden tanımlı yumuşaklığı; hesaplama süresini, alan ışıkları kadar uzatmamaktadır. çünkü ışık kaynağı aslında noktasaldır. Zaten spot ışığın da alanını artırdığınızda (radius) yine noktasal ışık kaynağında olduğu gibi hesaplama süresinde bir uzama ve gölgelerde bir yumuşama gözlenecektir
(resim 03b).

 
Dome/Sky Light (Kubbe/Gökyüzü
Işık Kaynağı)

Kubbe ışık kaynağı prensip olarak kubbe şeklinde dev bir alansal ışığı temsil eder. Başka bir deyişle bir kubbeden merkeze (sahnemize) doğru her yönden ışık ışınları yollar ve tabii ki sample değeri ile beraber çalışır. Yumuşak bir etki için sample değerini artırmanız gerekir. Kubbe ışığının etkisini göstermesi için modellerinizin açık alanda yer alması gerekir (resim 04 – standart sahnemizdeki tavanı kaldırdık).  Gölge oluşumlarına dikkat ederseniz neredeyse yok gibi. Bunun sebebi belli bir yönden gelen ışık olmayışıdır. Güneşsiz kapalı havalarda bu durumla karşılaşırız…
Genel Aydınlatma (GI) sistemine henüz giriş yapmadık fakat kubbe ışık sisteminin, ışık sekmeleri hesaplayarak çalışan GI sistemini temel anlamda taklit eden (fake GI) bir varyasyon olarak düşünebilirsiniz.

 

Area Light (Alansal Işık Kaynağı)
Alan ışıklarından aslında dolaylı olarak bahsetmiş olduk şimdiye kadar. Omni ve Spot gibi noktasal ışık kaynaklarının genişliğini artırdığımızda aslında birer alan ışığına dönüştüklerini söylemiştik. Ek olarak ayrı tanımlı alan ışıkları da Modo”da mevcuttur. Bu ışık türü ile alan yapısını (dikdörtgen, elips) tanımlayarak bir ışık kaynağı elde edersiniz. Yine sample değeri ile kalite üzerinde oynama yapabilirsiniz (Resim 05).

Photometrik (IES) Işık Kaynağı
IES ışık kaynakları, ışık üretici firmalar tarafından hazırlanmış .IES uzantılı dosyalar ile aydınlatma sağlama yöntemidir. Bu dosyalar genellikle iç dekorasyon sunum çalışmalarında lens etkili ışıkların yaydığı ışınların sahne içinde yayılımını taklit etmek için kullanılır. Spotlight prensibi ile çalışır fakat tek farkı kendine özgü bir ışık saçılımı göstermesidir. örnek olarak www.lithonia.com adresinden ücretsiz olarak IES ışıkları indirebilirsiniz
(Resim 06).

Directional Lights (Yönlü Işık Kaynağı)
Yönlü ışık kaynakları doğrusal bir rota boyunca enerji kaybı göstermeksizin aydınlatan ışık kaynaklarıdır. Güneş ışığını teklit etmek için birebirdir. Daha önce değindiğim ışık kaynaklarının aksine, bu ışık kaynağının sahneye yakınlık veya uzaklığı aydınlatma gücünü değiştirmez. Paralel gölge uzanımları elde etmek için birebirdir (Resim 07a).
Doğrusal ışık kaynaklarının parametreleri spread angle diye tanımlayabileceğimiz,  ışınların “yön”den uzaklaşma derecesidir. Yine sample değeri ile gölgedeki yumuşama kalitesini belirleyebilirsiniz
(Resim 07b).
Genel olarak hazır ışıklandırma birimleri bu kadar diyebiliriz. Artık yavaş yavaş raytrace (ışın takibi) sistemlere geçiş yapıp Irradiance hesaplarına dayalı aydınlatma yöntemlerini açıklamaya geçebiliriz.

 
Global Illumination (Genel Aydınlatma)
Irradiance temelli ışık takibinden önce daha basit bir aydınlatma aracından bahsetmek isterim. Kısaca GI dediğimiz bu sistem sahnenizdeki yüzeylerden sekerek ışın takibi (raytrace) hesapları ile sahnede daha gerçekçi bir aydınlanma görüntüsü oluşturur. Daha önceki prosedürel aydınlatma araçlarını tanıtırken size sunduğum görsellere baktığınızda ışık kaynaklarının doğrudan karanlık noktalar şeklinde gölgeler oluşturduğunu görebilirsiniz. Genel aydınlatma sistemini açtığınızda bu tür kapkaranlık olmaması gereken karanlık bölgelerden kurtulursunuz. Bu tabii ki ışığın sahnede yüzeyden yüzeye sekerek o bölgeyi aydınlatmasından kaynaklanır. Yönlü ışık örneğinde genel aydınlatma aracı kullandığımızdaki değişimi Resim 07b ile Resim 08″i kıyaslayarak görebilirsiniz. Sahnenin sağ tarafındaki karanlık bölge bir miktar aydınlanmıştır.

 
GI sistemi sadece aydınlık olması gereken karanlık kısımların aydınlanmasını sağlamakla kalmaz. Aynı zamanda toplanan ışık ışınlarının daha birikimli olarak parlaması (caustics) gibi etkileri de sağlar. Güneşli bir günde ayna ile güneşi yere yansıtmanız bu etkiye bir örnektir. Yansımalı yüzeyiniz, seken ışınların yere düşmesini ve orada bir miktar toplanmasını sağlamıştır. Başka bir örnek mercek ile ışığı bir noktada toplama durumu olarak verilebilir. Cam bardakların etrafında bahsettiğim ışık toplanmalarına gün içersinde mutlaka şahit oluyorsunuzdur. 
İkinci bir GI etkisi ise renk toplanmaları sağlamaktır. Renkli bir cisimden seken ışın, çarptığı yüzeye o renkten bir miktar bırakır. Bu iki etkiyi resim 09″da görebilirsiniz.

Modo”da GI hesapları için bir kaç parametre mevcut… Bunlardan birincisi Indirect Rays değeridir. Bu değer, sekme yapan ışın sayısını tanımlamaktadır. Ne kadar fazla ışın yollanırsa çıkan sonuç o kadar gürültüden (noise) temiz olacaktır. Tabii ki render süresindeki artış karşılığında…
İkinci bir parametre Indirect Bounces değeridir. Bounce, yollanan sayıda her ışık ışınının yüzeyle buluştuktan sonra veya şeffaf cisim içerisinde kırıldıktan sonra kaç kez daha yoluna devam edeceğini belirler. Bu değeri belirlerken dikkat edeceğiniz noktalardan biri zaten her ışının sektikten veya kırıldıktan sonra güç kaybettiği olmalı. Işık kaynağınızın gücüne bağlı olarak varsayalım 2 kere seken ışınınız bir dahaki hedefe ulaşana kadar “ölüyorsa”, sizin bounce değerini 4 yapmanız gereksiz yere beklemenize sebep olacaktır. Sayıyı her artırmanız Indirect Rays değeri ile çarpımlı olarak hesaplama sürenizin uzaması anlamına gelmektedir.  Tabii gerçek dünyada her ışığın ölene kadar sonsuz sayıda sektiğini düşünürsek gerçekçi sonuçlar için hesaplama sürecini saatlerce beklemek kaçınılmazdır.

üçüncü parametre olarak Indirect Range (dolaylı mesafe)”den bahsedebiliriz. Bu değişken, ışık ışınlarının sekme mesafesini belirlemektedir. Ve seken bir ışık sonsuza kadar gidiyorken (atmosfer emilimi genelde hesap dışı bırakılır) bunun hesaplanması gereksiz olacağından aydınlatmak istediğiniz sahnenin en büyük uzunluğunu (eni veya boyu diyelim) 2 veya 3 ile çarpıp o değeri buraya girmeniz render sürenizde belli bir miktar hızlanmaya sebep olacaktır.
Dördüncü parametre Indirect Caustics”tir. Burada sadece yansımalar, sadece kırılmalar veya her ikisi için birden seçenekleri vardır. İşaretlediğiniz durumlar hesaplama sürecine dahil edilecektir.
Son olarak Affect Subsurface Scattering”i işaretlemeniz sahnenizdeki SSS materyalinin indirect (dolaylı) ışımalardan etkilenmesini sağlayacaktır.

Irradiance (IR) Hesaplama
Irradiance hesaplama yöntemi GI”a alternatif bir yaklaşımdır ve sample tabanlı düz noktasal GI hesaplarının temiz bir çıktı için çok uzun sürmesinden dolayı mantıklı bir alternatiftir. Temel prensip olarak 2 veya daha çok adımdan oluşur. İlk başta sahnedeki ışık toplanmaları (yansıma, kırılma vs.), onları betimleyen piksel renkleri olarak  sahneye damgalanırlar (resim 10a). Bu, birkaç adımda giderek sıklaşarak sağlanabilir (modo”da 4 pass mesela). Daha sonra genel sahne hesaplama (render) sürecine geçilir ve daha önceki adımda damga olarak vurulmuş Irradiance pikselleri, yumuşatma yoluyla o anda hesaplanan sahneye yayılarak kaynatılır. Burada 1 piksel ile vurulmuş bir damga 8 veya daha fazla piksele dağıtılır (damga sayısı bu yüzden önemlidir). Böylece GI gibi her piksele ne miktarda ışık düştüğü hesaplanmaz (örneğimde 8 piksel için 1 piksellik damga hesaplanması gibi). özetleyici damgalar geniş alana yayılarak daha yumuşak bir sonuç elde edilir. Sample değerine duyarlı noise sorunundan kurtulmuş olunur.
Resim 10b”deki çıktının hesaplanma süresi ile resim 09″un hesaplanma süresi arasındaki fark ve IR”ın daha temiz çıktısı göz önüne alınırsa IR”ın avatajları daha rahat gözlenebilir.

 
IR hesaplamada dikkat edilmesi gereken noktaları IR parametrelerini açıklarken vurgulamak istiyorum.
öncelikle IR hesaplama süreci GI hesap parametrelerinin bir kısmını kullanır. Bunlar yukarıda anlattığım Indirect Bounces, Indirect Range ve Indirect Caustics”tir. Bu parametrelere ek olarak Irradiance Rays değeri sahnedeki IR hesapları için sahneye gönderilecek ışın sayısıdır. Kaliteli bir çıktı için yüksek tutmalısınız. Aksi taktirde az sayıda damga elde edeceğinizden bu damgalardan çıkacak sonuçlar benekli bir görünüm sağlayacaktır (resim 11).
Irradiance Rate değeri damgalar arası piksel aralığını vermektedir. Burada 1 temiz bir görünüm için yeterli olacaktır. Fakat daha hızlı bir hesaplama için eğer çıktı çözünürlüğünüz düşükse değeri azaltabilirsiniz.

Interpolation Values değeri IR ışınının çarptıktan sonra bölünüp farklı yönlere dağılacağı ışın sayısı olarak düşünülebilir. Yolladığınız ışınlar sekme sayısıyla da çarpımlı olarak her seferinde bu değerle orantılı olarak çoğalacaktır kaybolmadan önce…
Son anlattığımız GI ve IR yaklaşımlarından sonra aydınlatma yöntemi olarak son bir çözüme ulaşıyoruz:

 
Object Light (Obje Işık Kaynağı)
IR ve GI hesapları dolaylı ışıklandırmaları hesapladıklarından dolayı bize objeye materyal olarak vereceğimiz ışık malzemesi ile sahne aydınlatma fırsatı vermektedirler. Bu şekilde oluşturacağınız ışık materyali sizin üç boyutlu modelinizin geometrisine göre ışın saçılımı sağlayacaktır (Resim 12 ve Resim 00). Bunun için Modo”da materyal ayarlarında luminosity değerlerine başvurabilirsiniz. 

3D tasarımda ışık kaynakları hakkında daha fazla fikir sahibi olduğunuzu umuyorum. Satırlara sığmayan tabii ki çok fazla detay var. Ama zaman içinde başka konularda çalışıyor olsak bile bunların birçoğuna doğrudan veya dolaylı olarak değineceğimizi düşünüyorum. Bir dahaki görüşmemize kadar hepiniz hoşça kalın.


BİR CEVAP BIRAK

Please enter your comment!
Please enter your name here