Ders 1
Game Maker’ı Tanıyalım
Herkese merhaba :D. İlk derse hoş geldiniz. Bu derste Game Maker’la bir proje yapmayacağız, ancak ondan önce yapılması gereken bir şeyi yapacağız. Game Maker’daki bilinmesi gereken butonları, panelleri öğreneceğiz. Eğer Game Maker’daki butonları ve panelleri biliyorsanız direk 2. derse geçebilirsiniz. Ancak bu dersi de pekiştirmek adına takip etmenizi öneririm.
İlk önce programın kısa bir özetini yapayım.
Game Maker nedir, ne yapılır, yenir mi, içilir mi?
Game Maker (Türkçesi Oyun Yapıcı) adından da anlaşılacağı gibi bir oyun motorudur. 3 boyutlu oyunlara da destek verse de Game Maker’da en kaliteli oyunlar hep 2 boyutlu oyunlardır. Ama bu oyunlar 2 boyutlu diye hepsi de 2 boyutlu değildir. İşte o bir kısmı Fake 3D (Sahte 3 Boyutlu) oyun olup normalde 2 boyutlu olmasına rağmen özel spriteler(Oyunlarda tüm görseller) ve teknikler kullanılarak 3 boyutluymuş gibi gösterilir. Bunu yapmak aslında kimi zaman gerçek 3 boyutlu oyun yapmaktan daha kolaydır, ama duruma göre 3 boyutlu oyun tasarlamak daha kolay da olabilir. Ancak biz bunun derdine düşmeyeceğiz ve oyunlarımızı genelde bilindik 2 boyutlu oyunlar şeklinde tasarlayacağız.
Bizim Kullanacağımız Game Maker’ın Özellikleri
Bizim kullanacağımız Game Maker sürümü şu an piyasada en son sürüm olan Game Maker 8 olup kimi projelerde Pro sürümü gerekeceği için (İsterseniz o projeleri atlarsınız ancak o zaman derslerin anlamı kalmaz.) programınız o projeler için tam sürüm olmalıdır.
Programı yüklemek için Google’de “Game Maker” yazarak YoyoGames’in sitesine (Game Maker’ın resmi sitesi) ulaşabilir ve oradan da programın Lite sürümünü indirebilirsiniz. Ancak unutmayın, programın Pro’sunu bulmanız size çok yardımcı olacaktır.
Game Maker’ı Açıyoruz
Artık programın bir şekilde Pro’sunu temin edip yüklediğinizi ve programı açtığınızı varsayıyorum. Eğer programı ilk kez açıyorsanız size programın Simple modda mı yoksa Advanced modda mı çalıştırılacağı sorulacaktır. Orada size Simple tavsiye edilecektir ancak biz Advanced modda başlayacağız. Böylece programa ve içindeki tüm fonksiyonlara daha çabuk alışacaksınız, bana güvenin. Karşınıza aşağıdakine benzer bir görüntü gelecektir. Şimdi bu resmi inceleyelim.
Resimde ilk gözünüze batacak olan farkın arkaplandaki kırmızı, turuncu renkli resim olacağını sanıyorum. Aslında bunun gibi arkaplana kendi resimlerinizi veya hazır bir resmi koymak çok kolay. Bunun nasıl yapıldığını “Arkaplan Resmini Değiştirme” isimli yazımda detaylı bir şekilde bulabilirsiniz. Gözünüze batacak 2. şey ise sağdaki “Tutorial” kutucuğu olacaktır büyük ihtimal. Bu kutucuk programın yüklenmesiyle beraber gelen bir eğitim bölümüdür. Bu eğitim kısmını eğer İngilizceniz iyiyse takip etmenizi kesinlikle öneriyorum. Eğer iyi İngilizceniz yoksa da dert etmeyin, aynı örneğin Türkçe hâlini sitemizde “GM – Your First Game(TR)” başlıklı derste bulabilirsiniz. Game Maker’a bu örnekle başlarsanız Game Maker’ı daha kolay kavrayabilirsiniz. Bu kutucuk her Game Maker açıldığında çıktığı için bir süre sonra rahatsız edebilir çünkü çalışma alanınızın hatırı sayılır bir bölümünü işgal ediyor. Bunun için “Hide” ile bu kutucuğu kapatabilirsiniz. Veya siz elle açmadıkça hiç açılmasın diyorsanız da “Show the tutorials at startup” un başındaki tiki kaldırın ve ardından “Hide” butonuna basın. Artık sizi rahatsız etmeyecektir. Şimdi programın genel olarak arayüzünü tanıyalım. Programın arayüzünü 3 önemli parçaya ayırabiliriz. Bunlar kaynak gezgini, kısayol butonları ve komut bölümüdür. Hazırsanız komut bölümünden başlayalım 🙂
A) Komut Bölümü
Evet işte başlıyoruz. Aşağıdaki resimde komut bölümünü göreceksiniz…
Şimdi bu menülerde bizi karşılayacak seçenekleri inceleyelim…
1) File Menüsü
New : Yeni bir Game Maker projesi açarsınız. Kısayolu CTRL + N ‘dir.
Open : Mevcut bir Game Maker projesini açarsınız. Kısayolu CTRL + O ‘dur.
Recent Files : En son üzerinde çalışılan Game Maker projelerini gösterir.
Save : Üzerinde çalışılan projeyi kaydetmenizi sağlar. Kısayolu CTRL + S ‘dir.
Save As : Üzerinde çalışılan projeyi farklı bir yere, farklı bir isimle kaydetmenizi sağlar.
Create Executable : O an açık olan projenin “.exe” formatlı kendi başına çalışabilen kopyasını çıkarır.
Publish Your Game : Eğer YoyoGames’in sitesine girmişseniz görürsünüz, yüzlerce kullanıcıların yaptığı örnek orada sergilenir. İşte bu butonla siz de beğendiğiniz kendi oyunlarınızı YoyoGames’de sergileyebilirsiniz.
Import Resources : “.gmres” formatlı dosya varsa elinizde o dosyadaki tüm kaynak dosyalarını kaynak gezginine ekler. Mesela bir oyundaki tüm resimleri, müzikleri başka bir oyuna atacaksanız aynı dosyaları tekrar yapmak yerine bu yöntemi kullanmak çok daha idealdir.
Export Resources : O an açık olan projedeki tüm kaynakları (Resim, obje, ses, bölüm, arkaplan…) “.gmres” formatlı bir dosyaya aktarmanızı sağlar. Böylece bu dosyaları başka bir projede “Import Resources” komutuyla kullanabilirsiniz.
Advanced Mode : Game Maker’ı istediğiniz zaman Simple mod ile Advanced mod arasında değiştirmenizi sağlar. Simple mod daha basittir ve arayüzü nispeten daha ferahtır, ama size Game Maker’ın pek çok önemli özelliğini de kullandırtmaz. Advanced mod ise Game Maker’a ilk başladığınızda açmanızı tavsiye ettiğim mod olup Game Maker’ın tüm özelliklerini kullanıcıya sunar. Ayrıca bu modda başlarsanız bu ekstra özelliklere de daha çabuk alışırsınız.
Preferences : Game Maker’ın tüm özelliklerini buradan görebilir ve değiştirebilirsiniz. Ancak bilmediğiniz özellikleri değiştirmeyin derim.
Exit : Kısayolu ALT + F4 olup programdan çıkmanızı sağlar.
2) Edit Menüsü
*** Aşağıda adı geçen X dosyası değişkendir ve alabileceği çeşitli değerler vardır. Bunlar: Sprite, Sound, Background, Path, Script, Font, Time Line, Object ve Room’dur.
Insert/Create X : Kaynak gezgininde seçilen bir klasörde 1 tane X (Seçtiğiniz klasöre göre değişir.) oluşturmanızı sağlar.
Duplicate : Eğer kaynak gezgininde bir X seçiliyse onu klonlamanızı sağlar.
Insert Group : Seçilen X’in olduğu yerde bir klasör oluşturur. Klasörler çok kaynak dosyanın olduğu durumlarda düzen açısından kolaylık sağlar.
Delete : Seçili kaynak dosyasını veya klasörü silmenizi sağlar. Yalnız dikkat edin, ana klasörler silinmez (Kaynak gezginindeki sprites, sounds, paths, rooms vs.).
Rename : Seçili kaynak dosyasının veya klasörün adını değiştirir.
Properties : Seçili kaynak dosyasının (Klasörlerde kapalı bir seçenektir.) özelliklerinin olduğu ekranı açar.
Find Resource : Eğer çok fazla kaynak dosyanız varsa bu komutla ismini girdiğiniz bir kaynak dosyasının bulunmasını sağlar.
Expand Resource Tree : Kaynak gezginindeki ana klasörler ve alt klasörler (Varsa alt klasörlerinde alt klasörleri) açılır ve tüm kaynaklar böylece görünür olur.
Collapse Resource Tree : Kaynak gezginindeki tüm klasörlerin kapanmasını sağlar, böylece ekran iyice karıştıysa düzen sağlayabilirsiniz.
Show Object Information : Tüm object dosyalarının özellikleriyle beraber listelendiği ve Print alınabilen ve kaydedilebilen bir metin kutusu açar.
3) Resources
***Resources içindeki “Create X” kısımları başlı başına bir konu olduğu için onları 2 bölümlük Ders 2’de anlattım. Burada çok basit bir şekilde ne işe yaradıklarını belirteceğim.
Create Sprite : Oyunda yer alacak olan bir görseli bu butona tıklayarak oluşturuyoruz.
Create Sound : Oyundaki herhangi bir sesi oluşturmaya yarar.
Create Background : Oyundaki arkaplanları oluşturmak için kullanılır.
Create Path : Oyundaki özellikle NPC ’lerde ve yaratıklarda kullanacağımız güzergah ekleme işlemini yapar. (Ders 2’de bir örnek yardımıyla anlattım bu konuyu.)
Create Script : Oyunda yer alacak olan düzenli ve bir isme sahip kod topluluğu yapmaya yarar. Ama biz mümkün olduğunca az kod kullanacağız ve Script ’lere hiç girmeyeceğiz. Bizim kullanacağımız kodlar basit, isim almayan kodlar olacak ve böylece az yer kaplayacaklar.
Create Font : Oyunda yer alan bir font ‘u önce buradan programa tanıtmalısınız.
Create Time Line : İçinde pek çok işlemi barındırabilen ve zamanlamayla çalışan bir sistem olup, kullanmayacağımız bir özelliktir.
Create Object : Oyundaki arkaplan hariç görünen her şeyi oluşturmaya yarar.
Create Room : Oyunun içinde geçeceği mekanları, ev içlerini, sokakları vb. oluşturmaya yarar.
Change Game Information : Oyun açılınca isteğinize göre F1 tuşuna basınca görülen ve bilgi verme amaçlı küçük bilgi kutucuğunda yazacak şeyleri belirlersiniz. İsterseniz arkaplan rengini ve yazı renklerini de dilediğinizce değiştirebilirsiniz.
Change Global Game Settings : Oyunun genel özelliklerini ayarlamaya yarar. Çok detaylıdır ve oyunun çalışacağı çözünürlükten sürümüne kadar pek çok özelliği belirlemenizi sağlar. Değinmek istemiyorum şu an çünkü çok yer tutar, zaten henüz ihtiyacımız da yok.
Select Extension Packages : Oyuna Extension Package eklemenizi sağlar. İşlevleri ise oyunu oluştururken bize yeni seçenekler vermesi ve ihtiyaçlarımızı karşılayabilecek özellikler sunması. Ancak çoğu GML (Game Maker Language) ile çalışır ve oyunun boyutunu arttırır. Bu yüzden hemen hemen hiç kullanmayacağız.
Define Constants ve Define Triggers : Karışık şeylerdir ve genelde kullanmayacağımız özelliklerdir. Ancak kısaca değinirsek Define Constants değeri sabit olan ve asla değişmeyen değerler girmemizi sağlar. Mesela Name kısmına “PI” (Tırnaksız) yazıp Value değerine de pi sayısının değeri olan 3,1415 ‘i girebilirsiniz. Define Triggers ise obje oluşturma ekranında kendi Event’imizi oluşturmaya yarar. Mesela aynı anda SHIFT ve C tuşlarına basılınca (Veya daha çok tuş) yapılacak eylemlerimiz olsun. Bu tuşların hepsinin aynı anda basılı olmasını kontrol eden tek bir event yoktur ve burada devreye Define Triggers girer. Buradan GML yardımıyla dilediğimiz şeyleri kontrol ettirip eğer değerler istediğimiz gibiyse o zaman objeye istediğimiz aksiyonları yapmayı sağlarız. Şimdilik çok bilmenize gerek yok bunları.
Included Files : Oyunumuzu .exe formatına çevirdiğimizde oyun dosyasının içinde bulunacak ekstra dosyaları seçmemize yarar. Ne görevi vardır? Mesela oyunumuzu başlatmadan önce bir Intro koyup şirketimizin reklamını yaptık. İşte bu video dosyasını oyunun içinde saklamaya yarar. Oyun açıldığında dosya oyun dosyasından çıkartılıp kullanıma hazır hale getirilir ve oyun kapatılınca dosya da otomatik olarak silinir. Bu oyunu her açtığımızda böyle olur. Burada sadece video’lar kısıtlaması yok, dilediğiniz her şeyi koyabilirsiniz oyun dosyasının içine; Included Files sayesinde tabi ki :D.
4) Scripts
Script’ler düzenli ve bir isme sahip kod parçaları olup bizim hiç kullanmayacağımız şeylerdir. Biz bunların yerine küçük ve isme sahip olmayan, daha basit kod işlemcileriyle çalışacağız. Ve gerekmedikçe de hiç kod kullanmayacağız. Ancak Scripts’in faydası şöyledir ki belli bir kod parçasının aynısını diyelim ki 3-4 farklı objede kullanacaksanız bir o kodu bir script’e dönüştürüp ardından ona isim verebilir ve o script’i o 3-4 objede tanıtıp yerden kazanç sağlayabilirsiniz.
Ancak şunu belirteyim, Scripts panelinde her şey gereksiz değildir. Bize çok büyük faydalar sağlayabilen şeyler de var burada. Onlara hemen göz atalım…
Show Built-in Variables, Show Built-in Functions, Show Constants : Bunlar bize GML’nin kullandığı tüm değişkenleri, fonksiyonları ve sabit değerleri listeler ve bir kod için bir fonksiyon veya değişken arıyorsak alfabetik olarak sıralanmış listelerden bulma ihtimalimiz var.
Show Extension Functions : Eğer oyunumuza “Resources” kısmından “Select Extension Packages” vasıtasıyla Extension Package eklediysek onların bize sağladığı kodlar burada gösterilir. Eğer hiç Extension Package eklemezsek bu liste boş olur. Ancak gerekmedikçe Extension Package eklemek alandan kayıba neden olur.
Show Resource Names ve Check Resource Names : Bunlar oyunumuzdaki kaynak dosyaları listeler ve türünü bize gösterir. Ancak çok kullanacağınızı sanmıyorum.
5) Run
Run Normally : Oyunumuzu normal bir şekilde çalıştırıp test etmemizi sağlar.
Run in Debug Mode : Oyunumuzu çalıştırır ve yanında ekstra bir kutucuk açar. Bu kutucuğa gireceğimiz Expressions ‘lar sayesinde oyunumuzdaki hataları ve nerede olduklarını bulup onları ayıklamamıza yardımcı olur.
6) Window
Cascade : Eğer birden çok kaynak dosyasının ekranı aynı anda açıksa onları bir düzene sokup istediğimiz şeyi bulmamızda çok yardımcı olur.
Arrange Icons : Ne işe yaradığını bulamadım
Close All : O an açık olan tüm kaynak dosyalarının pencerelerini kapatır.
7) Help
Burayı parçalara ayırmadan tek seferde anlatıyorum. Contents İngilizce biliyorsanız Game Maker hakkında aklınıza gelebilecek her soruya cevap bulacağınız, her türlü GML kodunun anlamını bulabileceğiniz Game Maker yardımını açar. Tutorials ise Game Maker’da bulunan Tutorial’leri bulup açmanıza yarar. Extension Packages ise adı üstünde Game Maker’da mevcut EP’lerin hakkında yardım dosyası açar. Alttaki News, Books, Wiki vs. ise Game Maker hakkında çeşitli kaynaklar bulmaya yarar (İnternet gerekir.). About Game Maker ise yüklü olan Game Maker’ınız hakkında küçük bir kutucuk açıp versiyonunu ve sürümünü gösterir.
B) Kısayol Butonları
Neyse ki en uzun kısmı atlattık. Artık göreceğimiz yerler çok daha kısa olacaktır. Alttaki resme bakın…
İşte bu kısayol butonları bölümüdür. Buradan hemen hemen hiç komut bölümüne ihtiyaç duymadan ihtiyaç duyduğunuz her şeyi yapabilirsiniz.
Soldan sağa ilerleyeceğim anlatırken.
1. buton () yeni bir proje dosyası açmaya yarar. 2. buton (
) mevcut bir proje dosyasını açmaya yarar. 3. buton (
) üzerinde çalışılan proje dosyasını kaydetmeye yarar. 4. buton (
) oyun dosyanızı “.exe” formatına çevirmeye yarar. 5. buton (
) oyununuzu YoyoGames’in resmi sitesinde yayınlamaya yarar ve internet gerektirir. 6. buton (
) oyununuzu yapım aşamasındayken çalıştırıp test etmenize yarar. 7. buton (
) oyununuzu Debug modda açıp hatalarını bulmanıza ve böylece hatalarını daha çabuk düzeltmenize yarar. 8. butondan 16. butona kadar olan butonlar (
) oyununuz için kaynak dosyası oluşturmaya yarar. Onları 2 bölümden oluşan Ders 2’de detaylı bir şekilde inceleyebilirsiniz. 17. buton (
) oyununuzda isteğinize göre F1 tuşuna basılınca açılan bilgi kutusunu doldurmanıza yarar. Buradan arkaplan ve yazı renklerini de değiştirmeniz mümkün. İyi bir oyunda tanıtım da önemlidir bu yüzden burayı es geçmeyin. 18. buton (
) oyununuzun tüm ayarlarına ulaşmanızı sağlar. Buradan istemediğiniz kadar seçeneği değiştirmeniz mümkün. 19. buton (
) oyununuza Extension Package ekleyip daha çok GML koduyla çalışmanıza olanak tanır. 20. ve son buton da (
) Game Maker hakkında her şeyle ilgili yardım bulabileceğiniz ve internet gerektirmeyen ama İngilizce olan yardım penceresini açar.
Evet ne demiştim, kısa sürecek demiştim. Ve kısayol çubuğu tamamlandı. Hemen kaynak gezginine de bakalım ve sizi serbest bırakayım xD.
C) Kaynak Gezgini
Aşağıdaki resme göz atarak başlayalım.
Gördüğünüz gibi kaynak gezgini çok kolay bir konu. Buradan oyundaki tüm kaynak dosyalarına ulaşıp düzenleme yapabiliriz. Eğer kaynak dosyası olan bir klasör varsa yanında “+” işareti vardır ve basınca “-“ işaretine dönüşür ve klasör açılır. Eğer kaynak içermeyen bir klasör varsa resimdeki gibi yanında hiçbir işaret olmaz. Seçili klasör mavi işaretlenir ve aynı anda birden çok klasör açık durabilir. Burada bir kaynak dosyası üzerinde çalışmak için ise ismine çift tıklamak yeterlidir. En alttaki 3 şey ise sırayla oyun hakkında F1 tuşuyla açılan bilgiyi değiştirmeye, oyunun tüm ayarlarını değiştirmeye ve oyuna Extension Package eklemeye yarar. Evet, bu konuda bitti. Ders 1’i bitirdik.
Umarım faydalı olmuştur ve çok fazla sıkmamıştır. Bu konuları oyun yaparken daha kolay kavrayacaksınız. Şimdi Ders 2’ye geçmenizi tavsiye ederim. İyi eğlenceler!!!