OTT Açıklıyor: Işın İzleme Nedir?

Işın izleme(Ray tracing) , ışığın gerçek hayatta çalışma şeklini simüle eden gelişmiş bir bilgisayar grafiği biçimidir. Gerçekten fotogerçekçi görünen bilgisayar grafikleri oluşturabilir.

Geçmişte ışın izleme , (ray tracing)Hollywood CG filmleri gibi devasa bilgisayar grafik projeleriyle sınırlıydı . Şimdi PC oyunlarında(PC gaming) ve yakında yeni nesil oyun konsollarında bulunuyor.

Bunun neden bu kadar çok insanı heyecanlandırdığını anlamak için ışın izlemeli grafikleri şimdiye kadar kullanılan ana grafik oluşturma yöntemiyle karşılaştırmamız gerekiyor: rasterleştirme.

Rasterleştirme ve Işın İzleme Karşılaştırması(Rasterization vs Ray Tracing)

Modern gerçek zamanlı bilgisayar grafikleri harika görünüyor! Yirmi ya da otuz yıl önceki temel 3D grafiklerle bir ilgisi olduğunu hayal etmek zor. Gerçek şu ki, Playstation 1 ve mevcut Playstation 4 gibi bir konsol , 3D grafikleri oluşturmak ve ardından onu 2D ekranınıza yerleştirmek için aynı temel yöntemi kullanır.

Bu, rasterleştirme(rasterization) olarak bilinir . "Raster", tam olarak ekranınızın gösterdiği gibi bir piksel ızgarası olarak gösterilen bir görüntüdür. Rasterleştirme(Rasterization) , bir 3B sahneyi ekrandaki 2B görüntüye dönüştürme işlemidir. 

Bunun yapılması gerekiyor, çünkü 3B sahne 3B'dir. Derinliği vardır, böylece sanal nesneler birbirinin yanından geçebilir ve herhangi bir açıdan bakılabilir. Rasterleştirme sürecinde, bilgisayar, ekranınız temelde bu 3B dünyaya açılan bir pencere olsaydı, o sahnenin nasıl görüneceğini bulması gerekir.

Gerçek hayatta, bir sahnenin dokusu ve ışığının(texture and lighting) yanı sıra şekli, derinliği ve boyutu(depth and size) vardır . Işığı simüle etmek geleneksel olarak herhangi bir ev bilgisayarının yapabileceğinden daha fazla (home computer)bilgisayar gücü(computer power) aldığından, programcılar bu rasterleştirme işlemini kullanarak gerçek ışığa, renge ve dokuya(color and texture) yakın görünen bir şey yaratmak için hileler ve kısayollar yarattılar .

Işın izleme(Ray tracing) , bir bakıma çok daha basittir. Gerçek ışık yanılsamasını yaratmak için uzun bir numaralar listesi kullanmak yerine gerçek ışığı simüle eder. Şimdi bilgisayar, ekranınızın “penceresinden” görülen sahnenin nasıl görüneceğini bulması gerektiğinde, sadece ışın izleme simülasyonunu çalıştırıyor ve her şey yolunda gidiyor.

Gerçek dünyada, gözünüze giren ışık ışınları, retinanıza ulaşmadan önce, baktığınız her şeyden seker. Işın(Ray) izleme, aynı sonucu daha verimli bir şekilde elde eder. Bunu, "kameradan" simüle edilmiş ışık "ışınlarını" çekerek ve sanal sahnede sıçramasına izin vererek , yolda renk ve parlaklık bilgilerini toplayarak yapar. (color and brightness information)Ekranınız sanal gözü temsil eder, böylece gerçekten gerçekçi bir sanal dünya görürsünüz.

Işın izleme(ray tracing) kullanarak , tek bir teknik nesneler, yansımalar, gölgeler ve bir sahnenin gerçek gibi görünen diğer öğelerini oluşturur. Bu gerçekçilik, simülasyonun bir sonucu olarak doğal olarak gerçekleşir, hiçbir hile veya kısayol gerekmez!

Işın İzlemeyi Nerede Deneyimleyebilirsiniz?(Where To Experience Ray Tracing)

Işın izlemeyi çalışırken görmek istiyorsanız, tek yapmanız gereken bilgisayar tarafından oluşturulan grafikleri kullanan herhangi bir modern filmi izlemek. Toy Story 4 gibi bir CG filmi(CG film) izlerseniz, gördüğünüz her şey ışın izlemenin(ray tracing) bir ürünüdür . 

Etkileşimli ışın izlemeli bir dünyayı keşfetmek istiyorsanız, şu anda şehirde yalnızca bir oyun var. Nvidia GPU'ların RTX serisi,(RTX series of Nvidia GPUs) video oyunları ve bu teknolojiyi destekleyen uygulamalar. Bazı ışın izleme uygulamalarını RTX olmayan donanımlarla(RTX hardware) çalıştırabilirsiniz , ancak iyi bir performans elde edemezsiniz. RTX donanımını(RTX hardware) gösteren en iyi oyunlar hakkındaki makalemize göz atmayı unutmayın .

Sorun şu ki, RTX donanımı(RTX hardware) hala oldukça pahalı. Bununla birlikte, gelecek nesil video oyun konsolları, bir tür ışın izleme desteğine sahiptir. Bu, ana akım oyun dünyasının ışın izlemeyi bir sonraki büyük oyun teknolojisine dönüştürmeye yardımcı olabileceği anlamına geliyor. Yine de, ışın izlemeyi gerçek zamanlı olarak yapmak bu kadar zorsa, bu yeni GPU'lar bunu nasıl başarıyor(GPUs manage) ?

