Mortalis Arisen 100% / 64ever

Commodore 64'te uzun bir aradan sonra 2006'nın Mart ayında disketin her iki yüzünü de kaplayacak uzunlukta bir demo çıktı sonunda. Daha önce demonun 90% versiyonu Primary Star 2005 partisinde birinci olmuş, ancak yayınlanmamıştı. Sebep olarak da 1571 disk sürücüleri haricinde ciddi yükleme sorunları yaşandığı gösterilmişti.

Demo 64ever grubuna ait ve benim görüşüme göre demonun programcısı Cybernator'ın "bakalım bu efektleri ben de yapabilecek miyim?" merakını gidermesi için yapılmış. Kendisinin de zaten benzer açıklamaları oldu çeşitli forumlarda. Grafikler _V_ ve Shake'e, müzikler ise yine _V_ ve Smalltown Boy'a ait.

Demoyu ilk izlediğimde aklıma Krill/Plush'ın Y2K Bug demosu geldi. Nitekim sonradan hem forumlarda hem de scener arkadaşlarımla sohbetlerimde, birçok kişinin de aklına aynı demoyu getirdiğini gördüm. Ancak bu demonun tek eksiği hem scene'e hiçbir yenilik getirmemesi ve tüm bölümlerin daha önceden yapılan efektler içermesi, hem de hepsinin öncekilerden daha vasat ya da yavaş olarak sunulması. Mortalis Arisen bir hikaye üzerine oturtulmuş belirli bir konsepte sahip bir demo. Ancak ben demoyu yalnızca programlanışı yönünden inceleyeceğim.

Açılış Bölümü:

İlk izlenim açısından önemli bir bölüm olan açılış bölümü güzel, ancak hiç de orijinal olmayan bir şekilde başlıyor. Basic ekranındaki karakterler pixel pixel yok olduktan sonra, ekran borderlardan başlayarak 8'er pixellik yani 1'er karakterlik yükseklikteki yatay çubuklar halinde ekranın altından ve üstünden kayarak dışarıya çıkıyor ve sonunda ekran simsiyah kalıyor. Bu efekt, ekrandaki karakterler de yok olmadan dikey çubuklar şeklinde daha önce Deus Ex Machina (Crest+Oxyron) demosunda yapılmıştı. Bu bölümde demoyu çalıştırmadan önce ekran adresi, bank, grafik modu ve benzeri değerleri bozup demoyu çalıştırmayı denedim, tüm değerler olması gereken haline düzgün bir şekilde dönüyor. Bu konuda bir açık bırakmamış

Cybernator.

Bu açılış bölümünün hemen ardından fade in efekti ile tam ekran koala modunda çizilmiş bir grafik ekrana geliyor ve üzerine çeşitli mesajlar yazılmaya başlıyor.

Logo Zoomer & Floor Mapper:

Açılış bölümünün ardından ekranın üst yarısında 3 renk bir logo zoom in ile ekrana geliyor ve sabitlendikten sonra renkleniyor. Ekranın alt yarısında ise 3 boyutlu yana doğru kayan texture kaplanmış bir yüzey hissi uyandıran güzel bir efekt var. Cybernator büyük olasılıkla Krill/ Plush'ın Y2K Bug demosuyla aynı zamanda yayınladığı +H4K isimli 4K introsundan esinlenerek yapmış. Yöntem olarak da kendi ifadesiyle "9 sihirli sabit" tekniğini kullanmış. Efekt bana daha çok bir cycle efektini andırdı. Tahminimce Cybernator'ın bahsettiği yöntem, bu efekt için gerekli mapi oluştururken kullanılan tekniği ifade ediyor. Ancak kendisi de bu yöntemi kullandığı halde tam olarak mantığını çözemediğini söylüyor.

Flame:

