Son Konu

Path Tracing Nedir?

klimaci

Yeni Üye
Katılım
9 Ocak 2022
Mesajlar
151,968
Tepkime
0
Puanları
36
Yaş
45
Credits
0
Geri Bildirim : 0 / 0 / 0
imodifier

Oyun grafikleri son on, hatta bilhassa son beş yıl içerisinde çok önemli ilerlemeler kaydetti. Gerçekçi görsellere yetişmek maksadıyla donanımlar daima gelişmeye devam ediyor. Öte yandan teknoloji devleri daha yüksek kalite, performans ve tecrübe sunmak gayesiyle yazılım alanında her geçen gün üzerine koymaya devam ediyor. Artık tıpkı ray tracing (ışın izleme) üzere, gelecekte ismini sıkça duyacağımız, hayli kıymetli bir teknolojiye bakacağız: path tracing.

NVIDIA, GDC 2022 ile birlikte sürece tekniklerini bir sonraki noktaya taşımak hedefiyle kimi adımlar attı. Yakın vakitte “en gerçek sürece yöntemi” olarak duyurulan bu teknoloji, ışın izleme ve grafikler kelam konusu olduğunda çıtayı yükseltecek üzere görünüyor.

Basitçe söylemek gerekirse path tracing (yol izleme), imgeyi çoğaltabilmek için tek bir piksel ile birlikte rastgele taraflarda sıçramalar yaparak ışık yolunu simüle etmeye dayanan daha gelişmiş bir ışın izleme biçimi. Işınlar doğrusal bir biçimde izlenmek yerine, ışık kaynağından amaç objeye kadar birçok sıçrama üzerinden izlenmekte.



Grafik Araştırmaları Lider Yardımcısı Aron Lefohn, RTX 3090 ve bu teknikle birlikte neler yapılabileceğini gösteren birçok görüntü klip yayınladı. Ormanda yürüyen bir kaplanı gösteren klipte, 3 milyar örneklenmiş üçgen olduğu bildirilen 30 sıçramalık bir metrikle yol izleme özelliği bulunuyor. Üstteki tweet dizisinden yayınlanan tüm görüntüleri görebilir, fikir sahibi olabilirsiniz.

Bununla birlikte, Unreal Engine bir müddettir path tracing takviyesine sahipti ve YouTube kullanıcısı BlackOudanArt tarafından oluşturulan aşağıdaki görüntü, birebir GPU’nun neler yapabileceğini gözler önüne seriyor. Gölgelerin derinliğini ve yumuşaklığını, ahşap ve metal dokuların foto-gerçekçi tabiatını ve ışığın canlı imgesini burada görebilirsiniz.



Path tracing gerçek vakitli ilerliyor, dinamik ışık ve gölge, yansımalar ve kırılmalarla dolu etkileşimli, fotogerçekçi 3B ortamların oluşturulması için kapıları aralıyor. Pekala “yol izleme” olarak Türkçeye çevirebileceğimiz path tracing tam olarak nedir?

İlk olarak, oyun ve donanım dünyasında karşımıza çıkan birtakım tabirleri tanıyalım ve gelişmiş grafikler oluşturmak için tüm bu teknolojilerin nasıl kullanıldığına bakalım.

Oyunlarda yahut çeşitli yazılımlarla üretilen görseller çoklukla üç boyutlu. Rasterizasyon (rasterleştirme) ile üretilen imgeler yalnızca tek bir bakış açısına yönelik. Bu teknik esasen en başından beri GPU’ların kalbinde yer aldı. Çağdaş NVIDIA GPU’lar saniyede 100 milyardan fazla rasterizasyona uğramış piksel üretebiliyor. Bu da rasterleştirmeyi oyun üzere gerçek vakitli grafikler için ülkü hale getiriyor.

path-tracing-ray-tracing-rasterizasyon.jpg


