İçindekilerGirişİndex
YukarıİlkÖnceki YokSonraki YokSon
Geriİleri
Yazdır
Ayhan Gökoğlu
ayhan.gokoglu@mynet.com

Flash İle Hazırlananan Bir Projede Neler Olmalı

Fonksiyon/Method Hayati Önem Taşır

Bir flash projesinde diğer programlama dillerinde de olduğu gibi modüler kod yazmak, projenizi kolay bitirmek, güncel değişiklikleri aktarmak ve daha bir çok konuda size inanılmaz imkanlar sunar. Bu yüzden yaptığınız her eklentiyi bir fonksiyon bloğunda saklamalısınız.

Bir projeyi oluştururken planlama çok önemlidir. Fakat geçtiğimiz yıllarda bunun, özellikle büyük planlama yapılan yazılımlarda zararlı olduğu ortaya çıkmıştır. Bende size projenizi küçük adımlara bölmenizi tavsiye edeceğim. Burada unutulmaması gereken önemli husus, her aşamayı bir fonksiyon içinde kullanmaktır.

Her Bir Layer Sizin Binanızın Katları Gibidir

Flash benim tanıdığım en iddalı multimedia yazılımıdır. Çünkü içerisinde grafik ve programlamayı kolay birleştirebilecek ve karmaşık yapıları bir bütün içerisinde kullanabilen çok az proğram mevcut. Fakat bunun büyük bir dezavantajı da var. Sonradan yapacağınız değişiklikleri bir projenin içerisine uygulamak o kadar kolay olmaz. Bu yüzden projenizde kullandığınız her grafik objesini isimlendirmeli ve her grafik öğesini bir movieclip içerisinde tutmalısınız. Aksi halde projenizin içerisinde, ne zaman kullandığınızı hatırlamadığınız bir yığın grafik objesi olacaktır..

Layerlar en çok ihtiyaç duyduğunuz ayraçlardır. Layerlar, Time Line üzerinde projenizi temsil eden ve bir üstünlük ayırımı yapan kılavuzlardır. Projenizde çok fazla layer kullanabilirsiniz.

Layerları hard diskinizde, dosyalarınızı sakladığınız klasörlere de benzetmek mümkün. Diğer taraftan layerlar sahnede bir çok sıkışık nesneyi oynatmak istediğinizde de istemediğiniz nesnelerin oynamasını engeller. Bunu sağlamak için layerları kilitleyip, sadece ihtiyaç duyduklarınızı açmak yeterlidir. Ayrıca her layera bir isim vermişseniz, bu sizin için çok kolay olacaktır.

Layerlarda aynı işi yapan objeleri tutmalısınız. Böylece görmek istemediğiniz gurubu görünmez yaparsanız ve size sadece kullanmak istediğiniz guruplar kalır. Action script kodlarınız için yeni layerlar yapmakta çok profesyonelce bir hareket olacaktır.

Her Frame Porjenizin Hızını Etkiler

İlkel yazılım dillerinde bir programın temel öğeleri şu şekildeydi. Tanımlamalar, Methodlar ve Ana Program Bloğu. Yeni versiyonlarında bu özellik biraz değişime uğradı ama mantık elbetteki korunuyor. Sizin flash projenizde de bu özellikleri uygulamanız çok önemli. Örneğin bir oyun projesinde, program içinde yeni değerler alan değişkenlere başlangıç değerlerini atamak istiyorsunuz. Bunun için yapmanız gereken ilk frame’i kullanın bu size rahat hareket edebilecek bir alan sağlayacaktır. Bu örneği yazının sonunda download edebileceğiniz satranç oyunundan yola çıkarak anlatalım.

Satrançta taşların ilk durdukları pozisyonu daha sahne yüklenirken vermeniz gerekir. Ama taşların pozisyonu oyun içerisinde farklı karelere gideceğinide unutmamak gerekir. Bu yüzden ilk frame’i başlangıç değerlerini atamak için kullanmalı ve ikinci frame’de ise ilk frame’e dönmesini engellemelisinz. Bu şekilde ilk frame’de projede kullanılan bir çok global değişkene ilk değerlerini verebilirsiniz.

Projeniz birden fazla aşamadan oluşuyor ise time line üzerinde her aşamaya belirli aralıklarla Keyframe’ler oluşturabilirsiniz. Fakat projenizde animasyonlarınızı ana sahneye eklerseniz, animasyon sürenizin uzunluğundaki frameler kodlamayı ve bu tür kontrolleri zorlaştıracaktır. Bu yüzden her grafik nesnesi ve animasyonu bir movieclip içinde olmalıdır. Bu şekilde tasarlanan projelerde, ana program bloğunun çatısını ana sahnedeki frame aralıkları oluşturur. Kodlama içinde de aynı şekilde fonsiyonlarınızın çağırıldığı ve projenizin hareket prensibini oluşturan fonksiyonlar kullanılmalıdır. Bunları yaptığınızda sonradan düzenlenmesi kolay ve tek noktadan hareket eden bir proje sahibi olursunuz.

