Bu sayfadaki yazılar
Sayfanın metni
Sayfa 22
COPY (<sağ Amiga>+<C>) fonksiyonu yardımıyla seçilmiş nokta, kenar, yüzey ya da objeleri buffer'a kopyalayabilirsiniz. Daha sonra bunları dilediğiniz yere yerleştirmek için PASTE (<sağ Amiga>+<P>) fonksiyonunu çağırmanız yeterli. CUT (<sağ Amiga>+<X>) fonksiyonu copy'e çok benzer; fakat ek olarak buffer'a kopyalanan noktalar ve kenarlar kümesini sahneden siler.
DELETE (<sağ Amiga>+<D>) yardımıyla da, seçilmiş olan noktalar/kenarlar kümesini sahneden silebilirsiniz.
Paste fonksiyonu kullanılarak yeni yerleştirilen bir noktalar / kenarlar kümesinin rengi turuncudur. Bu, yerini kolaylıkla değiştirebilirsiniz anlamına gelmekte. Zira bazen noktalar / kenarlar kümesini tam istediğiniz yerin yakınlarında bir yerde bırakmış olabilirsiniz. Tekrar Cut ve Paste kullanmak zahmetine katlanmaya ne gerek var? İki defa ardarda <F1>'e basıp mouse işaretçisi yardımıyla yeni yeri kliklemeniz, yeri ayarlamanız için yeterli olur.
Eğer STORY ya da TARGET fonksiyonlarından birini kullanıyorsanız, dikkatli olmanızı öneririm. Çünkü bu fonksiyonlar obje ismine göre çalışırlar. Buffer'a kopyalanan noktalar / kenarlar kümesinin ismi orijinaliyle aynı kalacağından, program ne yapacağını şaşırabilir ve guru'ya düşebilir. Bunun için demin adını verdiğim iki fonksiyonu kullanmadan önce, tüm obje isimlerini tek tek kontrol edin ve aynı olmamalarına dikkat edin.
ERASE (<sağ Amiga>+<£>) fonksiyonu, sahneyi komple silmemizi sağlar. Bunun için objelerin ya da noktaların seçilmiş olup olmaması gerekmez. Yalnız Erase fonksiyonu Global parametrelere hiçbir etki yapmaz (bu konuda daha ayrıntılı bilgiyi ileriki sayılarda bulabilirsiniz).
Eğer Erase fonksiyonunu yanlışlıkla kullandınızsa hiçbir işlem yapmadan UN-DO fonksiyonunu (<sağ Amiga>+<U>) çağırın. Bu şekilde tüm sahne düzenlemeniz tekrar yerine yerleştirilecektir.
Pick Face ya da Pick Object modunda Erase fonksiyonunu çağırırsanız, yüzeyler veya objeler silinecek, fakat eksenleri olduğu gibi kalacaktır.
Diyelim ki kompleks bir obje yaratmaktasınız ve bunun için custom penceresindeki temel objeleri kullanıyorsunuz. Temel objeleri birbirine birleştirmeniz gerekiyor ki, bu bir hayli zaman alacak bir işlem. Zira teker teker noktaları seçerek yüzeyler yaratmak gerekli. Objeler basit olsa hadi neyse; çok noktası olan objeleri birleştirip tek obje haline getirmek, bir hayli zaman ve sabır isteyen bir iş. Ayrıca oturup yapsanız bile objelerin tek bir ortak ekseni olmaz. Bu da her seferinde genel objeyi seçmek için tüm eksenleri çoğul seçim modunda (multi mode - <SHIFT> kullanılarak seçme) seçmeniz demek. İşte JOIN (<sağ Amiga>+<J>) fonksiyonu derdimize deva oluyor. Bu fonksiyon tam istediğimiz gibi; objeler birbirine değsin değmesin fark etmez, objeleri birleştirir ve tek bir ortak eksene bağlar. Bunun için birleştirilecek objeleri çoğul seçim modunda teker teker seçmemiz ve fonksiyonu seçmemiz yeterli. Yalnız dikkat edin, ilk seçtiğiniz objenin ekseni her zaman oluşacak objenin ekseni olacaktır.
Ayrıca diğer programlardan (Sculpt / Animate 4D, VideoScape 3D veya Forms in Flight) obje aktarırken, Join fonksiyonu bir hayli işimize yaramakta. Zira diğer programlar bazen fazladan nokta ve yüzey üretirler. Sculpt / Animate 4D programından obje aktarırken başıma böyle bir olay gelmişti. Objeme ait tüm yüzeyler birer eksene sahip olmuştu. Bütün bu eksenler hem çalışmamı engelliyordu, hem de sahne karmaşa içinde oluyordu. Bunun da çözümü, tüm bağlı olan yüzeyleri birleştirmek ve tek bir eksen altında toplamak olacaktır.
Gelelim SPLIT fonksiyonuna (<sağ Amiga>+<Z>). Bu fonksiyon bir bakıma join'in tersi bir işlem yapmakta. Split, dilediğiniz bir objeden bir kenarlar kümesini kesip almanıza yarıyor. Bunun için aranan şart, kesilecek olan kenarların bir çevreyi oluşturmaları.
Objeyi seçin ve Pick Edges moduna geçin. Kesilmesini istediğiniz tüm kenarları çoğul seçim modunda klikleyerek belirleyin. Artık split fonksiyonunu çağırabilirsiniz. Fonksiyon çağrıldıktan hemen sonra, seçmiş olduğunuz kenarlar ayrı bir obje haline geleceklerdir. Bu yöntemle kameranın dairesel bir yol izlemesini sağlamak bir hayli kolay, ilk önce bir küre ya da disk yaratın ve bunun kenarlarını seçin. Split fonksiyonunu da çağırdıktan sonra artık küreyi silebilirsiniz. Dairesel olarak yerleşmiş kenarları bundan sonra yol olarak kullanabilirsiniz. Split yardımıyla kesit almak ise çok kolay oluyor.
GROUP fonksiyonu (<sağ Amiga>+<G>) yardımıyla, bazı objeleri gruplandırabilir ve aynı anda aynı hareketleri yapmalarını sağlayabiliriz. Gruplama yöntemi Sculpt / Animate 4D'deki hiyerarşi tekniğiyle benzeşmekte. Gruplamayı bir ağaca benzetebiliriz. Her yeni dalın çıktığı nokta, bizde her yeni alt objenin oluşturduğu küme olmakta. En alt objeleri istediğimiz gibi hareket ettirebiliriz. Diğer hiçbir obje buna bağlı olarak hareket etmez. Fakat bir üst kademeden bir objeyi hareket ettirdiğimizde, buna bağlı tüm alt objeler de aynı hareketi izleyeceklerdir. Yine bir üst kademeden (artık 3. derece) objeyi hareket ettirdiğimizde, sanki buna bağlı 2. kademe objeler ve bunun alt objelerinin (ilk kademe) hepsi alt objeymiş gibi hareket edecekler ve 3. kademeden olan ve hareket ettirilen objenin hareketini taklit edeceklerdir.
Bunu anlatmak için en iyi örnek, insan kolu. Parmak uçlarındaki kemikler ilk kademeyi, parmağın orta kemiği ikinci kademeyi, avuçtan hemen sonra gelen kemikler 3. kademeyi temsil etsin. Avuç ise 4. kademe, alt kol 5. kademe ve son olarak da üst kol 6. kademeyi temsil ediyor. Şimdi 1. kademedeki kemiklerden herhangi birini hareket ettirelim; diğer hiçbir uzvumuz bu hareketten etkilenmez. Fakat diyelim ki 4. kademeyi temsil eden avucumuzu, yani elin bütününü hareket ettirdik. Avucun tüm alt objeleri, bu durumda tüm parmaklar aynı hareketi izleyerek pozisyonlarını değiştireceklerdir. Kolumuzu yukarı doğru hareket ettirirsek 6. kademedeki objeyi, üst kol kemiğini hareket ettirmiş oluruz. Bu da tüm alt objelerin yer değiştirmesine sebep olur.
Galiba örnekte fazla derinlere daldım. Fakat umarım verdiğim örnek hiyerarşik gruplama sistemini anlamanızı sağlamıştır. TurboSilver'da objeler gruplandırıldıkları zaman, bu tür bir mantıkla hareket ederler. Grubun en üst kademedeki elemanı grubu yönetir. Bu durumda grubun tümünü seçebilmek için, işte bu en üst kademedeki elemanı seçmek gerekir. Peki nasıl grup yapabiliriz ve bu grubun bir elemanını grubun başkanı ilan edebiliriz? Gayet basit, çoğul seçme sistemi burada da işimizi görecektir. Tüm gruplandırılacak objeler seçilir ve Edit menüsünden Group fonksiyonu çağrılır. Bitti. Bu kadar basit. Yalnız dikkat edin, çoğul seçim sırasında ilk seçtiğiniz obje grubun başkanı olacaktır. Yanlış bir sıra takip ederek grup başkanını yanlış belirlersek, UNGROUP fonksiyonu (<sağ Amiga>+<Y>) yardımıyla yaratılan grubu dağıtıp tekrar gruplamamız yeterli olacak.
QUIT (<sağ Amiga>+<Q>) Celi editor'den (sahne editörü) çıkıp tekrar animasyon editörüne dönmemizi sağlar. Bu arada yapılan tüm ayarlamalar ve sahne düzenlemesi, diskete Celi dosyası olarak kaydedilecektir. Kayıt yapmadan animasyon editörüne dönmek için ESCAPE (<sağ Amiga>+< / >) fonksiyonunu kullanmalısınız.
Ehh, bu aylık da yerim doldu. Fakat verdiğim bilgi sizi uğraştıracaktır. En iyisi, tüm menüleri teker teker denemeniz. Bu şekilde daha da iyi bir şekilde programa hakim olabilirsiniz. Bana artık bir dahaki aya görüşmek üzere hoşçakalın demekten başka bir şey kalmıyor. İyi günler sizlerin olsun.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 23
Merhaba arkadaşlar. Bu sayımızda da yine bir aradayız. Bu ay ses komutlarını bitirip yeniden grafik komutlarına başlayacağız. Ama bundan önce sizlere iyi ve daha iyi olmak üzere iki tane haberim var:
İlk olarak Amiga meraklıları için dünyaca ünlü 'Amiga World'ün yaptığı bir araştırmadan kısaca bahsedeceğim. Geçtiğimiz sayılarından birinde bu dergi Amiga için mevcut olan Basic yorumlayıcılarını (interpreter) değişik yönlerden karşılaştırmış. Sonuç olarak ortaya çıkan gerçek, AMOS'un bir oyun yazma programı olmakla kalmayıp, yüksek düzeyde gelişmiş ve yapısallaşmış programlar yazmaya gerek hız, gerek de esneklik yönünden en uygun Basic türü olduğu.
İkinci ve daha iyi olan haber, artık AMOS için bir derleyicinin (compiler) hazırlanmış olduğu. Bu program şu anda Türkiye içinde de mevcut. Henüz kullanma fırsatım olmadı, ama en kısa zamanda göz atıp incelemeyi düşünüyorum.
Gelelim bu ayki komutlarımıza. Bu ay AMOS'un örneklenmiş sesleri kullanmaya yarayan komutlarını ve müzik çalma komutlarını göreceğiz. Bu komutlar sırasıyla 'sam play', 'sam bank', 'sam raw', 'music', 'music stop', 'music off', 'tempo', 'mvolume', 'voice', 'vumeter' ve 'sample' komutları. Şimdi bunları teker teker inceleyelim:
KOMUT: Sam play KULLANILIŞI:
sam play ö sam play s,ö sam play s,ö,f
Bu komut yardımıyla Amiga'nızda örneklenmiş sesleri çalabilirsiniz. Hafıza bankanızda depolayabileceğiniz örneklenmiş ses sayısı, sadece sahip olduğunuz hafıza miktarıyla sınırlıdır. Burada 'ö', ses numarasıdır.
Komutun ikinci kullanılış biçiminde 's' parametresi yardımıyla, sesin hangi kanallar üzerinden verileceği ayarlanır. Bunlardan başka ek olarak vereceğiniz bir T parametresiyle, bu sesin 'playback' hızını ayarlayabilmeniz mümkün. Burada T, saniyedeki tarama sayısıdır. Böylece tek bir örneklenmiş ses kullanarak değişik efektler elde edebilirsiniz.
Şimdi bu komuta örnek bir program görelim. Programı kullanmak için, AMOS'un data disketi veya içinde AMOS formatında kayıt edilmiş seslere sahip bir disket gerekiyor.
Rem ** AMIGA DÜNYASI ** Rem ** AMOS Demo Program ** Rem ** Written by Burak Ozdemir ** Rem** AMOS Copyright 1990 ** Rem ** Mandarin/Jawx **
F$=Fsel$("SYS:") LoadF$,l Sam Bank 1 ForF=1 To 11 Locate 0,0 Print "sample ";F;" caliyor" Do Sam Play F Locate 0,20 Centre "Mouse tuşuna basin" If Mouse Click>0 Then Exit Wait 30 Loop Next F
KOMUT: Sam bank KULLANILIŞI:
sam bank n
Bu komut seslerinizin depo edildiği hafıza bankasını değiştirmek için kullanılır. Bu sayede aynı anda değişik ses gruplarını hafızada bulundurabilirsiniz.
KOMUT: Sam raw KULLANILIŞI:
sam raw s,a,u,f
Genelde kullanılan seslerin hepsi AMOS'un kendi hafıza bankalarında depolanır. Fakat bazı durumlarda hafızanın herhangi bir yerine depolamış olduğunuz sesleri kullanmak veya daha önce çalıştırılmış olan bir programa ait sesleri aramak gerekebilir. İşte bu komut o zaman devreye girer. Burada 's', yine kanal bilgisini, ve T de yine tarama frekansını belirler. 'a' sayısı, ses bilgisinin hafızadaki başlangıç adresidir, 'u' ise bu bilginin uzunluğunu belirtir.
KOMUT: Sam loop KULLANILIŞI:
sam loop on sam loop off
Sam play ve sam raw komutları sesi sadece bir kez verir. Eğer bunu tekrarlayarak yapmasını istiyorsanız, bu komut çok işinize yarayacaktır.
Rem ** AMIGA DÜNYASI Rem ** AMOS Demo Program ** Rem ** Written by Burak Ozdemir ** Rem** AMOS Copyright 1990 ** Rem ** Mandarin/Jawx
F$=Fsel$("SYS:") LoadF$,l Sam Bank 1 Sam Loop On ForF=1 To 11 Locate 0,0 Print "sample ";F;" caliyor" Sam Play F Locate 0,20 Centre "Mouse tuşuna basin" Do If Mouse Click>0 Then Exit Loop Next F Sam Loop Off