Nije ni poenta u jeziku nego u stvarima za koji se koristi. C ti je prakticno korak dalje od asemblera, sistemaski jezik u primeni kojoj se koristi danas kada ima xy drugih alata.
Neko ko hoce da razvija igrice, C sigurno nije najbolji izbor.
Ali treba ga znati, bar osnove.
Ako uzmemo da su MMO igre te koje zgrcu silan novac, onda mislim da je sasvim ok. Za osnove je dobar, pre no sto se predje na C++ i Python, mozda malo XNA, LUA za skripte i sl. Recimo za MMORPG server DB imas WoW koji definitivno koristi C#, kasnije C++. I Blizzard stalno trazi C++ devse.
Problem koji se otvara sa C# lezi u odredjenim funkcijama koje ne postoje
To moze da se mitigira poznavanjem Dictionary funkcija za Object Inheritance koji se lako nadju u .NET Framework-u (<TKey,TValue>), ali za svaki call mora da se posebno pravi funkcija, sto je u sustini veoma sporo jer nemamo ni
Beneficija dolazi u tome sto bas zato sto je program blizi Hardware-u, tim je bolja optimizacija jer se devsi mogu usmeriti na GPU, recimo, direktno koristeci OGL. Za pravljenje Engine-a koji koristi 3D licno smatram da je to esencijalno, pogotovo ako se polazi od nule.
Mnogi to ne rade vec koriste premade engine od Epic Games, tj. Unreal Engine. UE je napisan u C++.
Ali Frostbite i CryEngine koji su morali da budu optimizovani za Hardware su pisani kako u C++, tako i u C#. Jeste da optimizacija dolazi dosta kasnije, ali neki od engine-a su morali da uzimaju to u obzir, pogotovo u danasnje vreme kada hardware postaje sve jaci i pametniji, a devsi sve manje prave idealan kod.
Ako pogledamo Quake III Arena, videcemo da je u osnovi cist C. Stavise, upravo od Quake III Arena je kasnije nastao i Half-Life, igra koja je probila mnoge granice koristeci GoldSrc (C, Assembler, C++), a kasnije dalje pravljeni Source i sl, sto je dovelo i do DotA 2 igre.
Pre skoro desetak godina jedan od devsa za LoL je napisao sledece
Mislim da je to realna slika za svaku igru koja zeli da bude uspesna, game core u C++, ali tools za modifikovanje svega u C#.
