Programlamada Yeni Eğilimler Dersi 5. Ünite Sorularla Öğrenelim

Oyun Programlama

1. Soru

Oyun bir aktivite olarak düşünüldüğünde, bu aktivitenin sahip olması gereken özellikler neler olmalıdır?

Cevap

Oyun aslında bir aktivite olarak nitelendirilebilir. Oyun, bir faaliyete ilişkin düşünce ve duyguları ortaya çıkaran, eğlence odaklı bir aktivitedir. Bu aktivite içerisinde bir kurallar bütünü bulunması ve temel olarak bir nesne belirtilmiş olması gerekmektedir.


2. Soru

Dijital oyun türleri nelerdir?

Cevap

Kısaca dijital oyun türlerini şu şekilde sıralamak mümkündür:
• Aksiyon oyunları,
• Birinci şahıs nişancı oyunları (First Person Shooter – FPS),
• Macera oyunları,
• Dövüş oyunları,
• Platform oyunları,
• Bilmece oyunları,
• Bulmaca / Zekâ oyunları,
• Rol yapma oyunları,
• Simulasyon oyunları,
• Strateji oyunları,
• Spor oyunları,
• Mantıksal oyunlar,
• Matematik oyunları,
• Eğitsel oyunlar,
• Çevrimiçi oyunlar


3. Soru

Dijital oyun geliştirme aşamaları nelerdir?

Cevap

Dijital oyun geliştirme aşamaları; fikir ve senaryo belirleme, hedef kitle, hikaye, oynanabilirlik, rekabet ortamı ve donanım kaynakları tüketimi olarak ifade edilebilir.


4. Soru

Oynanabilirlik nedir?

Cevap

Oynanabilirlik, bir oyunu rahat ve kolay bir biçimde oynayabilmektir. Oyunun nasıl oynandığını sade ve çok az sayıda görselle anlatmak en ideal olanıdır.


5. Soru

Kullanıcı arayüzü nedir?

Cevap

Kullanıcı Arayüzü (User Interface – UI), aslında arayüz tasarımı olarak bilinir. Örneğin, bir televizyon kumandasının üzerindeki tuşlar bir arayüz tasarımı örneğidir. Tuşların yerleri, büyüklükleri, renkleri tasarımcıların verdiği kararlar sonucu uygulanır.


6. Soru

Kullanıcı deneyimi nedir?

Cevap

Kullanıcı Deneyimi (User Experience – UX) ise nasıl göründüğü ile ilgili değil kullanıcının nasıl hissettiğiyle ilgilenmektedir. Kullanıcı deneyiminin amacı yapılmak istenilen işlemin basit, sorunsuz ve kolay bir şekilde yapılmasını sağlamaktır.


7. Soru

Oyun motoru nedir?

Cevap

Oyun motoru, kişilerin veya şirketlerin oyun yapımında kullandıkları ücretli veya ücretsiz yazılımlara verilen genel bir isimdir. Bu yazılımlar, çok sayıda kütüphane dosyalarını içeren yapılardan oluşmaktadır. Kütüphanelerin içerisinde programlama dilleriyle tanımlanmış fonksiyonlar ve sınıflar gibi çok sayıda yapı bulunmaktadır.


8. Soru

Basit düzey oyun geliştirme süreci nasıl ilerlemektedir?

Cevap

Basit düzey olarak düşünülen süreçte modeller, kaplamalar, ses dosyaları ve oyun motorunun programlama dilinde hazırlanan kodlar bölüm editöründe birleştirilir. Hazırlanan bölümler grafiksel kodlarla desteklenerek oyun tamamlanma aşamasına getirilmektedir.


9. Soru

İleri düzey oyun geliştirme süreci nasıl işlemektedir?

Cevap

İleri düzey oyun geliştirme sürecinde ise detaylanmış modeller, kod kütüphaneleri, bölüm editörü, model editörü, kaplama ve kod editörlerinde düzenlenerek programlanır. Tamamlanmış bölümlere uyarlanacak grafik ve sistem kodları kullanılabilecek hale getirilir. Bu süreç son olarak, ek grafik kodlarının eklenmesi, harici kütüphanelerin oluşturulması ve oyun motoruna eklenmesiyle tamamlanmaktadır.


10. Soru

Oyunlar için oluşturulan modellerde detay seviyesi ne anlama gelmektedir?

Cevap