Projenizi Buglardan Kurtarmak İçin Kendi Debug Sisteminizi Kurun

Projenizde hayati önem taşıyan konulardan biri daha. Kandinize ait debug sistemi oluşturmaktaki asıl amaç, projenizin mantıksal hatalarını görebilmek, modüler yapıyı güçlendirmek, projenizi daha basit ve hızlı şekilde test etmektir.

Action script diğer programlama dillerinin temel yapılarına benzer özellikler gösterir. Fakat bazen bir string operasyonunu, onun istediği şekilde yapmadığınızda size istediğiniz sonucu vermez. Hatta bu yanlışlıkla ilgili hatada vermez. Bu şekilde projenizi bir çıkmaz içerisine sokabilir. Örneğin iki string tipinde olan sayıları artı operatörüyle toplamaya çalıştığınızda yada bir movieclip ismini değişkenlerle oluştururken “Expression” checkini tıklamadığınızda veya bunu “eval()” komutu ile kullanmadığınızda hatanızın nerde olduğunu bulmak oldukça zordur. Bu yüzden kendi debug sisteminizi kurmak zorundasınız.

Bunun için size gereken birkaç input textbox, birkaç button ve belki sizin objelerinizle aynı işi yapmaya çalışan bir movieclip olabilir. Şüphelendiğiniz her aksiyonu mutlaka test amaçlı buttonunuzda deneyin ve sonucunu (eğer bir değer döndürüyorsa) test için kullanacağınız bir textbox’a yazdırın. Böylece ufak bir operatör hatası yüzünden saatlerce projenizin inşaasını askıya almamış olursunuz.

Projeniz Bir İnşaat Sahasıdır Güzel Hazırlanmış Grafik Giremez

Diyelim ki bir inşaat yaptırıyorsunuz ilk işiniz mutfak dekorasyonunu seçmek olmaz sanırım. Bu size daha başlamadan oldukça fazla zaman kaybettirir. Flash projesinde de aynı durum geçerlidir. Dediğimiz gibi flash, grafik ve kodlamanın içiçe durduğu bir programdır. Bu aslında ciddi bir avantaj olmasına karşın iyi ayırılmamış bir projede her şeyi arap saçına çevirir.

Bu kısım tabii ki daha çok yazılım yapan kişi tarafından bakılarak anlatılıyor. Çünkü bu ayırımı yapması gereken kişi yazılımı yapandır. Yani bir projenin önce programlaması yapılır ardından da arayüz giydirilir. Arayüz problemleri yazılıma göre oldukça göreceli olduğundan tersi yapıldığında sonuca ulaşmak aynı şekilde göreceli olur.

Projede güzel grafikli nesneler hazırlayarak onların hareketlenmesini beklemek elbette ki insana daha elle tutulur bir şey varmış gibi gelebilir. Hatta motive ediyor da olabilir ama gerçekte işler böyle yürümez. Önce bir iskelet oluşturmalı ve eklem hariketlerini tamamlamak gerekir. Bu iskelet ilk adımlarını bırakın yırtık elbiselerle atsın nasıl olsa ona sonrasında kaslar, derisi ve yeni elbiseleri eklenebilir.

Bizler projelerimizde önce kareleri, daireleri, cizgileri hareket ettireceğiz. Sonrasında ise bu karelerle ve diğer geçici grafik nesneleriyle, yerine getirmesi gereken işlemleri tamamlamalıyız. Tüm bunların iyi çalıştığı test edildikten sonra projemizi güzel grafikler hazırlayan arkadaşlara bırakabiliriz. Grafikleri de siz yapıyorsanız en son bu işe girişmelisiniz. Başlangıç ve son arasındaki ihtiyac farklılığını gördüğünüzde bu şekilde yapmaktan inanılmaz keyif alacaksınız buna emin olun.

Son Olarak...

Bu yazıda anlatılan yöntemleri daha iyi anlamanız için hazırladığımız başlangıç aşamasındaki satranç oyun dosyasından görebilirsiniz. Bu dosyada şimdiye kadar yapılan sadece taşların kurallara uygun olarak hareket edebilmesini sağlamaktır. Eğer bir proje inşaatının nasıl bir yer olduğunu görmek istiyorsanız bu linkten oyunu indireblirsiniz. İleriki zamanlarda bu oynun tamamlanana kadar geçen süre içrisinde kullanılan enteresan yöntemleri ve oyun programlama ile ilgili detayları anlatılan yazıları bu kısımda bulabileceksiniz.

Umarım sizde bu oyunu tamamlamak gibi bir gayret içerisine girersiniz.

Şimdiden kolay gelsin.

İçindekilerGirişİndex
YukarıİlkÖnceki YokSonraki YokSon
Geriİleri
Yazdır