AMİGA'DA RESİM NASIL OLUŞTURULUR?

Amiga'nın kuşkusuz en önemli özelliklerinden biri üstün grafik yeteneğidir. Daha önce Commodore 64 bilgisayarı olanlar normal bir bilgisayarın grafik kapasitesini görmüşlerdir. Fakat Amiga'yı ilk gördüklerinde, eminim, çoğu C-64 kullanıcısı bilgisayarını satıp bu muhteşem ve üstün yetenekli bilgisayarı almak istemişlerdir.

Bu geleceğin bilgisayarının grafik özelliklerinden bir diğeri de, bilgisayara bağlayabileceğiniz ekstra bir parça (Video digitizer ya da Frame Grabber) yardımıyla bir kamera, video ya da başka herhangi bir resim kaynağından gelen fotoğrafı bilgisayara fotoğraf netliğinde aktarabilmesi ve bunu kullanıcının kendi zevkine göre değiştirip kullanabilmesidir.

En başta ekranda renklerin nasıl oluştuğunu ve bazı terimleri açıklamakta fayda var:

Ekranda her gözüken bir noktaya PIXEL adı verilir ve bu, seçilen renk sayısına bağlı olarak, değişik sayıda renge sahip olabilir. Normalde, Amiga'da ekranda gözüken her şey işletim sistemi için bir grafik sayılır. Aranızda C-64'ten Amiga'ya geçenler varsa, C-64'te yazı ekranları ile grafik ekranlarının ayrı olduklarını bilirler. Amiga'da normal ekrandaki yazılar bile bir resmin parçası sayılırlar.

Bilgisayar ekranında herhangi bir şekilde 32 renkten oluşan bir resim yarattığımızı varsayalım. Bu resimdeki yanyana yer alan her 8 pixel, hafızada bir byte olarak gözükür. Bu durumda her pixel bir bit'i temsil etmektedir. Fakat bir bit, 0 ile 1 olmak üzere iki değer alabileceğinden, her bit ile iki renk oluşturulabilir.

Amiga'yı yaratanlar bunu da düşünerek her pixel'e 5 bit ayırmışlardır. Bu 5 bit'in değişik 32 kombinasyonu sayesinde, ekranda 32 renk gösterilebilmesi mümkün kılınmıştır. Fakat bu 5 biti yanyana yerleştirirsek, epey karmaşaya sebep olabiliriz. Bu yüzden bir süre sonra, her bir bit'in ayrı olarak kayıt edilmesi fikri benimsenmiştir. Bu fikre göre, bir ekranı oluşturan bitlerin, sadece ilkleri hafızada ekranın boyutları kadar büyüklükteki çift boyutlu bir matriste saklanacak; diğer bitler için de sırasıyla aynı işlem uygulanacaktı. Bu sayede hafızada

5 matris oluşturulmuş olacak ve bu matrisler hafızada ardarda sırayla gelecekti. Artık özellikle grafik meraklısı olan her Amiga kullanıcısı, bu matrislerden her birine BITPLANE dendiğini bilmekte ve bu ismi kullanmaktadır. Biz de bundan sonra bu terimi kullanacağız. Şimdiye kadar anlatmaya çalıştıklarımın kısaca bir özetini Şekil-1'de görebilirsiniz.

Her neyse konumuza dönelim. Şimdi sırada renklerin oluşturuluşu var.

Amiga'da renkleri oluşturan 32 register (hemen korkmayın, buna değişken de denilir) vardır. Bunların herbiri 16^3, yani 4096 değer alabilir. Demin belirttiğim 16 sayısının Amiga'da özel bir anlamı vardır. Her bir renk registerine sulu boyayla çalışır gibi değişik oranlarda kırmızı (Red), yeşil (Green) ya da mavi (Blue) renkleri katabilirsiniz. Bu oranlar 0'la 15 arasında kalan 16 değerdir.

