Işın izleme, bir sahne boyunca ışınların yolunu izleyerek bir görüntü oluşturan bilgisayar grafiklerini işlemeye yönelik bir tekniktir. Işınlar sahnedeki nesnelerle etkileşebilir, onlardan sıçrayabilir ve renk gibi özellikler kazanabilir.
Ray Tracing: Temel Bilgiler
Işın izleme, gerçek dünyadaki aydınlatmayı taklit eder. Gördüğümüz ışık, güneş gibi enerji kaynaklarından yayılan fotonların sonucudur. Fotonlar nesnelerle çarpışırken sıçrayabilir ve dağılabilir. Bunu çalışırken görmek için ihtiyacınız olan tek şey bir ayna. Aynaya çarpan ışık bir yansıma oluşturur.
Işın izleme bunu simüle eder. İzlenen ışınların sayısı, milyonlarca fotonun görüş alanımızda yansıdığı gerçek dünyaya kıyasla önemsiz kalıyor. Modern oyunlar, piksel başına bir ila dört ışın arasında bir yerde izler. Yine de, gerçek dünyayı simüle etmek için bu yeterli.
Bir ışının yolunu izlemek aynı zamanda oyun dünyası ile etkileşime girmesini sağlar. Kırmızı bir nesneden yansıyan bir ışın, o renkten etkilenebilir ve yakınlarda kırmızı bir parıltı oluşturur. Işınlar, oyun sanatçılarının nesnelere verdiği özelliklere bağlı olarak farklı şekillerde dağılabilir ve gerçekçi yarı yansıtıcı veya pürüzlü yüzeylere izin verir.
Işın izleme, 3D grafikler için ileriye doğru atılmış önemli bir adımdır. Bir oyunda hareket ederken ışınların yolunu simüle ederek gerçekçi bir görüntü oluşturur. Bu, ortam oyuncu tarafından görülmediğinde bile ortamla etkileşime girebilen aydınlatmaya yol açar. Işın izlemenin çalışması için özel olarak tasarlanmış donanım gerekmez, ancak çok zorlu olduğu için ışın izlemeyi hızlandırabilen bir video kartı veya oyun konsolunda yalnızca pratiktir.
Ray Tracing ve Rasterleştirme (veya bildiğiniz gibi 3D grafikler)
Bu açıklamayı anlasanız bile kafanız karışabilir. Geçmiş oyunlarda, şimdi birkaç on yıllık oyunlarda bile yansımalar vardı. Işın izleme nasıl farklıdır?
Geçmiş 3D oyunlar ve çoğu modern oyunlar rasterleştirmeyi kullanır. Rasterleştirme, oyuncu tarafından görülebilen bir 3B oyun dünyasının unsurlarını bir 2B görüntüde birleştirir. Oyuncunun göremediğini oluşturmak için kullanılan herhangi bir performans boşa harcandığından, yalnızca oyuncu tarafından görülmesi gerekenleri işler. Ancak bu bir sorun yaratır.
Ayna örneğine dönelim. Oyuncunun ortamı ve oyuncu karakteri oyuncu tarafından görülmez (en azından birinci şahıs oyununda). Rasterleştirme ile aynanın yansıtacağı hiçbir şey yoktur.
Tabii ki modern oyunlarda aynalar var. Sahneyi iki kez canlandırıyorlar. Bir pas oyuncunun bakış açısından, diğeri ise farklı bir bakış açısından. Ancak bu, bir sahneyi oluşturmak için gereken performansı iki katına çıkarır.
Popüler 3D oyun motorlarında kullanılan bir teknik olan ekran alanı yansımaları, bir yansıma oluşturmak için ekrandaki verileri kullanır. Bu teknik, su gibi oyuncunun bakış açısına göre bir açıda olan yansıtıcı yüzeyler için idealdir. Ancak, yansıtılan öğe ekran dışına çıkarsa, yansıyan nesneler kaybolur.
Işın izleme bu sorunları paylaşmaz çünkü rasterleştirmenin aksine oyuncunun bakış açısının dışında izlenebilir.
Ayrıca, ışınların yüzeylerle etkileşime girmesine izin veren oyunlarda, ışın izleme gerçekçi renk taşması ve rasterleştirmenin işlenmesi zor olan yarı yansıtıcı yüzeyler gösterebilir.
Işın İzleme Hangi Donanımı Gerektirir?
Işın izleme yeni bir fikir değil. Bilgisayar bilimcileri, 1980'lerin başında ışın izleme ile deneyler yaptılar ve gerçekçi aydınlatma, yansımalar ve gölgeler içeren statik görüntüler yarattılar. Maalesef oluşturmaları saatler sürdü.
Bir video oyunu, saniyede 30 kare veya daha yüksek hızda gerçek zamanlı ışın izleme gerektirir. Bu, yalnızca ışın izlemeyi hızlandırmak için tasarlanmış bir video kartıyla mümkündür.
Nvidia'nın RTX ışın izleme özelliği, Tensör Çekirdeği adı verilen silikona dayanır. Tensör Çekirdekleri yalnızca RTX video kartlarında bulunur. Nvidia'nın GTX kartları, ışın izleme kullanarak bir oyun oluşturabilir, çünkü söylendiği gibi ışın izleme, amaca yönelik silikon gerektirmez. Ancak, performans RTX kartlarına kıyasla berbat. Ve RTX ışın izlemeli Minecraft gibi bazı oyunlar, ışın izlemeyi etkinleştirme biçimleri nedeniyle bir RTX ekran kartı gerektirir.
Işın izlemeyi hızlandıran AMD kartların belirli bir markası yoktur ve özel silikonu yoktur. Bunun yerine, daha iyi sonuçlar için donanım düzeltmelerini ve yazılım güncellemelerini kullanırlar. Işın izlemeyi hızlandıran AMD kartlarını belirlemek daha zordur, bu nedenle ayrıntılara dikkat edin.
Sony PlayStation 5 ve Xbox Series X ve S, AMD'den ışın izlemeyi hızlandırabilen grafik donanımına sahiptir. Ancak etkinleştirmek geliştiricilere bağlıdır ve çoğu oyun bunu yapmaz. Dikkate değer bir örnek, başlangıçta PC'de RTX ışın izlemeyi destekleyen ancak yeni nesil konsollarda ışın izlemeyi desteklemeyen Cyberpunk 2077'dir. Özellik, gelecekteki bir yamada yeni nesil konsollar için vaat ediliyor.