XNA Game Studio 3.0
Bu makalede Microsoft XNA Game Studio ile oyun geliştirme üzerinde duracağım. XNA tamamen ücretsiz olup Visual Studio üzerinden 2 ve 3 boyutlu oyunlar geliştirmenizi sağlayan bir framework’tür. Daha önceden sadece amatör oyun geliştiricilerin kullandığı XNA artık Microsoft XNA Game Studio 3 ile profesyonellere de hitap ediyor. Geliştirdiğiniz oyunları ister Windows ister XBOX 360 platformu için tasarlayabilirsiniz. Oyunlarınızı Visual Studio’da C# dilini kullanarak kodlamanız gerekmektedir. Bu sebeple iyi bir C# bilgisine ihtiyacınız olacak. Aynı zamanda nesnelerin hareketlerini ve pozisyonlarını hesaplamak için de biraz matematik bilgisine ihtiyacınız olacak.
Kurulumu tamamladıktan sonra VS’de
new project dediğinizde aşağıdaki gibi
XNA Game Studio 3.0 templatelerini göreceksiniz.

Eğer oyununuzu Windows ortamında çalıştırmak istiyorsanız Windows Game(3.0) seçip yeni bir proje başlatın.
Projeyi başlattığınızda Game1 adında bir class oluşturulacaktır. Game1 class’ında bazı hazır methodların oluşturulduğunuda göreceksiniz.
LoadContent: Bu methodda oyununuz başlarker yüklemeniz gereken nesneleri ve çizimleri tanımlarsınız ve Content.Load methodu ile yüklersiniz
Update:Bu method iste XNA Framework tarafından sürekli tetiklenir. Ve sizin bu methodda oyununuza eklediğiniz nesnelerin pozisyonlarını ve özelliklerini belirli hesaplar yaparak değiştirmeniz gerekir.
Draw: Bu methodda iste koordinatlarını ve özelliklerini update yordamında değiştirdiğiniz nesnelerin ekran üzerine çizimini yaparsınız. Bu method da aynı şekilde sürekli tetiklenerek ekranda çizim yapar.
Kullanacağımız en temel yordamlar bunlar. Bununla beraber XNA Framework içerisinde kullanacağımız belli başlı classlar ise;
Texture2D: 2 boyutlu nesneleri temsil eder.Örneğin oyunun arkaplan’ı yada oyundaki diğer nesneler.
Vector2: Ekran üzerindeki X ve Y koordinatlarını belirlediğiniz bir doğruyu temsil eder. Genellikler nesne hareketlerini kontrol etmek için kullanılır.
KeyboardState: Keyboard.GetState() methodu ile aldığınız oyuncunun bastığı tuşları tutar. Bu değişkeni kontrol ederek oyundaki nesnelerinize yön verebilirsiniz.
SpriteBatch: Draw() ve DrawString() methodları ile ekran üzerine metin ve nesnelerinizi çizdirmek için kullanılır.
Aşağıdaki örnek uygulamada kendi yazdığım basit oyunu inceleyebilirsiniz.
Oyunun Kaynak Kodu...
Oyunu çalıştırabilmeniz için yukarıdaki setup'ları kurmanız gerekir.