Oyun programlama
Video oyunu endüstrisi |
---|
dizisinin bir parçası |
Oyun programlama, oyun geliştirme işleminin bir alt konusudur. Profesyonel bir oyun için birçok nitelik ve yazılım bilgisi gerekir. Bunlar Yapay Zeka, veritabanı, fizik, ses programlama, simülasyon, modelleme ve grafiktir. Yeni çıkan bazı ücretsiz oyun motorlarıyla oyun yapmak çok kolay olmuştur.
Oyun Yapım Aşamaları
[değiştir | kaynağı değiştir]Oyun yapılırken sırasıyla şu aşamalardan geçer:
Bu aşamada oynanış fikirleri, senaryo fikirleri bulunur. Hangi özelliklerin olacağına karar verilir. Yapay zeka, grafik düzeyi ve senaryoya karar verilir. Programlama diline ve kullanılacak oyun motoruna karar verilir.
Üretim
[değiştir | kaynağı değiştir]Bu aşamada kaynak kodu yazılır. Yazılım ve Grafikle alakalı şeylerin %95'i bu bölümde halledilir. Artık sadece yazılımcılar değil aynı şekilde oyun grafikerleri de en az yazılımcılar kadar önem kazanmıştır.
Testing
[değiştir | kaynağı değiştir]Bu aşamada oyun test edilir. Buglar ve exploitler gibi şeyler aranır. Bazı şirketler bu aşamada profesyonel testerlar çalıştırır. Bunlar genellikle bir sitede veya dergide oyun editörü olan kişilerdir.
Beta
[değiştir | kaynağı değiştir]Bazı şirketler oyun piyasaya çıkmadan önce daha çok bug raporu ve öneri almak için bedava beta(open beta) sürümü çıkartır. Günümüzde çoğu şirket bunu uygular.
Onarım
[değiştir | kaynağı değiştir]Bu aşamada rapor edilen buglar ve online bir oyunsa hileler ve açıklar düzeltilir ve onarılır. Ve artık yayıncıya gönderilir.
Programlama Dilleri
[değiştir | kaynağı değiştir]Dil | Artıları | Eksileri |
---|---|---|
Assembly | Neredeyse her şey yapılabilir. | Makine diline çok yakın olduğundan öğrenmesi zor,hataya meyilli |
C | Çok biliniyor, çok sayıda kütüphane var. | Nesne yönelimli değil, çöp toplama yok, hafıza kaybına meyilli |
C++ | Çok sayıda kütüphane,çok biliniyor,nesne tabanlı programlama | Çöp toplama yok, hafıza kaybına meyilli |
C# | Çok iyi nesne yönelimli, çabuk uygulama geliştirme şansı ve kolay kullanım | Yüksek hafıza kullanımı, Microsoft platformlarına bağımlı(XBOX,Windows) |
Java | Çok iyi nesne yönelimli, kolay kullanılabilir ve taşınabilir | Yavaş olabilir ve konsol uygulamaları için iyi değil |
Eiffel, Smalltalk Ada vb. | Kütüphane azlığı | |
Python ve Lua gibi betik dilleri | Oynanış betikleri için kullanılır, ama oyunun kendisi için kullanılmaz. |
Oyun programlamada en çok kullanılan dil C++'dır.Ama hedef platforma göre genellikle dil değişir. Örneğin Windows ve XBOX oyunları için C#, eski sistemler için Assembly gibi. Bazı şirketler oyunları için kendi dilini üretir. Örnek olarak Unreal Script ve QuakeC.
Popüler Oyun Motorları
[değiştir | kaynağı değiştir]- Unreal Engine
- Unity
- 3D GameStudio
- CryEngine 3
- Fox Engine
- Frostbite Engine
- OpenSceneGraph
- M.U.G.E.N
- RAGE
- Refractor Engine
- Source Engine
- Truevision3D
- torque 3d
- blender 3d game engine
Dış bağlantılar
[değiştir | kaynağı değiştir]Kaynakça
[değiştir | kaynağı değiştir]İngilizce Vikipedi maddesi Game Programming7 Nisan 2014 tarihinde Wayback Machine sitesinde arşivlendi. maddesinden çeviridir.
Video oyunları ile ilgili bu madde taslak seviyesindedir. Madde içeriğini genişleterek Vikipedi'ye katkı sağlayabilirsiniz. |