Path Tracing Nedir? Path Tracing vs Ray Tracing
Canavar gibi oyun bilgisayarları, NVIDIA’nın ray tracing/ışın izleme destekli yeni nesil ekran kartlarıyla güçlenirken bu teknolojiden yararlanan oyunların sayıları da giderek artıyor. Hatta öyle ki Portal, Minecraft ve Quake II gibi klasik oyunlar bile ray tracing’in getirilerinden yararlanabilecekleri güncellemeler alarak bambaşka bir çehre kazanıyor. Fakat son dönemde, gerçek zamanlı oyun içi aydınlatma teknolojileri noktasında bir başka isim daha konuşuluyor: path tracing/yol izleme. Bu yazının hazırlandığı dönem itibarıyla en iyi uygulama alanı, Cyberpunk 2077: Phantom Liberty eklentisi olan path tracing, temelde ray tracing ile benzerlikler taşıyor fakat ondan daha üstün olduğu, ray tracing’li sahnelerle path tracing’li sahneler yan yana konulduğunda hemen anlaşılıyor. Peki, nedir bu path tracing? Gelin, hem bu teknolojinin ayrıntılarına göz atalım hem de bu teknolojinin, ray tracing ile olan karşılaştırmalarını, örnek videolarla gösterelim.
Path Tracing: Ray Tracing’in Bilinmeyen Ağabeyi mi, Yoksa Yakışıklı Kardeşi mi?
Az önce adını andığımız oyunlar ve onların dışında kalan ray tracing destekli başarılı yapımlar, bu teknolojinin ne kadar etkileyici olduğunu, oyunun atmosferini nasıl değiştirdiğini gösterdi, göstermeye devam ediyor. Oyundaki karakterinizin yansımasını su birikintisinde görmeniz, cam ve ayna gibi yüzeylerde gerçek zamanlı yansımaları takip edebilmeniz, gerçekçi gölgeler ve daha nice görsel efekt, ray tracing ve ray tracing destekli ekran kartları/bilgisayarlar sayesinde görülebiliyor. Evet, ray tracing, yer yer gerçekten de göz kamaştıran, muazzam bir teknoloji. Ama gerçek zamanlı oyun içi aydınlatma konusunda zirve değil. Çünkü path tracing diye bir gerçek var.
Bugün, teknoloji otoriteleri tarafından bilgisayar grafikleri alanında öncü kabul edilen ve “En İyi Teknik Başarı” dalında Oscar kazanan Jim T. Kajiya tarafından icat edilen path tracing, ray tracing’in Monte Carlo yöntemini kullanan bir türevidir. Kajiya’nın 1986 yılında tanıttığı ve ilk etapta film/animasyon alanında kullanılan path tracing, mimari görselleştirme ve bilimsel simülasyonlarda da değerlendiriliyor.
Anımsatmak gerekirse ray tracing’de, her bir piksel için bir ışın oluşturulur ve ışınların, sahnedeki nesnelerle etkileşime girmesi sağlanır. Bu ışınların yansıma ve kırılma gibi etkileşimlerle sahnede dolaşması mümkün kılınır. Path tracing’de ise her bir piksel için birden fazla ışın oluşturulur. Işınların rastgele yönlerde seyahat edip bir ışık kaynağı veya bir sınıra ulaşana dek etkileşime girmeleri sağlanır. Bu sayede ray tracing’e kıyasla daha gerçekçi şekilde aydınlatılmış ve gölgede kalmış sahneler ortaya çıkar.
Ray tracing’e göre daha yüksek hesaplama gücüne ihtiyaç duyan ve NVIDIA’nın RTX ailesindeki ekran kartlarına hayat veren grafik işlemcilerin RT çekirdeklerince hesaplanan path tracing, karmaşık ışık etkileşimlerini modellemek için kullanılabilecek en güçlü algoritmalardan biridir. Şimdi dilerseniz gelin, Cyberpunk 2077’de, “overdrive mode” olarak adlandırılan path tracing özelliğiyle ray tracing kıyaslaması yapılan bir videoyu paylaşalım:
Hatırlatmakta yarar var; path tracing, bilgisayar oyunları için şimdilik çok taze bir teknoloji ve ray tracing’in bilgisayar oyunları için ilk çıktığı dönemde görülen dijital gürültü etkileri ve hesaplama hatalarının benzerleri, şimdilik path tracing’li bazı sahnelerde de var. Ama merak etmeyin, bu sorunları ortadan kaldırmakla kalmayıp ekran kartının yapması gereken hesaplamaları, yapay zekâ algoritmalarına havale eden bir teknoloji, NVIDIA fırınından taze çıktı: Ray Reconstruction.
Daha Az Ekran Kartı Gücüyle Path Tracing’den İyi Görseller: Ray Reconstruction
Teknoloji dünyasının yerinde duramayan ve geliştirdiği teknolojilerle bu dünyaya yön veren NVIDIA, yapay zekânın yalnızca ChatGPT ile sınırlı olmadığını herkese göstermek istercesine Ray Reconstruction adını verdiği teknolojiyi, bu yazıda adını bolca andığımız Cyberpunk 2077 vesilesiyle gösterdi. Geleneksel ray tracing ve az önce aktardığımız path tracing aydınlatma yöntemlerinden farklı olarak NVIDIA’nın DLSS (Deep Learning Super Sampling/Derin Öğrenme Tabanlı Süper Örnekleme) teknolojisinin bir parçası olan Ray Reconstruction’ın arkasında, yapay zekâ destekli sinir ağları bulunuyor. Ray ve path tracing’in sunduğu görüntü kalitesini daha ileriye taşımayı hedefleyen (ve başaran) Ray Reconstruction, hem zaman hem de mekân bazlı pikselleri kullanıyor. Zaten yapay zekâ donanımları ve yazılımları üzerinde uzun süredir mesai harcayan NVIDIA’nın, farklı ray trace efektleri tanımak üzere eğittiği Ray Reconstruction, önceden hazırlanmış gürültü azaltıcıları (denoiser), NVIDIA’nın süper bilgisayar eğitimli yapay zekâ ağı ile değiştiriyor. Bahse konu yapay zekâ ağı, örneklenmiş ışınlar arasında daha yüksek kaliteli pikseller hazırlayarak ekrana yansıtıyor. Bu sayede oyunlarda yüksek kaliteli ve daha az sanatsal hata (artifact) içeren görseller oluşturuyor.
Gerçek zamanlı ışın izleme teknolojisi devrimini, oyun dünyasına “RTX” ifadesiyle tanıştırmış olan NVIDIA, Ray Reconstruction ile yepyeni bir devrime imza atıyor. Kimi çevrelerce ray tracing’in bir uzantısı şeklinde görülse de hem ray tracing hem de path tracing’in devrede olduğu durumlara kıyasla çok daha iyi görseller yaratmayı başaran Ray Reconstruction, her iki teknoloji ile ekrana yansıyabilen dijital gürültü ve hesaplama hatalarını da minimize ediyor. “Progresif metal müzik dünyasının NVIDIA’sı” diyebileceğimiz Dream Theater’ın, “Metropolis, Part 1” parçasında da geçen bir cümle, az sonra paylaşacağımız, 39 bin 60 resimlik videoyla tam örtüşüyor: “Bin kelimeye bedel bir resim var,”
Aydınlatma Dünyasında Kozlar Tamamen Oynanmış Değil, Lumen Sırasını Bekliyor
Ray tracing ve path tracing anlatımı boyunca, CD Projekt Red’in kendi geliştirdiği ve artık kullanmayacağı REDengine 4 ile hayat bulan Cyperpunk 2077’den söz etmiş olsak da oyun içi aydınlatma konusunda devrim yaratan bir başka teknoloji daha var; Lumen. Unreal Engine 5’in tanıtımında bir başka -motora özgü- teknoloji olan Nanite ile büyük yankı uyandıran Unreal Engine 5, Lumen ile hem ray tracing hem de path tracing’e meydan okuyor.
Gerçek zamanlı evrensel aydınlatma çözümü şeklinde tanımlayabileceğimiz Lumen, sahnelerin, gerçekçi ve dinamik bir biçimde aydınlatılmasını, ayrıca mekân ve nesne gölgelendirmelerini hazırlıyor. Tüm aydınlatma gerçek zamanlı hesaplandığından ışık kaynaklarının pozisyonları, ışık renkleri ve yoğunlukları aniden değişse dahi bu değişimler, oyun sahnesine kolayca yansıtılabiliyor.
Yeterlilik bakımından ray tracing’den üstün, path tracing’den biraz daha geride olan Lumen, henüz çok yeni bir teknoloji ve hâlâ gelişim aşamasında bulunuyor. Bu nedenle, gerçek zamanlı render süreçlerinde nesnelere köşe yumuşatma uygulaması ve uzak mesafe gölge hesaplaması gibi noktalarda yer yer hatalı/kusurlu sonuçlar oluşturabiliyor. CD Projekt Red ekibinin, sonraki oyunlarında Unreal Engine 5 oyun motorundan yararlanacağını, bu zamana kadar elde ettiği path tracing deneyim ve bilgilerini, gerek Epic Games gerekse NVIDIA ile paylaşacağını belirtelim. Bu bilgi alışverişi neticesinde Lumen, çok başka bir noktaya ulaşabilir.
Lumen’in, ray tracing ve path tracing gibi teknolojilerden ayrılan ve kendisini, onlardan üstün konuma getiren bir ekstrası var, o da Nanite. Yine Unreal Engine 5’in yeniliklerinden biri olan ve sanal geometri şeklinde isimlendirilen Nanite, yüksek detaylı modellerin oyun içinde doğrudan kullanılabilmesini sağlıyor. “Oyun içi aydınlatma ile bunun ne ilgisi var?” diye soran okurlar mutlaka olacaktır. Gerçek zamanlı oyun içi aydınlatmada temel hedef, en gerçekçi sahneleri oluşturmak olduğundan Lumen ve Nanite, eş zamanlı olarak değerlendirildiğinde, ortaya fotogerçekçilik sınırlarını yıkan sahneler çıkıyor. Ayrıca oyunlarda, genellikle bir ayar değişkeni olarak gördüğümüz “level of detail” Lumen/Nanite ikilisiyle tarih oluyor. Zira geliştiriciler, oyunlara ekledikleri modellerin, farklı detay seviyeleri için ayrı sürümlerini oluşturmak zorunda kalmıyor, Lumen ve Nanite ikilisi, her bir modelin, hangi mesafeden nasıl görüleceğini kendisi hesaplıyor ve ekrana ulaştırıyor.
Bundan yıllar önce pre-baked lighting/önceden hesaplanmış grafiklerle hazırlanan oyunları, görsellere hayran kalarak oynarken bugün, gerçek zamanlı path tracing ve Lumen gibi teknolojilerin, oyunları nereye getirdiğinden söz ediyoruz. Bu, oyun dünyasının ne kadar hızla geliştiğini de gösteriyor. En az oyun dünyası kadar hızla gelişen “canavar” da bahse konu gelişime, yepyeni bilgisayar modelleriyle uyum sağlıyor. Monster Notebook imzalı Abra, Tulpar ve tamamen yenilenen Semruk ailesindeki oyun bilgisayarları; ray tracing, path tracing ve Lumen destekli yapımları, yüksek çözünürlükte ve akıcı görsellerle oynamanıza imkân tanıyor.