Oluşturulan modeller, detay seviyesi (“level of detail – LOD”) olarak ifade edilen biçimdedir. Detay seviyesi, kameraya yakın modellerin daha detaylı görünmesi, uzakta olan modellerin detay seviyesinin daha düşük olması mantığına dayanmaktadır. Farklı donanım gücü seviyelerine sahip sistemlerde, uygun görüntünün elde edilmesi için, ekran kartlarının farklılıklarına göre ayar yapmak gerekmektedir.


11. Soru

Oyun tasarımı ve programlama yapısını oluşturan aşamalar nelerdir?

Cevap

Oyun tasarımı ve programlama yapısını kısaca dört kısımda toplamak mümkündür:
• Modelleme (modeling),
• Kaplama (texturing),
• Animasyon (animation),
• Programlama (programming)


12. Soru

Dijital oyun geliştirme sürecinde İyileştirme (Optimization) ne anlama gelmektedir?

Cevap

Bu terim en uygun hale getirme olarak tanımlanabilir. Oyunun daha az bellek ve işlem gücü kullanması için yapılan tüm işlemlere verilen addır.


13. Soru

Dijital oyun tasarımı sürecinde kullanılan Doku Çözünürlüğü (Texture resolution) ne anlama gelmektedir?

Cevap

Bir dokunun piksel cinsinden boyutlarını ifade etmektedir.


14. Soru

Oyunlarda yapay zeka nedir?

Cevap

Yapay Zekâ (AI): Cihazın oyundaki karakter ve sistemleri yönettiği karar alma mekanizmasıdır.


15. Soru

Unity oyun geliştirme motorunun tercih edilme nedenleri nelerdir?

Cevap

C# ve JavaScript gibi yüksek seviyeli programlama dillerini desteklemesi, kolay kullanışlı arayüzü, çabuk öğrenme eğrisiyle Unity, bağımsız yapımcıların ve küçük çaplı şirketlerin ilk tercihi konumuna yerleşmiştir. İki boyut (2D) desteği, yenilenen kullanıcı arayüzüyle her geçen gün popülaritesini arttırmaktadır.


16. Soru

CryEngine oyun motorunun avantaj ve dezavantajları nelerdir?

Cevap

Üç Türk kardeşin kurduğu Crytek adlı firma tarafından geliştirilmiş oyun motorudur. Yüksek grafik kalitesini sağlarken dışarıdan fizik motoru veya kütüphane ihtiyacının duyulmaması CryEngine motorunu popüler yapan özelliklerindendir. Öte yandan dezavantaj olarak, geliştirilen dijital oyunların yüksek kapasiteli donanım gereksinimi olması gösterilebilir. CryEngine 4 ile bu optimizasyon sorunları indirgenmiş olsa da hala piyasada donanım altyapısı açısından yüksek gereksinim isteyen oyun motorlarından biridir.


17. Soru

CopperCube oyun motorunun piyasadaki diğer oyun motorlarından ayrılan özelliği nedir?

Cevap

Ambiera firması tarafından geliştirilen oldukça yeni grafik editörü ve oyun motorudur. Piyasadakilerden farklı olarak hiçbir teknik kodlama ve profesyonel üç boyut bilgisi gerektirmeden üç boyutlu dijital oyunlar oluşturulabilmesini sağlamaktadır. İçerisinde birçok üç boyutlu model, kamera setleri, malzemeler, yapay zekâ davranışları ve daha pek çok yapı bulunmaktadır.


18. Soru

".Net Çatısı" nedir?

Cevap

Microsoft tarafından geliştirilen, açık internet protokolleri ve standartları üzerine kurulmuş bir uygulama geliştirme çatısıdır. Bu yapı, ortak bir yürütme ortamı, ortak bir değişken tür sistemi ve devingen bağlantılı kütüphanelerden oluşmaktadır.


19. Soru

XNA çatısı altında geliştirilen uygulamalar hangi platformlarda çalıştırılabilir?

Cevap

XNA çatısı altında geliştirilen uygulamalar Windows, XBOX, Windows Phone platformlarında çalıştırılabilmektedir.


20. Soru

Günümüzde popüler olan oyun motorları nelerdir?

Cevap

Bu oyun motorlarından bazıları şöyle sıralanabilir:

  • Unity
  • Unreal Engine
  • CryEngine
  • CopperCube
  • Microsoft XNA

Bahar Dönemi Dönem Sonu Sınavı
25 Mayıs 2024 Cumartesi