Peki, iyi güzel de bu renklerin ekranda nasıl oluşturulduklarını ve hafızada nasıl bulunduklarını hâlâ öğrenemedik. Yukarıda da belirttiğim gibi her pixel için hafızada 5 bit harcanıyor. Fakat bu 5 bitin herbiri ayrı bitplane'lerde bulunduğu için, bunların belli bir şekilde kombinasyonunun, bize renk registerinin numarasını vermesi gerekir. Bu registerdeki değer de kırmızı, yeşil ve mavi renklerinin (RGB) karıştırılma oranlarını belirten, hemen hemen iki byte uzunluğunda bir sayıdır. Her bitplane'de aynı pixeli temsil eden noktaları alıp yanyana getirdiğimiz zaman oluşacak ikili sistemdeki (binary) sayı da, işte deminden beri anlatmaya çalıştığım renk registeri numarasını belirler.

Deluxe Paint isimli grafik çizim programını kullananlar, resim çizmeye başlamadan önce bilgisayarın kendilerine sunduğu 5 çizim modundan birini seçmek gerektiğini bilirler. Bu temel çizim modları, LO-RES, MED-RES, HI-RES, INTERLACE ve HAM modlarıdır.

* LO-RES (LOw RESolution - düşük çözünürlük)

Bu resim modu, Amiga'nın en az yer kaplayan ve artık temel çizim modu olan moddur. Bu modda ekran çözünürlüğü 320 x 200'dür ve bu modda normal şartlar altında en fazla 32 renk kullanılabilmektedir.

LO-RES modunda hazırlanmış ve tek bitplane (iki renk) bir ekranın hafızada kapladığı yer, yaklaşık 8 KByte'dır. Bunun sebebi ekranda gözüken yanyana her 8 pixel'in (noktanın) bir byte oluşturmasıdır. Bu durumda, ekrandaki her satır hafızada 40 byte kaplar. Artan her bitplane için bir 8 KByte daha eklenmesinin gerektiği buradan açıkça anlaşılabilir.

* MED-RES (MEDium RESolution - orta çözünürlük)

Şimdi inceleyeceğimiz ekran çözünürlüğü, ekranda 640x200 pixel yaratan MED-RES'tir. Bu modda, yatay bir satırdaki nokta sayısı iki katına çıkarılmıştır. Bu sayede çizdiğiniz bir resimde daha fazla detaya inebilirsiniz ve bu da çizdiğiniz resimin güzelliğini artırır. Bu modun tek kötü yanı, hafıza kartı eklenmemiş bir A-500'de kullanabileceğiniz renk sayısının 8 ile sınırlı olması.

Yatay nokta sayısının iki katına çıkartılmasıyla, normal olarak tek bitplane'lik bir resim hafızanın 16 KByte'ını yer. Tabii bu eklenen her bitplane için geçerlidir.

* INTERLACE Bu mod, çoğu Amiga kullanıcısının sevmediği, hatta nefret ettiği bir grafik modudur. Nedeni ise, ekran tarama frekansını iki katına çıkararak gözü bir hayli yormasıdır. Bu ekran titremesi Multi-SYNC adı verilen monitörlerde yok edilmiştir. Bu tip monitörlerin özelliği, kendini bilgisayardan gelen ekran tarama frekansına göre otomatik olarak ayarlayabilmesidir. Ayrıca normal bir monitörde de bu titremeyi azaltacak bazı yöntemler mevcuttur. Bunlardan biri monitörler için satılan ekran filtreleridir. Bunun dışında, birbirine yakın ve uyumlu renkler seçildiği zaman da ekrandaki titreme biraz da olsa azalabilir. Bu grafik modunda ekran normalin iki katı bir hızla tarandığı için, ekrandaki dikey çözünürlük de iki katına çıkar. Hafızada kapladığı yer, MED-RES bir ekranın hafızada kapladığı yer kadardır.

* HI-RES (HIgh RESolution - yüksek çözünürlük)

Bu mod, MED-RES ile INTERLACE modlarının birleştirilmesi ile elde edilmiştir ve ekran çözünürlüğü 640x400 pixeldir. Hafızada her bitplane için 32 KByte ayrılması gerektiğinden bu çizim modunda bitplane sayısı 3 ile sınırlanmış durumdadır. * HAM (Hold-And-Modify/sakla ve değiştir)

