Gamemaker ile Sıfırdan Oyun Yapmak
http://www.gamemaker.nl den gamemaker 6.0 ı yükledik. Ve bir oyun yapmak istiyoruz. Bakıyoruz bir dolu hazır kütüphanemiz var bu işimizi daha da kolaylaştıracaktır. Önce oyunumuzun tarzını belirliyoruz. Genelde ilk oyun yapanlar platform tarzı bir oyun yaparlar. Bizde platform tarzı bir oyun yapacağız. Peki ana karakterimizin image’si ne olsun. En kolay çizilen bir top çiziyoruz. Ama oyun yapmak için önce elimizde bulunması gerekenler :

1.Çizim Programı (paint, photoshop)
2.Ses Editörü (Windows ses kaydeticisi)
3.Gamemaker (http://www.gamemaker.nl)

Evet arkadaşlar bu kadar az. Ama eğer ses editörüm yok diyorsanız gamemaker’in içindekini kullanabiliriz. Çizim programımda yok diyorsanız gamemaker’in içindeki image editörü kullanabiliriz. Herneyse şimdi oyunumuzun ana karakterini canlandıracak obje için bir image çiziyoruz. Bunu herhangi bir çizim programıyla da gamemakerin içindeki image editörle de yapabiliriz.

1.Çizim programıyla yaptığımız top image’sini bmp,ico,png gibi bir çok resim formatıyla kaydedebilirsiniz.
2.Image editörle yapmaya karar verirsek önce yeni bir sprite yaratıyoruz. Oradan edit spriteye tıklıyoruz. Çıkan image0 a basıyoruz. Ve file mönüsünden new seçeneğini seçiyoruz. Width ve Height ayarlarını girdikten sonra bakıyoruz ki istediğimiz boyutta bir image oluşmuş. Buna image editörü kullanarak bir top resmi çiziyoruz ve kaydediyoruz…

   Şimdide spritemize isim veriyoruz. İsmi player olsun. Daha sonra spriteyi açıyoruz. Edit sprite butonuna tıklıyoruz. File mönüsünden save as strip e tıklıyoruz. Onu masaüstüne canavar adında kaydediyoruz. Sonra sprite editor ve sprite properties pencerelerini kapatıyoruz. Sonra yeni bir sprite oluşturuyoruz. Adını dusman koyuyoruz. Daha sonra sprite properties penceresindeki load sprite butonuna tıklıyoruz oradan. Masaüstündeki canavar.bmp dosyasını alıyoruz. Ve edit spriteye basıyoruz daha sonrada sprite editor penceresinden images mönüsünden colorize … seçeneğini seçiyoruz. Değer olarak 56(veya 0-255 arası bir sayı) girip spriteyi kaydediyoruz. Bu işlemi yapmanın birkaç yolu daha var onlara kısaca değineceğim.

1.Sprite kopyalama yolu ile.
2.Image kopyalama yolu ile.

   Şimdi oyunumuzun karakterlerini çizip hazırlamış bulunmaktayız. Evet 2 tane top karakteri biri player diğeri ise dusman. Şimdide yeni bir obje yaratıyoruz.

1.Ctrl-alt-o
2.Add / add object
3.Object yazısına sağ tuşla tıklayıp add object’i seçerek.

   Evet sonra object properties penceresindeki sprite bölmüne player sprite’sini koyuyoruz. Şimdide add event /step/step e tıklıyoruz. Şimdi objemize bir step eventi koymuş olduk. Step anladığınız gibi objemizin haraket kodlarını içeren event. Şimdi istersek step eventine move kütüphanesinden sürükle bırak ile bir işlem getirebiliriz. Ama gamemakerde hiçbir zaman kütüphanelere bağlı olmamalıyız. Kütüphaneler bizi çok sınırlar. Şimdi step eventine şu kodu ekliyoruz :

if ( keyboard_check (vk_up) && keyboard_check(vk_right) ) { y -= 4 ; x += 4 } ;
if ( keyboard_check(vk_right) && keyboard_check(vk_down) ) { y += 4 ; x += 4 } ;
if ( keyboard_check(vk_down) && keyboard_check(vk_left) ) { y += 4 ; x -= 2 } ;
if ( keyboard_check(vk_left) && keyboard_check(vk_up) ) { y -= 4 ; x -= 4 } ;
if ( keyboard_check(vk_left) ){x -= 4 } ;
if ( keyboard_check(vk_right) ) {x += 4 } ;
if ( keyboard_check(vk_down) ) {y += 4 } ;
if ( keyboard_check (vk_up) ) { y -= 4 } ;

   Anladığınız gibi şimdi olasılıkları var bu kodda. Örneğin en alttaki olasılığı açıklayalım…

if = eğer
keyboard_check = klavyeden basılırsa
vk_up = yukarı ok tuşuna
y -= 4 = y : -4 gitsin.

   Birde ilk kodu açıklayalım.

if = eğer
keyboard_check = klavyeden basılırsa
&& = aynı zamanda
; = aynı zamanda
y -= 4 ; x += 4 = Hem y : -4 hemde x : 4 yöne ilerlesin yani. Yukarı sağa çapraz gitsin...

   Şimdide bu objemize player ismini veriyoruz. Şimdide dusman adında bir obje yaratıyoruz. Spritesini dusman spritesi olarak değiştiriyoruz. Ve step eventine şu kodu ekliyoruz :

x = player.x
y = player.y
speed = 3

   Peki biz ne demişiz dusman objesine. X’e dğru haraketin player objesinin x i ile aynı olsun. Y’e dğru haraketin player objesinin y’si ile aynı olsun. Ve bu xlere ve ylere 3 hızıyla gitsin diyoruz. Ve arkadaşlar şimdide bir room ekliyoruz room’a hem player objesini hemde dusman objesini aralarında büyük bir aralık bırakarak koyuyoruz. Şimdide file mönüsünden create executable seçeneğini seçiyoruz. Masaüstüne “deneme1” olarak kayıt ediyoruz. Şimdide masaüstündeki deneme1.exe yi çalıştırıyoruz. İşte basit bir oyunun temelleri yani basit bir platform oyunu örneği. Bunu geliştirmekte artık size kalsın.

Bana ulaşmak için:
mail & msn :erkinclup@hotmail.com
URL : http://www.yesildus.com.tr.tc
Erkin Ekici :: 2005 :: www.oyunyapimi.org




Bu haberin geldigi yer: oyunyapimi.org
http://www.oyunyapimi.org

Bu haber icin adres:
http://www.oyunyapimi.org/modules.php?name=Sections&op=viewarticle&artid=75