Citat:
Filip Strugar: Cudi me sta pricas...
Xbox nije prakticno PC nego prakticno (PowerPC) Mac, a normalno da iskustvo steceno na njemu ima mnogo vecu vrednost za gamedev karijeru nego iskustvo steceno na custom-PC-box-u. Pored toga, prvo pitanje na intervjuu za gamedev posao je 'na kojim game konzolama si radio', a ne 'na kojim gambling konzolama si radio', tako da mi nije bas jasno sta si hteo da kazes...
Mislim da si pogrešno razumeo poentu pitanja. Pitanje bi moglo da zvuči ovako:
- Da li si programirao za više platformi u isto vreme?
- Da li si programirao na sistemu sa ograničenom memorijom?
- Da li si ikada rešio problem fragmentacije memorije?
- Da li si ikada tražio bagove u aplikaciji bez debuggera?
itd. Sa pozitivnim odgovorom na pitanje "na kojim konzolama si radio" dobijaš delimičan odgovor na sva ova pitanja. Iako možda taj programer nikada nije bio umešan direkno u rešavanje tih problema, verovatno je imao nekoga u hierarhiji iznad njega ko mu je skrenuo pažnju na greške koje pravi i zna bar delimično o ovim problemima. Radeći na bilo kojoj embeded platformi ti stičeš ovakvo iskustvo, tako da nije baš mnogo bitno da je konzola za igre, hardver za arkadnu ili slot mašinu.
Kada se kaže da XBOX i XBOX360 su praktično PC misli se da je prelazak sa windows-a na XBOX prilično jednostavan. Da bi napravio prvu "hello world" aplikaciju na XBOX-u ako si u životu samo korisio windows, trebaš da znaš da double-click na xbox sdk ikonu, da otvoriš visual studio koji je sastavni deo sdk i napišeš "hello world" u C-u. Kod PS2, PSP, PS3, trebaš prvo da znaš koji ti GCC toolchain treba, koje verzije biblioteka rade jedna sa drugom, kako to sve da instaliraš, uradiš sve to na Linux-u, ili pod Cygwin ili pod Msys, napišeš makefile za hello world app, itd. ;)
Citat:
ventura: Da li si ti video nekad u nekoj projektnoj dokumentaciji da se ona vezuje za neki određeni programski jezik? Ili sam samo ja to propustio?
Pa ako se programski jezik menja od projekta do projekta, onda bi verovatno to trebalo navesti u tehničkoj dokumentaciji.
Ako se gleda kratkoročno i maksimalno pragmatično (lean;), jezik ili hex editor;) koji se koristi je nebitan. Bitno je da ostvari zacrtani cilj i da se to ostvari u najkraćem roku. Ovakav pristup obično vas vezuje za jednu platformu, i dosta koda koji će biti korišćen samo jednom. Takođe izbor jezika zavisi koliko je lako naći programere koji rade u programskom jeziku. Ako to što pravite želite u budućnosti da koristite na drugim platformama, nadograđujete, itd. onda je najbolje ići sa C ili C++, jer kompajleri za te programske jezike postoje bukvalno na svakoj platformi (i hardware i OS).
Najbolji primer lošeg izbora programskog jezika je NaughtyDog (inače veoma uspešna firma) koji je godinama koristio asembler, C/C++ i LISP za programiranje igara. Iako je LISP za njih bio odličan izbor u smislu brzine, fleksibilnosti, itd. pokazao se kao noćna mora kada su tražili programere. Već je po defaultu teško naći iskusne programere igara, i onda se na to još doda LISP, pa umesto da zaposliš programera koji već zna šta radi, prvo moraš da ga uvežbaš da programira u novom programskom jeziku. Još gore je što to novo naučeno znanje nije nikom drugom bitno u industriji igara, jer niko drugi ne koristi LISP.