Yapılabilir. Ancak tüm oyunu bir kod parçası olarak görmemek lazım. Böyle bir oyun en kaba haliyle şunları gerektirir :
- Grafik kütüphanesi (OpenGL, DirectX) --> C++ tabanlı API kullanırlar.
- Oyun Motoru (Pek çok dilde yazılmış olabilir. C++'da buna dahildir.) [ Bilgi içini:
Oyun motoru - Vikipedi ]
- 3D tasarımlar, doku tasarımları, senaryo...
-----
Peki olay nasıl gerçekleşiyor?
Açıkça söylemek gerekirse, o seviye oyun yapanlar çilgin gibi kodlama bilen adamlar değiller. Oyunu yapmak için oyun motorunu kullanıyorlar. Kodlama gerektiren yerlerde de "Lua" ve benzeri scripting dilleri kullanıyorlar.
"E oyun motoru nasıl yapılıyor?" derseniz, orada çılgın gibi kodlar dönüyor işte. Örneğin görüntünün oluşturulması(rendering) işlemi oyun motorunun "rendering engine" kısmı tarafından gerçekleştiriliyor. Bunu yapabilmesi için de OpenGL ya da DirectX gibi grafik kütüphanelerinin iyi bilinmesi, üzerine kod yazılması gerekiyor. Bunun dışında yerçekimi hesaplamaları, çarpışma hesaplamaları... da oyun motoru içerisine giriyor. Bunu yapan kısma da "physics engine" deniyor.
Yani; evet C++ kullanarak CoD gibi bir oyun yapabilirsin. Ancak önce bir oyun motoru yazman(C++ ile olabilir
) Ardından ekip arkadaşları bulup tasarım, ses.. işlerini halletmen gerek
Yani gerçekten zor ve uzun bir iş olur.
Kolay yolu ne?
1- Eğer hemen oyununu yapmak istiyorsan, bence hiç uğraşma C++ ile falan. CoD benzeri FPS oyun için,
Unreal Engine biçilmiş kaftan. Bir hafta içerisinde(öğrenmesi dahil) güzel bir oyun çıkartabilirsin ortaya. Hatta oyununun ilk kısmını ortaya çıkarmak mutemelen birkaç saatini alacaktır.
Unreal Engine'i kullanmak için UDK(Unreal Geliştirici Kiti)'yı indirmen gerekiyor :
Free Game Engine for Indie Game Development | UDK Unreal Developer’s Kit
2- Unity3D Game Engine'de çok kolay öğrenebileceğin bir oyun motoru. Aynı şekilde FPS oyunları burada da kolaylıkla geliştirilebiliyor.
Unity3D :
Unity - Game Engine
Yukarıdaki iki oyun motorunu da oyunlarında ücretsiz olarak kullanabilirsin. Sıkıntın olursa sormaktan çekinme
-
Ekeleme : Oyun motorları listesi :
List of game engines - Wikipedia, the free encyclopedia