Game Maker

game maker, yoyo games tarafından delphi programlama dili ile geliştirilmiş bir oyun yapımı programıdır.

game maker'ın ücretli ve ücretsiz sürümleri vardır. ücretsiz sürümü dll kullanımı, multiplayer oyun desteği ve gelişmiş gml (game maker language) komutları gibi bazı özellikleri desteklemez. ücretli sürümünde ise bu sınırlamalar bulunmamaktadır. game maker'ın ücretsiz veya ücretli sürümü kullanılarak oluşturulan oyunlar herhangi bir lisans ile dağıtılabilir ya da satılabilir.

game maker, exe uzantılı dosyalar üretir. programın kaynak kodunun dosya formatı sürüm 4 ve 5 için gmd, sürüm 6 için gm6, sürüm 7  ve 8 için gmk'dır.

temel özellikler 
game maker direct3d kullanır ve sınırlı da olsa 3 boyutlu grafik ve modellere destek verir.

programdaki partikül sistemi ile yağmur, kar, bulutlar, ateş, yıldırım, duman, patlama ve daha birçok efekt oluşturulabilir. programın içinde bulunan aksiyon kütüphanesinde birçok hazır efekt vardır. aksiyon kütüphanesi haricinde istenirse gml ile tamamen kullanıcıya özgü bir efekt geliştirilebilir.

aksiyon kütüphanesi bir oyunun yapımında gerekebilecek temel işlemleri kod yazmadan kullanabilmek için geliştirilmiştir. örnek olarak, bir patlama efekti sürükle-bırak yöntemi ile oyuna eklenebilir, efektin rengi, boyutu ve nerede gözükeceği gibi ayarlar tek satır kod yazmadan belirlenebilir. hazır aksiyonlar kullanarak karmaşık oyunlar geliştirilebilse de, game maker'ın gerçek gücünün ortaya çıkması için gml dili kullanılmalıdır.

game maker dll'ler ve ek aksiyon kütüphaneleri ile geliştirilebilir. dll desteği sayesinde game maker'a birçok özellik eklenebilir. buna verilebilecek en iyi örnek mysql desteğidir.

game maker, içinde resim düzenleyicisi ile birlikte gelir. resim düzenleyicisi profesyonel özelliklerden yoksun olsa da temel işlemler için oldukça yeterlidir. game maker ile grafiklerin yanı sıra seslere de efekt verebilmek mümkündür, ama bu özellik çok sınırlıdır.

yapı 

game maker, betik dili ile oldukça esnek bir geliştirme ortamı sağlamasının yanı sıra, sürükle-bırak yöntemleri ile programlamaya yabancı olanların da kolayca oyunlar geliştirebilmesi için yaratılmış bir programdır.

game maker, daha çok 2 boyutlu oyunlar üzerine yoğunlaşmıştır. ancak diğer benzer programların aksine oldukça esnektir ve çeşitli tiplerde oyunlar geliştirmeye uygundur. bu oyunlara örnek olarak platform oyunları, simülasyonlar, fps, tps ve multiplayer oyunlar da verilebilir. programın kullanımı diğer oyun yapma programlarına göre çok daha kolaydır. program içerisinde örnek oyunlar da mevcuttur.

