21 Ocak 2012 Cumartesi

Ders-10 Preloader[Ön Yükleyici] Yapımı

Bu dersimizde, yapacagimiz çalismalara,örneklere veya oyunlara nasil "yüklenme miktarini" gösterebilecegimizi ögrenecegiz.Tabi öncelikle “scene” konusunu ögrenmemiz gerekir gerekir.

Scene’nin Türkçesi “sahne”demektir.Eger istersek biz yapacagimiz çalismayi(oyunu), birkaç sahneden olusturabiliriz.Örnegin, oyunumuzun yüklenme miktarini gösteren bir sahne,oyunun menüsünün oldugu bir sahne,oyunun kendisinin oldugu bir sahne ve oyunun bitimi esnasinda gösterilecek olan bir sahne olarak, toplam 4 sahneden olusturabiliriz oyunlarimizi. Öncelikle sahne(scene) bölümüne nasil ulasacagimizi belirteyim:Shift+F2” tuslarina basarak veya “Window-Other Panels-Scene”ye tiklayarak scene bölümüne ulasip çalismalarimizdaki sahneleri görebiliriz.Asagidaki resmi inceleyin.






Örnegin ben, “yuklenme” ve “ana_bolum” diye toplam 2 tane sahne olusturdum; “yuklenme sahnesine”, benim yaptigim çalismanin, yuklenme durumunu denetleyen kodlari yazacagim. Çalismamiz yüklenir yüklenmez, “ana_bolum sahnesine” geçilmesini saglayacagim.Öncelikle scene bölümündeki, “ana_bolum” yazisina bir kez, sol fare tusuyla tikliyorum (seçiyorum) ve yan taraftaki TIMELINE’ye tiklayarak, “ana_bolum” sahnesine giriyorum.Ardindan sayfanin ortasina “Text Tool” araci yardimiyla, “Burasi ana bölüm sahnesinir..” yazisi yazdim.




Ardindan tekrar scene (sahne) paneline dönerek ve oradaki yuklenme sahnesine girdim.



Sonra, “Text Tool” aracini kullanarak, sayfanin ortasina dikdörtgen seklinde yazi alani olusturdum.Bu yazi alani, bize sayfanin yüklenme cinsinden miktarini gösterecek olan kisimdir.Ve PROPERTIES kismindan, “Static Text” durumunda olan özelligini “Dynamic Text” olarak degistiriyorum.Bunu yaptiktan sonra,Color kismindan kutucugun içinde olacak olan yazinin,rakamin, her neyse artik onun,rengini seçebiliriz.Ben siyah rengi seçtim. "Size:" kismindan da yazinin büyüklügünü; "Family" kismindan da yazinin stilini seçebilirsiniz.




Bunlari yaptiktan sonra dikdörtgen seklindeki yazi alanina bir instance name verin.Ben “yuklenen_txt” ismini verdim.Simdi gelelim sayfanin yüklenmesini denetleyen,gösteren ve yüklendikten sonra “ana_bolum” sahnesine geçis yaptiran kodlari yazmaya.1.frameye sag tiklayip, actions panelini açin ve asagidaki kodlari yazin:


addEventListener(Event.ENTER_FRAME ,yuklemeyi_denetleme);

function yuklemeyi_denetleme(event:Event):void{

var toplam:Number = stage.loaderInfo.bytesTotal;
var yuklenen:Number = stage.loaderInfo.bytesLoaded;
var hepsiToplam:Number = Math.floor(yuklenen / toplam * 100);

if(yuklenen==toplam){
removeEventListener(Event.ENTER_FRAME , yuklemeyi_denetleme);
gotoAndStop(1,"ana_bolum");
}

else{
stop();
yuklenen_txt.text = hepsiToplam + "%";

}
}




Yukaridaki kodlari anlatmaya gerek görmüyorum.Çünkü yapacagimiz çalismalarda bu yükleme isini 1 kere kullanacagimiz için ögrenmek gerekli degil. “Kopyala-yapistir” yaparak bu hususu halledebilirsiniz. Ama yukaridaki kodlarin arasindaki, su asagidaki kodu ögrenmenizi faydali buldugum için, açiklama geregi duyuyorum:

removeEventListener(Event.ENTER_FRAME , yuklemeyi_denetleme);


Bu kod,ilk yazdigimiz olan olay atayici kodumuzu silen koddur.Tek farki basinda “add” yerine “remove” yazmasidir.Bu kod aktif oldugunda, olay atayici kodumuz silinir.Bunu kullanmamizdaki amacimiz, islemcimizin bos yere, sürekli yüklemeyi denetlemesini engellemek içindir.Nitekim bu kodun aktif oldugu an, çalismanin yüklendigi andir.

Bütün bunlari kavradiktan ve uyguladiktan sonra, “Crtl+Enter” yaparak örnegi inceleyebilirsiniz.




Diyeceksiniz ki, örnegi çalistirdim; ama hiç yükleme yapmadan direk “ana_bolum” sahnesine geçti? Aslinda direk geçmedi.Bizim aynen yapmak istedigimiz gibi, önce yükleme yapti ve tamamlaninca da “ana_bolum” sahnesine geçti.Ama bu yukleme isi, bizim bilgisayarimizda oldugu için, o kadar hizli bir sekilde gerçeklesti ki,bunu göremedik. Gerçek sonucu ancak Internete yüklendigimiz zaman görebiliriz. Ama çalismanin boyutu çok küçük oldugundan,hemen yükleyecegi için, göremeye de biliriz :D.



Hiç yorum yok:

Yorum Gönder