Işın izleme (ray tracing) ise çok daha güçlü, bizleri cezbeden görseller sunan büsbütün farklı bir teknik. Yani tek bir noktayla sonlu değiliz ve birçok farklı noktadan, birçok farklı istikametten bakıldığında görülebilen gerçekçi nesneler/objeler üretilebiliyor. NVIDIA, Turing mimarisinden başlayarak bu kuvvetli iş yüklerinin üstesinden gelebilmek için RT çekirdekleri sunmaya başladı. Bugün tek bir GPU saniyede milyarlarca ışını işleyebiliyor. Öte yandan AMD, RDNA 2 mimarisi ve Radeon RX 6000 serisi ekran kartlarıyla birlikte ışın izleme dünyasına giriş yaptı. Intel tarafından piyasaya sürülen Xe-HPG tabanlı Arc Alchemist ekran kartları tekrar NVIDIA’dakine benzeri halde ışın izleme donanımları taşıyor.

Tüm bu ışınları izleyebilme imkanı, ışığın gerçek dünyada nasıl dağıldığını, rasterleştirme ile mümkün olandan çok daha yanlışsız bir biçimde simüle etme imkanı tanıyor. Fakat bu ışığı nasıl simüle edeceğiz ve bu simülasyonu GPU’ya nasıl getireceğiz?

NVIDIA grafik araştırmaları lider yardımcısı David Luebke, 16. yüzyılda, Kuzey Avrupa Rönesansının en kıymetli isimlerinden biri olan Albrecht Dürer’in kıssasını anlatarak bir tanımlama yapıyor. Ünlü ressam, 3 boyutlu bir manzarayı 2 boyutlu bir yüzeyde çoğaltmak için ip ve tartılar kullanırdı. Dürer, klasik ve çağdaş matematiği sanatla bir ortaya getirmeyi, tabir ve gerçekçilikte atılımlar gerçekleştirmeyi bir amaç haline getirdi.
Albrecht-Durer-Ray-Tracing-Isin-Izleme.jpg
Albrecht Dürer, 2B yüzeyler üzerinde 3B objelerin yanlışsız temsillerini oluşturmaya yönelik bir teknik olan, şu anda “ışın izleme” olarak bilinen şeyi birinci tanımlayan kişiydi.
Dürer, 1525’te Treatise on Measurement ile ışın izleme fikrini birinci tanımlayan kişi oldu. Dürer’in fikri nasıl tanımladığını görmek, konsepti anlamanın en kolay yoludur. Yalnızca ışığın etrafımızda gördüğümüz dünyayı nasıl aydınlattığını bir düşünün. Artık ışınları Dürer’in kullandığı üzere bir ip modülüyle gözden geriye gerçek, ışığın etkileştiği objelere kadar takip ettiğinizi hayal edin. Işın izleme budur.

IBM’den Arthur Appel, Dürer’in vefatından 400 yıl sonra ışın izleme fikrinin bilgisayar grafiklerine nasıl getirilebileceğini, hesaplama süreçleri ve gölgelere uygulama prosedürüyle gösterdi. On yıl sonra Turner Whitted, bu fikrin yansımayı, gölgeleri ve kırılmayı nasıl yakalayabildiğini gösteren birinci kişi oldu ve görünüşte kolay olan konseptin çok daha karmaşık bilgisayar grafiklerini nasıl mümkün kıldığını açıkladı. Sonrasında ilerleme daha da hızlandı.
Turner-Whittedin-1979-tarihli-makalesi.jpg
Turner Whitted’in 1979 tarihli “Gölgeli ekran için geliştirilmiş bir aydınlatma modeli” başlıklı makalesi, ışın izleme inovasyonunu süratli bir formda hayata geçirdi.
Film imal şirketi Lucasfilm’den Robert Cook, Thomas Porter ve Loren Carpenter, 1984 yılında bilgisayar grafiklerinde erişilemeyen hareket bulanıklığı, alan derinliği, yarı gölgeler, yarı saydamlık ve bulanık yansımalar dahil olmak üzere birçok yaygın sinema üretim tekniğini nasıl birleştirebileceğini detaylı olarak anlattı.
Jim-Kajiyanin-1986-tarihli-makalesi-The-Rendering-Equation.jpg
Jim Kajiya’nın 1986 tarihli makalesi “The Rendering Equation”, ışığın bir sahnede nasıl hareket ettiğini açıklamak için sırf şık, fizik temelli bir denklemi özetlemekle kalmadı, tıpkı vakitte bunu uygulamak için tesirli metotlar için bir özet niteliğindeydi.
CalTech profesörü Jim Kajiya ise iki yıl sonrasında “The Rendering Equation” isminde yedi sayfalık bir makale yayınladı. Jim Kajiya, bilgisayar grafiklerini ışın izleme yoluyla fizikle birleştirdi ve ışığın bir sahne boyunca dağılma halini yanlışsız bir formda temsil etmeyi mümkün kılan yol izleme algoritmasını tanıttı.