Sıradaki bölümde 64ever logosunun altında kalan alanda, dithering tekniği kullanılarak karakter ekranında uygulanmış bir flame efekti karşımıza çıkıyor. Güzel gözükmesinin yanı sıra özellikle 90'lı yıllarda onlarca demoda kullanılmış ve çok eskitilmiş bir efekt olduğu için çok etkileyici değil. Ancak efektin artılarından biri; 8x8'lik karakter alanları dikey çözünürlükte ikiye bölünerek yani 8x4'lük parçalar halinde kullanılmış. Bu da efektin diğer 8x8'lik örneklerine göre bir parça daha kaliteli gözükmesini sağlamış. Eksisi ise yeterince hızlı olmaması.

Credits:

Yalnızca fade in ile ekrana gelen ve fade out ederken aynı zamanda dağılarak kaybolan spritelardan ibaret. Burada dikkatimi çeken noktalardan biri Commodore 64'ün bazı sınırlamalarından dolayı 8'den fazla sprite yan yana gelemediği için, fazla harf olduğu durumda yalnızca 8 harfin fade out sırasında hareket etmesi. Örnek olarak ilk ekrana gelen "CYBERNATOR" yazısında ortadaki "RN" harf ikilisi karakter seti ve diğer harfler dağılırlarken sabit duruyorlar. Cybernator onları bob olarak kullanabilirdi ve bu sayede bu parta en azından ufak da olsa bir espri katmış olurdu. Örneğin Chorus grubu 8'den fazla sprite'ın yan yana gelebildiğine inandırmak için binbir türlü maymunluk yapar ve bu şahsen benim çok hoşuma gider. Birçok kişi fark etmeyecek olsa da sabit duran harfler bana battı.

Zıplayan Kareler:

Çok anlamsız bir geçiş bölümü olmuş. Ekranın üstünden girip aşağıya doğru küçülüp büyüyerek ve renk değiştirerek ilerleyen minik karelerden oluşuyor bu bölüm. Aynı anda ikiden fazla kare de gözükmüyor ekranda. Ne teknik ne de görsel hiçbir esprisi yok. Bu bölümü kurtaran nokta ise bitiminde büyüyerek yan borderların tamamıyla alt ve üst borderların bir bölümüne kadar taşan içi dolu dikdörtgen. Aslında bu da yapılması çok zor bir efekt değil ancak en azından border içeren, belirli bir teknik zorluğu olan bir efekt. Aynı efekti yine Y2K

Bug ve diğer birkaç demoda görmüştük.

Twister:

Bu demoda daha önce yapılmamış hiçbir efekt olmadığı için her efektin başında "yine daha önceden x demosunda gördüğümüz y efekti" demeye son veriyor ve devam ediyorum. Twister efekti oldukça başarılı uygulanmış ve benim hoşuma gitti. Ancak Cybernator bunun aslında DNA sarmalı olarak tasarlandığını söylüyor ki bu konuda başarılı olamadığını kendisi de kabul etmiş. Twister'ın mantığını çözmekte ilk başta zorlansa da, HCL'in (Booze Design) kodlarını inceledikten sonra mantığını anladığını söylüyor. Bu durumda kolay anlaşılır bir kod yazdığı için HCL'i tebrik ediyorum. :)

VSP:

Bu bölümde fade in efektiyle ekrana gelen koala modundaki grafik, yaklaşık bir ekran kadar sağa scroll ediyor. Commodore 64'de normalde yeterince hızlı ve düzgün bir şekilde büyük alanlarda koala grafikleri kaydırmak oldukça zordur. Burada kullanılan teknik VSP yani Variable Scroll Positioning (Değişken Scroll Konumlandırma). Bu teknik özellikle kaliteli bazı platform oyunlarında (Creatures, Fred's Back, Mayhem In Monsterland v.b.) ve birçok demoda defalarca kullanılmış olmasına rağmen, içerdiği bazı teknik zorluklar yüzünden benim her defasında kullananı takdir ettiğim bir tekniktir. VSP bazı donanım hatalarını da beraberinde getirdiği için, düzgün programlanmadığı taktirde zaman zaman kilitlenmelere neden olabilir. Hatta hatta Commodore 64'lerin modelleri ve üretim yıllarına göre farklı sorunlar yaşanabilir. Şu anda benim test ettiğim iki Commodore 64'de ve PC'deki emülatörlerde düzgün çalıştı bu bölüm.