Evet, geldik Amiga'nın en ilgi çekici grafik modlarından biri olan HAM moduna. Bu grafik modunda Amiga'nız tam tamına 4096 renk birden oluşturabiliyor. Evet, yanlış okumadınız; 4096 renk ve bunun için 6 bitplane harcıyor. Şimdi aranızda bu yazıyı dikkatle okuyanlar bunun 6 bitplane ile mümkün olamayacağını belirterek bana itiraz edeceklerdir. Tamam, normal şartlar altında bu mümkün olamaz; çünkü biraz matematik bilen herkes 2 üzeri 6'nın 4096 değil de, 64 olduğunu bilir. Az önce normal şartlar altında dedim; çünkü burada bazı hileler kullanılarak 4096 renk elde edilebilmiştir. Burada ilk dört bitplane ile son iki bitplane ayrı düşünülmüştür. Bu iki ayrı bitplane grubundan ikincisinin değerine göre birincisi etkilenir. Bunun için dört olasılık vardır:

1 ...Son iki bitplane'deki bir pixele denk gelen bitlerin içerikleri 00 ise, normal renk paletindeki ilk 16 renk registeri hiçbir değişime uğramadan kullanılır.

2 ...Bitlerin içerikleri 01 ise, bu pixelin hemen solundaki pixelin renk değeri, bu pixele de kopyalanır ve renk kodunu oluşturan dört bitplane'deki bitler yardımıyla bir mavi boya simüle edilir. Bu durumda pixelin rengi maviye yakın bir renk olacaktır ve maviye yakınlık derecesini de pixelin hemen solundaki pixel belirleyecektir.

3 ...5 ve 6. Bitplane'lerdeki bitlerin kombinasyonu 10 ise, 2. olasılık gibi bir renk belirleme işlemi gerçekleştirilir. Fakat burada 1, 2, 3 ve 4 bitplane bitleri sayesinde mavi yerine yeşil tonajında bir renk elde etmek mümkün kılınmıştır.

4 ...Bu sefer yine 2. olasılıktaki işlem uygulanır. Tek fark renk tonajımızın bu sefer yeşil olacağıdır.

Eh, umarım renkler ve bunların oluşturulmasını anlamışsınızdır. Fakat yine de şekilleri biraz daha incelemenizi tavsiye ederim.

* IFF Resim standardı Amiga ilk defa tanıtılmaya başlandığı sıralarda Electronic Arts firması da uzun süredir üzerinde çalıştığı bir proje olan IFF standardını Amiga kullanıcılarının hizmetine sunmuştur. Bu standart sayesinde, kullanıcıya hitap eden çoğu yardımcı programlar arası bir bilgi alışverişi sağlanmaya çalışılmıştır. Buna örnek olarak herhangi bir resim programı vasıtasıyla hazırlanmış bir resim dosyasını diğer tüm çizim programlarının da kullanabilmesini gösterebiliriz. Bu standart, ses, animasyon ve yazı dosyalarında da yapılmıştır; fakat yine de kendini en kolay kabul ettireni resim ile ilgili olanıdır.

Deluxe Paint gibi çok kullanılan bir resim programı aracılığıyla yaratılan bir resim dosyasına IFF-ILBM dosyası da denmektedir. Burada ILBM harflerinin anlamı InterLeaved BitMap'tır ve bu dosyamızın IFF standardına uygun bir resim dosyası olduğunu belirtmektedir.

Bir resim dosyası çeşitli bölümlerden oluşur ve bu bölümlerin herbirinde resimle ilgili önemli bilgiler bulunur. Bunlara örnek olarak resimin renklerini ve ekran boyutlarının yanısıra ekran çözünürlüğü, toplam renk adedini verebiliriz.

Dergimizin ileriki sayılarında bu resim dosyaları ve data blokları hakkında daha ayrıntılı bilgiler de vereceğiz.