Path Tracing Nedir?


Path tracing tekniği geliştirilirken Jakiya’nın bilgileri beklenmedik bir ilham kaynağına döndü, ışınımsal ısı transferi yahut ısının bir ortama nasıl yayıldığı üzerine çalışmalar yapıldı. Bu alandaki fikirler, ışığın havadan nasıl geçtiğini ve yüzeylerden saçıldığını açıklayan sürece denkleminin ortaya çıkmasına vesile oldu.

Tekniği oluşturmak için gereken denklem hayli kısa, fakat çözülmesi o kadar kolay değil. Dijital ortamdaki sahneler çok karmaşıktır. Oluşturma denklemini direkt çözmenin bir yolu yok, bu da Kajiya’nın ikinci değerli yeniliğine yol açtı.

Kajiya, denklemi çözmek için istatistiksel tekniklerin kullanılabileceğini gösterdi: direkt çözülmese bile, tek tek ışınların yolları boyunca çözmek mümkün. Işın yolunun uzunluğu sahnedeki aydınlatmayı hakikat bir formda yaklaştıracak kadar çözülürse, fotogerçekçi imgeler oluşturmak mümkün.

Peki bir ışın yolu boyunca sürece denklemi nasıl çözülür? Kajiya’nın uyguladığı istatistiksel teknikler Monte Carlo entegrasyonu olarak bilinir ve 1940’larda bilgisayarların birinci günlerine kadar uzanır. Path tracing için geliştirilmiş Monte Carlo algoritmaları geliştirmek, bugüne kadar açık bir araştırma sorunu olmaya devam ediyor; NVIDIA araştırmacıları, sistemli olarak path tracing’in verimliliğini artıran teknikler geliştirerek bu işe öncülük ediyor.

Jim Kajiya aslında grafik alanındaki izleme tekniklerinin ana sınırlarını çizdi ve fitili ateşledi. Böylece bilgisayar tarafından fotogerçekçi imajlar oluşturmak mümkün hale geldi. Bilgisayar grafikleri için öncü isimlerden olan mühendisin bu yaklaşımı, ışığın gerçek dünyada hareket etme biçimini ayrıntılandırırken işin fizik kısmını yansıtıyordu. Nihayetinde günden güne çeşitli farklı sürece teknikleri ortaya çıkmaya başladı ve günümüzde çarpıcı gerçekçilik düzeylerine sahip görsel efektler her alanda kullanılıyor.

Yol izleme yaklaşımı, 1987’de birinci kere benimsendikten sonra başarılı bir teknik olarak görüldü, fakat gereğince pratik değildi. Kajiya’nın orjinal makalesindeki manzaralar sırf 256×256 pikseldi ve oluşturulması çok kıymetli bir bilgisayarda bile 7 saatten fazla sürdü.

Moore Yasası’nda belirtildiği üzere, mikroişlemcilerdeki verimlilik ve transistör sayıları katlanarak artmaya devam ederken bilgi süreç gücü iddia edilemeyecek düzeylere ulaştı. Böylece grafik teknolojilerinin yanı sıra birçok alanda ilerlemeler kaydedildi.

1998 yılında yayınlanan A Bug’s Life’dan başlayarak, ışın izleme tekniği her geçen gün daha fazla sinemada kullanıldı. 2006 yılında gösterime giren Monster House ise iz bırakan sinemalar ortasında yerini aldı. Monster House, Solid Angle SL (Autodesk tarafından satın alındı) ve Sony Pictures Imageworks ile ortaklaşa geliştirilen Arnod yazılımı kullanılarak meydana getirildi.

