Ivvo
Ivvo
Kutay Bilen' İle Herşey.

Muhteşem Mario Bros. Oyununun Düşük Boyutu Nasıl Mümkün Oluyor?

Harika Mario, neredeyse hepimizin bildiği bir oyun. Yıllar öncesinde oynamış olduğumuz atarilerde yer alan bu oyun, teknolojinin gelişmesiyle …

Harika Mario, neredeyse hepimizin bildiği bir oyun. Yıllar öncesinde oynamış olduğumuz atarilerde yer alan bu oyun, teknolojinin gelişmesiyle birlikte bir epey değişti. Lakin hala atari vakitlerindeki Üstün Mario, pek çoğumuzun aklının bir köşesinde kendisine yer bulabiliyor. Pekala Harika Mario Bros. oyununun yalnızca 31 kilobayt boyutunda olduğunu biliyor muydunuz?

Günümüz teknolojisi ile atarileri elbette kıyaslayamayız. Hatta şu sıralar, ilerleyen devirlerde piyasaya sürülecek Red Dead Redemption 2'nin 150 GB, Call of Duty: Çağdaş Warfare'ın 175 GB boyutunda olacağı konuşuluyor. Özcesi Üstün Mario Bros. bu devasa büyüklükteki oyunların en ufak bir evrakı bile etmiyor. Pekala bu durum nasıl mümkün oldu dersiniz?

YAZI ARASI REKLAM ALANI

Harika Mario Bros. birinci kere 1985 yılında hayatımıza girdi. Lakin o periyotlarda bugünkü oyun konsolları değil, Nintendo'nun NES isimli bir konsolu vardı. Bu oyun konsolu yalnızca 256 x 240 boyutlarında imaj oluşturabiliyordu. Bu da yalnızca 180 kilobayt boyutundaki bir manzaranın gösterilebileceği manasına geliyordu. Ayrıyeten NES, yalnızca 2 kilobayt boyutunda RAM'e sahipti. NES için geliştirilen oyunlar, bir çeşit kartuşla (bildiğiniz oyun kaseti) beraber geliyordu. Bu kartuşlardan her biri 8 kilobayt ile 1 megabayt ortasında oyun depolayabiliyordu. Münasebetiyle oyunları NES'in belleğine aktarmanın rastgele bir yolu yoktu.

Hal bu türlü olunca da geliştiriciler, oyun geliştirebilmek için kartuştaki bilgilerin yalnızca 2 kilobaytını NES RAM'ine aktarmaya karar verdiler ve bu sayede de ortaya, 180 kilobaytlık imajları çıkardılar. Fakat bu süreç, yapılabilirlik açısından hiç de kolay değildi. Geliştirici grubun Muhteşem Mario Bros.'u nasıl NES ile uyumlu hale getirdiği ise, oyunun teknik evraklarındaki birtakım ipuçlarıyla anlatılıyor.

Çabucak üstte gördüğünüz bu fotoğraf, Muhteşem Mario Bros.'ta yer alan birtakım formları gösteriyor. Bu fotoğrafta gördüğünüz her şey, aslında Harika Mario Bros.'ta bulunan ve tekrar tekrar karşımıza çıkan data bloklarından ibaret. Görselde bulunan her küçük nokta, 16 x 16 piksel boyutundaki döşemelerden oluşuyor. Geliştiriciler, işte bu görseldeki bilgilerden faydalanarak Harika Mario Bros.'u kısımlar halindeki bir bütün haline getirebildiler. Fakat sihir, yalnızca bundan ibaret değil.

Gelin artık de Mario'nun birinci kısmının, aslında ne kadar olduğuna bakalım;

Aslına bakacak olursak Üstün Mario Bros.'ta bulunan bu imaj sıkıştırma süreci, bugün bile geçerliliği olan bir durum. Günümüzün en gelişmiş oyunlarında bile buna misal teknikler kullanılıyor ve bu tekniklerin bir ortaya getirilmesiyle de o enfes oyunlar ortaya çıkıyor. Aslında bunu şöyle düşünün; oyunlardaki meskenlerin çeşitliliği sonludur, ayrıyeten oyundaki otomobiller ve yapay zeka takviyeli karakterlerin çeşitleri de sonludur. Super Mario Bros.'un oyun haline gelmesini sağlayan asıl şey de bu.

Pekala bu imgeler nasıl sıkıştırılıyor?

Geliştiriciler, imajları sıkıştırmak için çeşitli algoritmalardan yararlanıyorlar. Fakat bu algoritmalar, oyunlar için geliştirilmiş olan bir biçimde değil, fotoğraflar için geliştirilmiş olarak bulunuyor. Artık bu durumun biraz daha derinine inecek olursak; elimizde 1 JPG evrakının olduğunu varsayalım. Algoritmalar, manzarayı birinci olarak 8 x 8 boyutlarındaki bloklara böler. Bölünen bloklardaki RGB renkler, YCBCr formatına dönüştürülür. İmaj bu hale geldikten sonra da ayrık kosinüs dönüşümü uygulanır ve bu sayede manzara sıkıştırılmış olur.

Ayrıyeten bu süreçler, PNG formatındaki imgelerde de yapılabilir. Hatta PNG formatındaki manzaraların sıkıştırılma süreçleri, ortaya daha kayıpsız sonuçlar verir. Sıkıştırıldıktan sonraki bir manzara, çok daha kaliteli olur hatta PNG evraklarına uygulanan sıkıştırma süreci, JPEG çeşidindeki evraklar kadar büyük oranlarda yapılabilir. Bununla ilgili bir örnek vermek gerekirse;

Örneğin bu imajın JPG çeşidinde sıkıştırılma yapıldıktan sonraki boyutu 106 kilobayttır. Lakin birebir fotoğraf, PNG çeşidinde sıkıştırıldığı vakit ise yalnızca 5.9 kilobayt yer kaplıyor ve elbette, PNG cinsindeki sıkıştırma süreci, JPG'ye oranla bir epey güzel sonuç veriyor. 

İşte Muhteşem Mario Bros.'un bu kadar küçük boyutlu olmasına karşın uzun soluklu bir oyun olmasının altında yatan sebep, tam olarak buydu. Geliştiriciler, sahneler oluşturmak için farklı imgeler oluşturmak yerine, tek bir görsel oluşturdular ve bu görseli algoritmalar yardımıyla sıkıştırdılar. Akabinde da oyunun kendi algoritması, daima olarak tekrar eden manzaraları oyunseverlere sundular. Bu sayede de Muhteşem Mario Bros. yalnızca 31 kilobayt boyutunda olabildi.

REKLAM ALANI
ZİYARETÇİ YORUMLARI

Henüz yorum yapılmamış. İlk yorumu aşağıdaki form aracılığıyla siz yapabilirsiniz.

BİR YORUM YAZ