Oyun grafikleri son on, hatta bilhassa son beş yıl içerisinde çok önemli ilerlemeler kaydetti. Gerçekçi görsellere yetişmek emeliyle donanımlar daima gelişmeye devam ediyor. Öte yandan teknoloji devleri daha yüksek kalite, performans ve tecrübe sunmak hedefiyle 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, epeyce kıymetli bir teknolojiye bakacağız: path tracing.
NVIDIA, GDC 2022 ile birlikte sürece tekniklerini bir sonraki noktaya taşımak maksadıyla kimi adımlar attı. Yakın vakitte “en yanlışsız 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), manzarayı çoğaltabilmek için tek bir piksel ile birlikte rastgele istikametlerde 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 gaye 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ü, tıpkı 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ı imajını 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.
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ı taraftan bakıldığında görülebilen gerçekçi nesneler/objeler üretilebiliyor. NVIDIA, Turing mimarisinden başlayarak bu şiddetli 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ı yeniden NVIDIA’dakine benzeri formda ışı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. Lakin 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 imgeyi 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 gaye haline getirdi.
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 kesimiyle gözden geriye hakikat, ışığı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 usulü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ı.
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 imal tekniğini nasıl birleştirebileceğini detaylı olarak anlattı.
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 halde 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 epey kısa, lakin çö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ı gerçek bir halde yaklaştıracak kadar çözülürse, fotogerçekçi manzaralar 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ı, tertipli 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 manzaralar 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 defa benimsendikten sonra başarılı bir teknik olarak görüldü, lakin gereğince pratik değildi. Kajiya’nın orjinal makalesindeki imajlar sadece 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ü kestirim 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 cins teknikleri kullanmaya başladı. Bu günlerde karşımıza çıkan birtakım klipleri kamera tarafından çekilen imajlardan ayırt etmek hakikaten sıkıntı.
Donanımlar gelişti gelişmesine, lakin hala birtakım sıkıntılar var. Tek bir imgeyi 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. Lakin 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 dayanaklı 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 formda gördük. Lakin artık tanıklık ettiğiniz üzere ray tracing dayanaklı oyunların sayısı süratle artıyor. Ayrıyeten makul ışın izlemeli oyunlar, klasik 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 başka teknikler kullanılarak) odalara yahut ortamlara stokastik olarak örneklendiği manasına gelmekte.
Simüle etme sürecinde bir ışını tek bir sekmeden geriye hakikat izlemek yerine, ışınlar ışık kaynaklarına kadar, çoklu sekmeler üzerinden izleniyor. Birkaç oyun bunu esasen yapıyor ve sonuçlar epeyce 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, tıpkı 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 birtakım 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 formda 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. Tekrar misal 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 grup ayrıyeten yeni DirectX Raytracing (DXR) API’si aracılığıyla tam RTX dayanağı sağlamak için Microsoft ile paydaşlık kurdu.
GPU devi birinci günden beri RTX teknolojisini geliştirmeye devam etti. RTX 30 serisiyle birlikte RT çekirdekleri ikinci jenerasyona 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ı kadronun kartları bu mevzuda biraz daha zayıf, lakin yeni RDNA 3 mimarisi ile yeniden ışı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 jenerasyondan itibaren ışın izleme dayanağı sunuyor. Yeniden tıpkı halde, Arc ekran kartlarında entegre olarak ışın izleme çekirdekleri yer alacak. Şirket tıpkı 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ş emelli kullanım alanları fark etmeksin, hayal edemeyeceğimiz sinematik görseller yakında bizimle olabilir.