Bu sayfadaki yazılar
Sayfanın metni
Sayfa 50
AmigaDOS ile ilgili başka bir ilginç özellik bellek yönetimidir. Amiga'nın işletim sisteminin multitasking olarak çalıştığından daha önce birçok kez bahsetmiştik. Bir program belleğe yüklenirken, yükleneceği adres bellekteki diğer programlara göre ayarlanır. AmigaDOS önce programın sığabileceği büyüklükte boş bir bellek parçası arar. Bellek parçası dedik, çünkü Amiga'nın belleği tek bir parça (segment) olarak düzenlenmemiştir. Örneğin bilgisayar 200K boş bellek olduğunu gösterirken, en büyük bellek parçası 50-60K'yı geçmeyebilir. Bu durumda 100K'lık bir segment gerektiren bir program 200K'lık boşluğa rağmen yüklenemez. DOS komutlarından avail komutunu kullanarak en büyük segment'i largest başlığı altında görebilirsiniz. Programın segment yapısı compile işlemi sırasında belirlenir.
Şimdi de bir arkadaşımın içinde shell bulunan özel bir çalışma disketi hazırlarken karşılaştığı bir zorluktan söz edeceğim. Arkadaşım Shell-Seg dosyasını ve Shell ikonunu kopyalayıp Workbench'in startup-sequence dosyasında yer alan komutları aynen kullanmıştı. Buna rağmen Shell'i bir türlü başlatamıyordu. Bu sorunu bana anlattığında problemin çok basit bir şekilde çözülebileceğini söyledim. Burada unuttuğu nokta Shell-Segment dosyasının Shell'i çalıştırmak için yeterli olmadığı ve aynı diskete CLI programının da kopyalanması gerektiğiydi. Bundan sonra Shell'in project ikonunun info'sunu alıp default tool'u SYS:SYSTEM/CLI yaptıktan sonra her şey yoluna girmişti.
Hazır laf CLI programından açılmışken, bu programın C diliyle yazılmış basit bir program olduğunu biliyor muydunuz? Programı çalıştırdığınızda ilk yaptığı iş nereden yüklendiğini (workbench/CLI) kontrol etmektir. Daha sonra bir CLI penceresinin açık olup olmadığına bakılır. Eğer açık değilse 10K bellek ayrılır, %N mesajı hazırlanır ve directory SYS: olarak seçilir. Bu arada CON:0/50/640/80/newcli adında bir pencere açılır.
Aslında CLI'dan verdiğiniz komutları çalıştırırken asıl işi Run komutu yapar. Önce ROM'dan execute fonksiyonu çağrılır. Bu fonksiyon, bir CLI komutu olan Run'ı yükler ve çalıştırır. CON penceresine yapılan giriş CIS (giriş sistemi) ve COS (çıkış sistemi) tarafından analiz edilir ve Run komutuyla çalıştırılarak sonuç aynı CLI penceresine yazılır. Görüldüğü gibi burada en önemli işlem Run komutu sayesinde yapılmaktadır. İşin ilginç yanı CLI programının Workbench disketinin c directory'sinde Run komutu olmadan çalışamaması.
Son olarak bu ay sizlere kısa bir DOS komutunun listesini veriyoruz. Bu program mouse hareketini preferences ile mümkün olandan daha hızlı hale getiriyor. Böylece artık mouse seçimlerinizi daha kolay yapabilirsiniz. Programı AmigaBASIC'ten yazın ve kaydedin. RUN komutuyla programı çalıştırdığınızda DATA satırları kontrollü bir şekilde okunarak RAM diskte bir komut dosyası haline gelecektir. Bundan sonra RAM:fastmouse diyerek mouse'unuzun hareketini hızlandırabilirsiniz. Eğer bu hızı da beğenmezseniz aynı komutu tekrar yazın ve pointer'ın hızının daha da arttığını görün. Komutu diskete kaydetmek için
1> copy ram:fastmouse to df0: komutunu kullanabilirsiniz.
DATA 0,0,3,243,0,0,0,0,0,0,0,1,0,0,0,0 DATA 0,0,0,0,0,0,0,66,0,0,3,233,0,0,0,66 DATA 78,85,255,170,44,120,0,4,43,110,1 DATA 20,255,170,69,237 DATA 255,174,97,0,0,122,67,237,255,208 DATA 32,73,112,48,97,0 DATA 0,210,35,74,0,14,65,250,0,210,112 DATA 0,114,0,78,174 DATA 254,68,112,58,114,1,78,174,255 DATA 58,36,64,32,74,112,22 DATA 97,0,0,176,37,74,0,14,66,106 DATA 0,22,65,234,0,24 DATA 37,72,0,18,114^4,67,250,0 DATA 120,48,217,85,65,102,250
DATA 21,124,0,51,0,9,67,237,255,208 DATA 51,124,0,9,0,28 DATA 35,74,0,40,78,174,254,56,67,237 DATA 255,208,78,174,254,62 DATA 69,237,255,174,97,0,0,66,78 DATA 93,112,0,78,117,32,74 DATA 112,34,97,0,0,94,112,255,78 DATA 174,254,182,66,170,0,10 DATA 66,42,0,9,21,124,0,4,0,8 DATA 21,124,0,0,0,14 DATA 21,64,0,15,37,109,255,170 DATA 0,16,36,138,88,146,66,170 DATA 0,4^3,74,0,8,78,117,16,42 DATA 0,15,78,238,254,176 DATA 32,8,12,40,0,2,0,4,102,16 DATA 12,104,0,255,0,6 DATA 102,8,225,232,0,10,225,232 DATA 0,12,32,80^4,8,102,226 DATA 78,117,66,24,83,64,102,250 DATA 78,117,105,110,112,117,116,46 DATA 100,101,118,105,99,101,0,0,0,0,3,242
p = 300:b = 0 PRINT "DOSYA YAZILIYOR" OPEN "ram:fastmouse" FOR OUTPUT AS #1 FORj=l TO p READ a: b = b + a PRINT #l,CHR$(a); NEXT j CLOSE 1 IF b<> 23117 THEN PRINT "DATA SATIRLARI HATALI!" PRINT "LÜTFEN TEKRAR KONTROL EDIN.":STOP END IF PRINT "DOSYA TAMAM" END
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 51
Bu ay tanıtacağım utility programı, animasyon programlarında kullanmak üzere obje datası yaratan bir çevirici program. Yaptığı iş ise gayet basit, IFF kaydeden herhangi bir çizim programıyla (örneğin Deluxe Paint) çizilen bir resmi analiz ederek bunu nokta ve çizgilerden oluşan vektör grafiğine çevirmek. Daha sonra da bu data, istenilen program tarafından yüklenerek gerekli değişiklikler yapılabilmekte.
Evet, yukarıdan da anlayabileceğiniz gibi bu program aslında bir konverter, yani çevirici program. İki boyutlu hazırlanan bir resmi üç boyuta çevirerek, bunun değişik animasyon ve ray-tracing programlarında kullanılması sağlanılabilir. İster logo, ister yazı karakteri ya da resim aktarın; sonucu görünce bir hayli sevineceksiniz. Şimdiye kadar Sculpt / Animate 4D, TurboSilver ya da VideoScape 3D programında obje hazırlamanın zorluğunu tadanlar böyle yararlı bir programı kullanmaya başladıklarında zamandan bir hayli tasarruf edecekler.
VideoScape 3D, Sculpt / Animate 4D ve TurboSilver'ı destekleyen bu programın kullanılması hayli basit; gelin bunu birlikte inceleyelim.
İlk ekranda gerekli tüm parametre ayarlamalarını yapabilirsiniz. Bunun için gerekli parametre kutusunun üzerine kliklemeniz yeterli. Üzerinde sayı yazılı parametre kutularındaki değerleri değiştirmek için ise kutuya klikledikten sonra buradaki değeri silip yerine istediğiniz değeri yazmanız gerekir. Hesaplama moduna geçmeden son belirleyeceğiniz şeyler, diskette kayıtlı olan IFF resmin ve oluşturulacak objenin dosya isimleridir. Bundan sonra program resmi yükleyecek, buradaki köşe noktalarını ve doğruları ayrıştıracak, yüzeyleri de yarattıktan sonra bunu kendiliğinden diskete obje dosyası olarak kayıt edecek.
İlk ekranda kullanabileceğiniz tüm gadget'ler iki başlık altında toplanmış. İlk önce "Conversion Settings" başlığı altında toplanmış olan ve parametre ayarlamaya yarayan fonksiyonları görelim. "Output Format" yardımıyla obje formatını belirleyebilirsiniz. Burada izin verilen obje formatları VideoScape 3D'nin kullandığı yazı dosyası, Sculpt / Animate 4D'nin kullandığı <.scene> stili dosya ve TurboSilver'ın kendine has obje dosyalarıdır.
"Color conversion" ile çevirim sırasında yüzeylere renk verilmesini açıp kapayabilirsiniz. Bu mod "on", yani açık durumda iken program yine aynı ekranda belirleyebileceğiniz son üç parametre olan renk değerlerini, yarattığı yüzeyleri boyamak için kullanacak. Bu sadece VideoScape 3D kullanıcılarına hitap eden bir parametre ayarı olduğundan Sculpt / Animate 4D ya da TurboSilver kullanıcılarının bu modu kapamaları (off durumuna getirmeleri) gerekli.
"Extrusion process" çevrim sırasında resmin üçüncü boyuta uzatılmasını belirlemek içindir. Eğer yarattığınız obje ile animasyon yapınca bunun kağıt gibi çok ince gözükmesini istemiyorsanız objeyi bozmadan derinlik vermelisiniz. Bunun için bu modu açık "on" moduna geçirin. "Extrusion value" ile belirleyeceğiniz değer objenin Z ekseninde (derinlik) kaç birim uzatılacağını belirlemek içindir.
"Outline process" yardımıyla objenin kenar çizgilerinin kalınlaştırılmasını sağlayabilirsiniz. Bu sayede obje daha düzgün gözükür.
"Extrusion" modu açık konumdayken objenin yan yüzeylerini de doğru bir şekilde oluşturmak gerekli. Bunun için de yan yüzey oluşturmaya yarayan "Side construction" modunu açık "on" duruma getirmelisiniz.
"Front color", "Back color" ve "Side color" parametreleri çevrim sırasında kullanılacak renk değerlerini belirlemek içindir ve yukarıda da belirttiğim gibi Sculpt / Animate 4D ya da TurboSilver kullanıcıları için gereksizdir.
"Control" başlığı altında da genel kontrolü sağlayan üç gadget bulunmakta. Bunlardan ilki hesaplama işlemine geçmeyi sağlayan "Begin conversion" gadget'idir. "Default settings" yardımıyla tüm parametreleri ilk konumlarına getirebilirsiniz. Bu parametrelerin ilk halleri aşağıda görülmekte:
Output Format: VScape Color conversion: on Extrusion process: off Extrusion value: 0 Outline process: off Side construction : on Front color : 26 Back color: 26 Side color: 26
"Quit" ise her programda olduğu gibi burada da programdan çıkmamızı sağlamakta.
Hesaplama moduna geçmeden program size yüklenecek IFF resim dosyasının ve yaratılacak obje dosyasının isimlerini belirlemenizi isteyecek. Burada karşınıza tipik bir yükleme penceresi çıkar. Burada sırayla disket, directory ve son olarak da dosya ismini girmeniz gerekli. VideoScape dosyalarının sonuna otomatik olarak bir <.geo> takısı eklenecek. Sculpt/ Animate 4D objesi yaratırken ise takınız <.scene> olacak.
İsmi belirledikten sonra bunu onaylamanız için pencerenin alt kesiminde bulunan "Accept" gadget'ine klik etmelisiniz. Buradaki "Volume" gadget'i ise disket ve directory isimlerini seçmenizi sağlayacak.
Dosya isimleri de belirlendikten sonra program resim dosyasını yükleyecek ve bunu nokta nokta analiz edecek. Bu sırada hiçbir tuşa basmamanızı tavsiye ederim. Kısa bir süre bekleyişten sonra artık dosya diskete önceden belirlediğiniz format ve isimle kaydedilmiş olacak.
Artık yeni objenizi istediğiniz programda yükler ve bununla animasyon yapabilirsiniz. Yapacağınız animasyonlar için önceden değişik karakter setleri hazırlayabilir ve daha sonra da bunları kullandığınız animasyon programında yükleyerek, kolaylıkla güzel jenerikler hazırlayabilirsiniz. Ya da istediğiniz belli cisimleri üç boyuta çevirdikten sonra üzerinde gerekli değişiklikleri yapabilirsiniz.
Unutmayın, Amiga'yı bu kadar muhteşem kılan kullanıcıların hayal gücüdür. Yapacağınız şeyler tümüyle sizin hayal gücünüzün boyutlarına bağlı. Fakat fazla da Amiga'ya bulaşırsanız Dünya'daki güzel şeyleri unutabilirsiniz. Bir başka utility'de buluşmak üzere hoşçakalın ...