Gerçek Zamanlı Işın İzleme Nasıl Yapılır?(How Is Real Time Ray Tracing Achieved?)

Herhangi bir bilgisayar, ışın izleme kullanarak bir 3B sahne oluşturabilir. 3D render paketleri ile çalışan insanlar bunu yıllardır yapıyor. Herhangi bir modern CPU , sahnenin etrafındaki ışık yolunu izlemek için gereken gerçek hesaplamaları yapabilir.

Bununla birlikte, modern CPU'lar ve GPU'lar(CPUs and GPUs) , gerçek zamanlı olarak bir görüntü oluşturmak için bu sayıları yeterince hızlı kıramaz. Örneğin, Monsters Inc veya Toy Story(Inc or Toy Story) gibi filmler yapmak için kullanılan devasa bilgisayar çiftliklerinin nihai ürünün tek bir karesini oluşturması saatler alıyor. 

Buna karşılık, modern video oyunlarının oynanabilir olarak kabul edilmesi için her saniyede en az otuz kare görüntü oluşturması gerekir ve altın standart şu anda saniyede 60 kare civarında ayarlanmıştır.

Peki Nvidia RTX serisi(Nvidia RTX series) gibi GPU'lar ışın izleme yöntemini oynanabilir kare hızlarında kullanmayı nasıl başarabilir? Cevap, her şey için ışın(t use ray) izleme kullanmadıklarıdır. En azından modern başlıklarda değil.

İşin püf noktası, geleneksel grafikleri seçici ışın izleme ile birleştirmektir. RTX kartları, daha geleneksel bir GPU'ya (GPU)oturan(RTX) özel ışın izleme donanımına sahiptir . Bu şekilde, geleneksel grafik donanımının bazı eksikliklerini telafi etmek için ışın izleme kullanılabilir.

Tamamen ışın izlemeli bir RTX kartıyla(RTX card) oynayabileceğiniz video oyunları (video game)var(are) . En iyi örnek Quake II RTX'tir(Quake II RTX) . Bu, tam gerçek zamanlı ışın izlemenin mümkün olduğu kadar basit, onlarca yıllık bir video oyunudur . (video game)Ancak, mevcut video oyunlarına(video game) saf ışın izleme uygulamak söz konusu olduğunda , bu tür donanımların ana akım haline gelmesi için daha yıllar geçmesi gerekecek.

Işın İzleme Geleceği İzliyor mu?(Is Ray Tracing the Future?)

Kısa cevap evet, ışın izleme(ray tracing) gelecek. Daha uzun cevap şu ki, gerçek zamanlı ışın izlemeyi(ray tracing) mümkün kılan donanım daha ucuz hale geldikçe, muhtemelen geleneksel işlemenin yavaş yavaş yerini alacağını göreceğiz. Işın izlemeli grafikler yeni konsol neslinin normal bir parçası haline gelirse, geri dönüş olmayacak.

Geliştiriciler, tüm popüler platformlar bunu destekleyeceğinden, ışın izleme özelliklerini başlıklarına güvenle dahil edebilir. Işın izlemeli grafikler üstün olduğu için, yıldızlar gerçekten uygun fiyatlı donanımlarda ışın izlemenin gelişi için hizalanıyor. Bu, gerçek fotogerçekçiliğin sonunda burada olabileceği anlamına gelir. 

Işın izlemenin ana akım oluşturma yöntemi(rendering method) olacağına dair diğer önemli işaret , geliştiricilerin video oyunları ve diğer 3D uygulamalar yapmak için kullandıkları ortak araçlara nasıl dahil edildiğidir. Başka bir deyişle, geliştiricilerin kendi ışın izleme çözümlerini icat etmeleri artık gerekli değil.

Unreal Engine 4 veya Frostbite gibi popüler grafik motorları artık RTX donanım hızlandırmalı ışın izleme desteği içeriyor . Geliştiricilerin, başlıkları için bir seçenek olarak dahil etmelerini çok daha olası hale getirmek.

Ray Tracing'i Şimdi Satın Almalı mıyım?(Should You Buy Into Ray Tracing Now?)

Yazma sırasında, hala birinci nesil ışın izleme donanımındayız. Fiyatlar düşmüş olsa da, performans hala oldukça vasat. Sert, erken benimseyen biriyseniz, PC'de ışın izleme hakkında seveceğiniz çok şey var.

Erken benimseyen biri olarak yüzlerce veya binlerce dolar harcamak istemiyorsanız, teknolojiyi sunmayı vaat eden yeni nesil ana akım konsollara yatırım yapmak veya RTX 20 serisi kartların halefini beklemek daha iyidir.



About the author

Hem Chrome hem de oyun uygulamalarında deneyimli bir yazılım mühendisiyim. Son 4 yıldır Google Chrome tarayıcısı için çözümler üzerinde çalışıyorum ve ayrıca birkaç farklı platform için oyunlar üzerinde çalıştım. Becerilerim yazılım projelerini tasarlama, test etme ve yönetme konusunda yatıyor. Yazılım mühendisi olarak işime ek olarak, gizlilik, kullanıcı hesapları ve aile güvenliği konularında da tecrübeliyim.



Related posts