Breakout
Bu bölümlerde OpenGL'in iç işleyişi ve çarpıcı grafikler oluşturmak için bunları nasıl kullanabileceğimiz hakkında epey şey öğrendik. Pek çok teknik demo dışında, OpenGL ile gerçek anlamda pratik bir uygulama henüz oluşturmadık. Şimdi OpenGL kullanarak görece basit bir 2D oyunu oluşturmayı anlatan daha geniş bir serinin giriş bölümüne geçiyoruz. Sonraki bölümler, OpenGL'i daha büyük ve karmaşık bir ortamda nasıl kullanabileceğimizi gösterecek. Bu seri yeni OpenGL kavramları sunmaktan çok, öğrendiğimiz kavramları daha büyük bir bütüne nasıl uygulayabileceğimizi göstermeye odaklanıyor.
İşleri basit tutabilmek için 2D oyununuzu zaten var olan bir 2D arcade oyununu temel alarak oluşturacağız. Breakout — 1976'da Atari 2600 konsolunda yayımlanan klasik bir 2D oyun. Breakout'ta oyuncu, küçük bir yatay padlet'i kontrol ederek topu her tuğlaya sektirir ve topu ekranın alt kenarına ulaştırmadan tüm tuğlaları yıkmayı amaçlar. Oyuncu tüm tuğlaları yıktığında oyunu tamamlar.
Aşağıda Atari 2600'deki orijinal Breakout görünümünü görebilirsiniz:

Oyunun mekanikleri şunlardır:
Oyuncu tarafından kontrol edilen küçük bir paddle yalnızca yatay olarak ekran sınırları içinde hareket edebilir.
Top ekranda hareket eder ve her çarpışmada nereye çarptığına bağlı olarak yönünü değiştirir; bu ekran sınırları, tuğlalar ve paddle için geçerlidir.
Top ekranın alt kenarına ulaşırsa oyuncu ya oyunu bitirir ya da bir can kaybeder.
Bir tuğla top ile temas ettiği an yıkılır.
Oyuncu tüm tuğlaları yıkınca kazanır.
Topun yönü, topun paddle'ın merkezinden ne kadar uzakta sektiğiyle değiştirilebilir.
Zaman zaman top, tuğla duvarının üstüne ulaşan küçük bir boşluk bulabilir; bu durumda seviyenin üst kenarı ile tuğla katmanının üst kenarı arasında ileri geri sekmaya devam eder. Top sonunda tekrar bir boşluk bulana kadar bunu sürdürür. Oyun adını buradan alır; çünkü topun kırıp çıkması (break out) gerekir.
OpenGL Breakout
Bu klasik arcade oyununu, OpenGL ile tamamen uygulayacağımız bir 2D oyunun temeli olarak kullanacağız. Bu Breakout sürümü grafiklerini GPU üzerinde render edecek; bu da klasik Breakout oyununu bazı güzel ekstra özelliklerle geliştirmemize olanak tanıyacak.
Klasik mekaniklerin yanı sıra Breakout sürümümüz şunları içerecek:
Harika grafikler!
Partiküller
Metin render etme
Power-up'lar
Post-processing efektleri
Birden fazla (özelleştirilebilir) seviye
Bölümleri tamamladıktan sonra oyunun nasıl görüneceğine dair bir ön izleme:

Bu bölümler önceki bölümlerdeki pek çok kavramı bir araya getirecek ve bunların bir bütün olarak nasıl çalışabileceğini gösterecek. Bu nedenle bu seriyi takip etmeden önce en azından Getting started bölümlerini tamamlamış olmak önemlidir.
Ayrıca birkaç bölüm diğer bölümlerdeki kavramları gerektirecek (örneğin Advanced OpenGL bölümünden Framebuffer'lar); dolayısıyla gerekli yerlerde hangi bölümlerin tamamlanması gerektiği belirtilmiştir.
Ellerinizi kirletmeye hazırsanız bir sonraki bölüme geçin.
Last updated