Dünya çapında 140 milyon dolardan fazla hasılat elde eden sinema aslında bilgisayar animasyonlarının gelecekte neler sunabileceğini gösteren bir fragman üzereydi. Bilgi süreç gücü ve donanımlar geliştikçe her şey daha da hızlandı ve daha fazla sinema bu tıp teknikleri kullanmaya başladı. Bu günlerde karşımıza çıkan birtakım klipleri kamera tarafından çekilen manzaralardan ayırt etmek hakikaten güç.

Donanımlar gelişti gelişmesine, fakat hala birtakım sıkıntılar var. Tek bir manzarayı işlemek hala saatler alıyor. Hatta eksiksiz bir sinema yapmak, manzaraları işlemek için “render farms (işleme çiftlikleri)” ismi verilen geniş sunucu sistemleri inşa ediliyor ve bunlar aylarca daima çalışıyor.

Oyunlarda path tracing fikri kısa vakit öncesine kadar hayal bile edilemezdi. Birçok oyun geliştiricisi, gereksinim duyduğu performansa sahip oldukları takdirde gerçek vakitli grafikler için “yol izleme” tekniğini kullanmak istediğini açıkça belirtmişti. Fakat geçmişte donanımlarla sunulan performans çok yetersizdi ve bu fikir ulaşılamaz görünüyordu.

Sonrasında GPU’lar gelişmeye devam etti ve artık ışın izleme takviyeli donanımlara ulaşmak o kadar da sıkıntı değil. Tıpkı sinemalarda olduğu üzere, bu teknolojileri oyunlarda birinci olarak hudutlu bir biçimde gördük. Lakin artık tanıklık ettiğiniz üzere ray tracing takviyeli oyunların sayısı süratle artıyor. Ayrıyeten makul ışın izlemeli oyunlar, klâsik rasterizasyon tabanlı sürece tekniklerini kimi ışın izleme efektleriyle birleştiriyor.

Geliştiriciler isterlerse tekniklerin oyunlarında bir karışımını kullanabilirler. Oyun geliştiricileri, birincil ışınlar üzerinde rasterizasyon yapabilir ve akabinde sahnenin aydınlatılması için ışın yolunu izleyebilir.



Rasterizasyon, kolay tabirle tek bir noktadan bir dizi ışığı yayma sürecidir. Işın izleme bunu daha da ileri götürür ve ışınları birçok noktadan rastgele bir istikamete gönderebilir. Yol izleme (path tracing) ise ışın izlemeyi daha büyük ışık simülasyon sisteminin bir bileşeni olarak kullanan gerçek ışık fiziğini simüle eder. Bu, bir sahnedeki tüm ışıkların (Monte Carlo yahut öbür teknikler kullanılarak) odalara yahut ortamlara stokastik olarak örneklendiği manasına gelmekte.

Simüle etme sürecinde bir ışını tek bir sekmeden geriye yanlışsız izlemek yerine, ışınlar ışık kaynaklarına kadar, çoklu sekmeler üzerinden izleniyor. Birkaç oyun bunu zati yapıyor ve sonuçlar hayli etkileyici. Hatırlarsanız Microsoft, Minecraft’ta path tracing’i çalıştıran bir eklenti yayınlamıştı. Öte yandan Quake II yeni bir eklenti sayesinde bu tekniği kullanabiliyor.

Doğrusu hala yapılacak çok şey var. Öte yandan tüketicilerin bu cins tecrübeleri yaşaması için yüksek bilgi süreç gücü sunabilen, güçlü donanımlara sahip olması gerekiyor. Oyun geliştiricileri ise teknoloji dünyasındaki gelişmişlik düzeyine nazaran daha kaliteli, birebir vakitte daha fazla güç gerektiren oyunlar tasarlıyor. Ek olarak, görsel hesaplama kelam konusu olduğunda en güçlü projelerin oyunlar olduğunu belirtelim.