Grafiğin kayması sona erdikten sonra, yatay ve dikey iki çizgi grafiğin üzerinde hareket ederek, kesişim noktalarıyla grafiğin üzerinde hedef ararcasına dolaşıyor ve sonunda bir noktaya kilitleniyor. Burada kullanılan sinüsler gayet güzel olmuş.

Flood & Glenz Vektör & 3 Boyutlu Spritelar:

Dikey flood efektiyle ekrana gelen bir grafiğin ardından, demonun şu ana kadar gördüğümüz teknik açıdan en zor partı karşımıza çıkıyor; "glenz vektör". Ne yazık ki boyut, hız ve görsellik açısından hiç de tatmin edici değil bu bölüm. Ancak yine de Commodore 64'de filled (ve glenz gibi türevleri) vektör yapmanın zorlukları düşünüldüğü zaman Cybernator'ı tebrik etmeden geçemeyeceğim. Ayrıca objenin basit de olsa bir morph yapması, kısacası vertex koordinatlarının değişmesi de oldukça hoş. Yine de bu part kesinlikle beni tatmin etmedi.

Glenz vektörden sonra 3 boyutlu 6 spritedan oluşan bir obje geliyor ekrana. Bu efektin esprisi z koordinatlarına göre vertexlerin sıralanması ve 50 FPS hızında çalışması. Ancak 8 sprite ya da daha fazla sayıda bob kullanmış olsaydı yine benden daha yüksek puan alacaktı Cybernator.

X-Ray Lens:

Bu efekt bu demoda kendi içinde "en orijinal kullanıma sahip" diyebileceğim efekt olmuş. Çünkü genellikle lens efekti o an ekranda görünen grafiği olduğu gibi kullanır. Bu bölümde ise kadın grafiğinin haricinde hafızada kadının iskeleti de bulunuyor ve lens üzerinden geçtiği yerlerde kadının iskeletini gösteriyor. Ekran arada bir flash yaparken iskelet grafiğinin tamamını görebiliyoruz. Bu yüzden efektin adını X-Ray Lens koydum ben. Sunum olarak güzel bir bölüm olmuş.

Chessboard Zoom In:

Kadın grafiğinin fade out ile yok olmasından sonra, ilk önce bir amiga topu ekrana gelip ekranda sekmeye başlıyor. Tam ne kadar kötü çizilmiş bir top olduğuna dikkatimiz çekildiği sırada tüm borderları kaplayan bir chessboard, çok hızlı bir zoom in efektiyle bizi bir sonraki bölüme geçiyor. Güzel bir geçiş efekti olmuş.

Bump:

Sıradaki efekt bir bump efekti. Bump texture'ı benim hoşuma gitti. Efekt yine 8x8 bir efekt ancak dithering başarılı bir şekilde uygulanmış ve görünüşü güzel. Ancak efekt ne yazık ki bu demodaki yine birçok efekt gibi, daha önceki örneklerinin çoğundan daha yavaş programlanmış. Cybernator'ın optimizasyon konusunda kendisini biraz geliştirmesi gerekiyor.

Chessboard Zoom Out:

Az önce ekranı kaplayan chessboard bu sefer zoom out yaparak küçülüyor. Belli bir boyuta geldiği zaman sabitleniyor ve kareleri döne döne aşağıya doğru düşerek yok oluyor.

Plazma:

Sıradan bir plazma. Önceki efektlerde de gördüğümüz gibi yine dithering kullanılmış. 3 renk olması yıllardır görmeye alıştığımız rengarenk plazmalardan sonra biraz hayal kırıklığı elbette ki. Efektin artılarına gelince: İçerisinde şeffaf bir C= sembolü beliriyor ve 4x4 çözünürlüğünde yapılmış. Ancak bunlar yeterli değil ve bu bölüm benden geçer not alamadı. Bu arada Cybernator bu efekt için tüm zeropage'i kullandığını söylemiş. Vardır bir bildiği deyip, gülüp geçiyorum.