bir game maker projesi çeşitli bölümlerden oluşur:

 odalar: bir oyunu çalıştırabilmek için en azından bir oda oluşturmak gerekir. oyun ile ilgili her şey odalarda geçer ve her şey odalar sayesinde ekrana yansıtılır. bir oyunun her bölümü farklı bir odada geçebilir. aynı zamanda her arabirim ekranı için de ayrı bir oda kullanılabilir (giriş, ayarlar, bölüm seçimi ekranları, vb.). oda sayısı tercihi kullanıcıya bırakılmıştır .
 nesneler: nesneler oyunun iş yapan parçalarıdır. nesneler oyundaki her türlü varlığı (karakterleri, düşmanları, kurşunları, duvarları vb.) canlandırır. aynı zamanda görünmez nesneler de olabilir. görünmez nesnelerin amacı belirli kodları çalıştırmaktır. örnek olarak, oyunda her 20 saniyede bir düşman çıkmasını sağlayan kod görünmez bir nesne ile çalıştırılabilir. nesneler "olaylara" tepki verirler. bir nesnenin oluşturulmasını, yok olmasını, üzerine tıklanmasını, odanın dışına çıkmasını, başka bir nesne ile çarpışmasını, klavyeden bir tuşa basılmasını ve benzeri birçok olay nesnelere örnek olarak verilebilinir. olaylar aksiyonları çağırır. aksiyonlar bir olay gerçekleştiğinde ne olacağını belirlerler. aksiyon listesine aksiyon kütüphanesinden hazır aksiyonlar konulabileceği gibi gml kodları yardımı ile oluşturulan aksiyonlar da çalıştırılabilir.
 sprite'lar: her türlü grafik ve animasyonları oluştururlar. nesnelere oyun tasarımı sırasında atanabilir ya da dinamik olarak çizdirilebilirler.
 betikler: betikler kodları oluştururlar. nesnelerin içinden çağrılırlar.
 yazı tipleri: oyunda kullanılacak yazılar farklı yazı tiplerinde olabilir. ayrıca, eklenen yazı tipleri kullanıcının bilgisayarında olmasa da çalışır.
 sesler: oyuna eklenen her türlü sesler.
 arkaplanlar: oyunda kullanılacak arka plan resimleridir. bir grafik herhangi bir aksiyon içermiyorsa arka plan olarak eklenmelidir.
 yollar: belirli bir yolu izlemesi istenen nesneler için yollar tanımlanabilinir. örnek olarak, oyunda sürekli belirli bir alanda dolaşan bir karakter için bir yol belirlenebilir.
 zaman çizelgeleri: nesnelere belirli zamanlanmış görevler yaptırmak için kullanılırlar.

sistem gereksinimleri 

game maker 8.x için sistem gereksinimleri

 windows 2000, windows xp, windows vista veya windows 7
 directx 8 veya üstü
 en az 32 mb video hafızası olan directx 8 uyumlu ekran kartı
 pentium veya üstü işlemci
 directx 8 uyumlu ses kartı
 128 mb veya üstü ram
 800x600 veya üstü ekran çözünürlüğü
 16 bit veya 32 bit renk desteği

game maker 7.x için sistem gereksinimleri

 windows 2000, windows xp, windows vista veya windows 7
 directx 8 veya üstü
 en az 32 mb video hafızası olan directx 8 uyumlu ekran kartı
 pentium veya üstü işlemci
 directx 8 uyumlu ses kartı
 128 mb veya üstü ram
 800x600 veya üstü ekran çözünürlüğü
 16 bit veya 32 bit renk desteği

game maker 6.x için sistem gereksinimleri

 microsoft windows 98, windows 2000, windows me, veya windows xp
 directx 8 veya üstü
 en az 16mb video hafızası olan directx 8 uyumlu ekran kartı (32mb veya üstü tavsiye edilir)
 pentium veya üstü işlemci
 directx 8 uyumlu ses kartı
 64mb veya üstü ram
 800x600 veya üstü ekran çözünürlüğü
 16 bit veya 32 bit renk desteği

game maker 5.x için sistem gereksinimleri

 microsoft windows 98, windows nt 4, windows 2000, windows me, veya windows xp
 windows uyumlu ekran kartı
 directx 6 veya üstü
 pentium veya üstü işlemci
 800x600 veya üstü ekran çözünürlüğü
 16 bit veya 32 bit renk desteği

game maker'ın "6.x" ve daha düşük versiyonları ve onlarla oluşturulan ".exe" dosyaları "windows vista ve windows 7" ile uyum probleminden ötürü çalışma problemlerine neden olabilmektedir.

eleştiriler 

game maker genellikle çok karmaşık projelerde performansının düşmesi nedeni ile eleştirilmektedir. ayrıca, kullandığı motor yapısıyla oyunun fps değerini düşürebilir.

kaynakça

dış bağlantılar