Path tracing yeniden bir ışın izleme biçimi, lakin iki imaj oluşturma tekniğinin ortalarında kimi nüanslar var. Ray tracing (ışın izleme) izleme tekniği aslında ismiyle her şeyi açıklıyor. Bu bağlamda ışınlar simüle ediliyor ve köklerinden son noktasına kadar izleniyor.

Buna karşılık path tracing, başlangıç noktası ile gaye ortasında rastgele taraflarda ayrılmak üzere yayılan farklı ışınlar üretiyor. Yansıyan ışık, ışın izlemedeki üzere doğrusal halde değil, yüzeylere ulaştığında vereceği farklı yansılarla birlikte gerçekçi tasvirlerle sonuçlanıyor. Nihayetinde path tracing çok daha geniş kapsamlı ve gelişmiş bir teknik. Bu nedenle donanımsal olarak daha fazla kaynak gerektirdiğini not düşelim.

GPU’lar güçlenmeye devam ettikçe “path tracing” kullanımı daha yaygın hale gelmeye başlayacak. Örneğin Arnold (Autodesk), V-Ray (Chaos Group) ve Renderman (Pixar) üzere araçların yanında güçlü ekran kartlarına sahip olan dizayncılar ve mimarlar, fotogerçekçi maketleri saniyeler içinde oluşturmak için ışın izleme tekniklerini kullanıyor.

Ekran kartları artık her zamankinden daha fazla bilgi süreç gücü sunduğundan, ışın izlemenin akabinde path tracing için bir sonraki adım olacak. “Ada Lovelace” mimarisini temel alan RTX 40 serisi ekran kartlarının performans açısından sıçrama yapmasını bekliyoruz. Yeniden emsal atılımlar yüksek ihtimalle RDNA 3 mimarisi ve Radeon RX 7000 serisiyle birlikte AMD tarafında yaşanacak.

2018 yılında NVIDIA oyun geliştiricileri için sinema kalitesinde sürece sağlayan ışın izleme teknolojisini duyurdu. RTX teknolojisi, Ampere ve Turing mimarilerinde donanımsal olarak bir ışın izleme motoruyla birlikte çeşitli arabirimler aracılığıyla ışın izleme takviyesi sunuyor. Yeşil kadro ayrıyeten yeni DirectX Raytracing (DXR) API’si aracılığıyla tam RTX takviyesi sağlamak için Microsoft ile iştirak kurdu.

GPU devi birinci günden beri RTX teknolojisini geliştirmeye devam etti. RTX 30 serisiyle birlikte RT çekirdekleri ikinci kuşağa geçiş yaptı ve gerçek vakitli ışın izlemeyi destekleyen oyunlar yayılmaya devam ediyor. Bununla birlikte, RTX 40 “Ada” kartlarla birlikte sırf CUDA değil, RT ve Tensor çekirdeklerinde gelişmeler bekliyoruz.

AMD ise RDNA 2 mimarisiyle birlikte ekran kartlarına Işın Hızlandırıcılar (Ray Accelerator-RA) entegre etmeye başladı. Kırmızı ekibin kartları bu bahiste biraz daha zayıf, fakat yeni RDNA 3 mimarisi ile tekrar ışın izleme alanında önemli geliştirmeler yapmaları koşul.

Harici GPU pazarına birinci adımını bu yıl atan Intel, Xe-HPG mimarisiyle birlikte birinci kuşaktan itibaren ışın izleme dayanağı sunuyor. Yeniden birebir biçimde, Arc ekran kartlarında entegre olarak ışın izleme çekirdekleri yer alacak. Şirket birebir vakitte yazılım tarafında kıymetli çalışmalar yapıyor.

Sonuç olarak ray tracing, path tracing ve başka görüntüleme teknikleri önümüzdeki yıllarda sanayi tarafından daha fazla benimsenecek. Oyunlar, sanal gerçeklik ve hatta iş gayeli kullanım alanları fark etmeksin, hayal edemeyeceğimiz sinematik görseller yakında bizimle olabilir.
 
Üst Alt