X-Stretching:

Bu efekt 90'lı yıllarda görmeye çok da alışık olmadığımız, nispeten yeni sayılabilecek bir efekt ve bu demodaki versiyon da oldukça başarılı. Alan olarak gayet geniş bir alanda yapılmış. Cybernator efektin mantığını uzun süre düşündüğünü ve sonunda birçok demonun kodlarını inceleyerek anladığını söylüyor. Tahminimce en çok HCL'in Royal Arte demosundaki rutini örnek almış. Sonuç başarılı.

X Ekseninde Dönen Texture:

Disketin ilk yüzü burada sona eriyor. Disketin arka yüzünü çevirme esprisi olarak yine biraz bayatlamış olan dönen disket kullanılmış. Plush'ın +H2K demosunda iki eksende dönen filled vektör bir disket kullanılmıştı. Cybernator ise x ekseniyle yetinmiş ancak bunun sağladığı avantajlarla disketin yüzeylerinde texture kullanmış. Ne yazık ki efekti dar ve hatalı bir perspektifle uyguladığı için dönüş hiç de gerçekçi durmuyor. Bu efekt için de Graham'ın kodlarını incelediğini söylüyor.

Gizli Bölüm:

Demolarda zaman zaman gizli bölümler yapılır ve her biri farklı şekillerde izlenebilir. Ancak Cybernator'ın taklit yeteneği yine kendini göstermiş ve gizli bölümü "disketin aynı yüzünü ikinci kez taktığında" çıkarmaya karar vermiş. Gizli bölüm ise yine Graham'ın ilk kez Deus Ex-Machina'da düzgün bir şekilde yapmış olduğu interference yani girişim efekti. Bu efekt Graham'dan önce de defalarca yapılmıştı ancak Graham ilk kez girişim noktaları için üçüncü bir renk kullanan kişiydi.

Bu gizli bölümün getirdiği tek yenilik ise demonun devam etmesine izin vermesi. Genellikle demolar gizli bölümlere ulaşıldığı zaman devam etmezler ve devamını izlemek için demoyu baştan yükletmek gerekir. Bu demoda ise yeniden disketin arka yüzünü çevirmenizi istiyor ve kaldığı yerden devam edebiliyor.

Landscape:

Bu bölümü doğrudan Commodore tarihinin gelmiş geçmiş en yavaş landscape'i ilan ediyor ve bu güne kadar landscape kodlamış programcılara moral verdiği için Cybernator'a teşekkür edip geçiyorum. (8x8, dithering)

Starfield:

Bir geçiş efekti olarak programlanmış. İleriye doğru hareket eden, rotasyon yapmayan, tahminimce yalnızca bir projeksiyon rutinine sahip bir efekt. Ekranda en fazla aynı anda 20 civarında nokta gözüktüğü halde yeterince smooth değil.

3 Boyutlu El Objesi:

Bu bölümde ise noktalardan oluşan 3 boyutlu bir el 3 eksende dönüyor. Efekt alanı küçük ve yine yavaşlık göze batıyor. Ancak seçilen obje ve elde edilen sonuç güzel. Keşke biraz daha hızlı olsaydı da bu bölümden övgüyle söz edebilseydim. Umarım Cybernator ilerde çıkaracağı demolarda kendini optimizasyon konusunda geliştirir.

Vektör Dünya:

Arada ekrana gelen tam ekran bir grafiğin ardından iç ekranın tamamını kaplayan büyüklükte hoş bir vektör bölümüne ulaşıyoruz. Bu bölümde 3ds Max ile hazırlanmış bir dünyada kısa bir yolculuk yapıyoruz. Burada hazır verileri okuyan ve yatay çizgiler çeken rutinlerden daha fazlası yok aslında. Hızı arttırmak için Resource'un demolarından alışık olduğumuz, her framede birer raster satırı atlama tekniği kullanılmış. Yani ilk framede 1., 3., 5., 7.....2n-1. frameler çizilirken ikinci framede 2., 4., 6., 8.....2n. frameler çiziliyor. Bu sayede hafif blur ile video interlacing karışımı bir görüntü ortaya çıkıyor. Bu sayede ard arda gelen framelerin birbirlerinin içine geçmesi şeklinde bir ödün verilerek 2 kat hız artışı sağlanmış oluyor.

Dökülen Kumlar:

Bu bölüm, bu demoda alışık olmadığımız şekilde "orijinal" denebilecek bir bölüm. Fade in ile ekrana gelen güzel bir kum saati grafiğinin içinden kumu sembolize eden noktalar güzel pathler üzerinden kayarak ilerliyor. Tabii ki kumların nereden geldiği ve nereye gittiği merak konusu. Genel olarak başarılı bir efekt.

Ray Tracing:

Bildiğimiz standart doom efektinin geniş bir alanda, kötü bir çözünürlük ve hızla uygulanmış hali. Demonun genelindekine uygun bir şekilde dithering ve 3 renk kullanılmış. En azından biraz daha smooth hareket etseydi ve tarama bu kadar belli olmasaydı keşke. Başlangıçta poligonlarla yapıldığını sandığı ve Graham'ın One-der demosunda nasıl bu kadar hızlı yaptığını anlamadığı bu efekti, Optimus'un "bu efektte poligon kullanılmıyor, başka bir hile var" demesi üzerine Cybernator'ın jetonu düşmüş ve efekti kodlamış. Yine de tebrik ediyorum çünkü ray tracing uygulanması çok basit bir efekt değildir.

Bitiş Bölümü:

TV ekranının kapanma efektine benzer bir efekt ve birkaç slogandan sonra güzel dairesel bir renk geçişiyle "coming soon" niteliğinde bir grafik ekrana geliyor. Önceki sloganlardan ve bu grafikteki "Mortalis Arisen II" yazısından demonun ikincisinin yapılma ihtimali olduğunu anlıyoruz.

Geldiği gibi aynı dairesel efektle yok olan grafiğin ardından yukarıya doğru kayan yazılar başlıyor. Bu bölümdeki en güzel özellik yukarıya doğru kayan yazıların yanında, aşağıya doğru kayan grafikler olması. Burada yazılar sprite, grafikler ise 16 renk bitmap yani koala modu grafik. Kayan grafiklerin demonun bölümlerinin screenshotları olması da güzel bir ayrıntı. Tüm yazılar geçtikten sonra, screenshotların devamı olarak son bir tam ekran grafik ekrana geliyor ve bu uzun demonun sonuna geliyoruz.

Değerlendirme:

Bu demo, tek tek bölümleri açıklarken de anlamış olacağınızı sandığım üzere, yalnızca daha önceden yapılmış efektlerin çoğunlukla başarısız tekrarlarından ibaret. Eğer aynı demo 90'ların başlarında ya da ikinci yarısında yapılsaydı elbette ki çok daha fazla ses getirirdi. Ancak 2000 yılından sonra daha önce yapılmış efektleri daha başarısız şekillerde yapmak, demoya sarfedilen emeğin büyük bir çoğunluğunun çöpe gitmesine neden oluyor. Bu demo, Cybernator'ın da itiraf ettiği gibi "bu efektleri herkes yaptı, ben de yapmak istiyorum" mantığıyla hazırladığı bir demo. Aslında Cybernator'ın düşüncesine birçok açıdan katılıyorum ama bu değerlendirmemi etkilemiyor.

Programlama: %70

Benimle irtibata geçmek isteyenler için e-mail adresim;

skate <at> glance <dot> ws (mailto:skate@glance.ws)

Emir Akaydın

Skate / Glance