A játékipar nagyjai: John D. Carmack

John Carmack élete

John D. Carmack nevét azt hiszem, hogy nem kell bemutatni a belső nézetű lövöldözős játékok kedvelőinek. A ma 39 éves, családos embert minden idők egyik legzseniálisabb programozójaként tartják számon, de emellett érdekes hobbijairól és egyéb furcsaságairól is híres. Hölgyeim és uraim - íme John Carmack!

John D. Carmack
John D. Carmack

Carmack 1970. augusztus 20-án, I. István király szentté avatásának 887. évfordulóján született Kansasben. Már fiatal korában is nagy érdeklődést mutatott a számítógépes rendszerek iránt, amit kiválóan példáz, hogy az ifjú Carmack 14 évesen barátaival betört egy iskolába, ahonnan Apple II-es számítógépeket szerettek volna ellopni. Mivel az akció nem sikerült valami jól, Carmackot elkapták a rendőrök, majd őrizetbe vették és pszichiátriai vizsgálatnak vetették alá, melyből kiderült, hogy abszolút nem érez empátiát más emberek iránt. Az ifjú titán egyébként két középiskolát is megjárt (a Shawnee Mission East Középiskolát és a Raytown South Középiskolát), majd a Missouri–Kansas City Egyetemre jelentkezett, ahová az SAT-ban (Scholastic Aptitude Test, magyarul iskolai adottsági teszt) elért eredményeinek - 780 pont matematikából, a maximális pontszám 800 — köszönhetően fel is vették. Az egyetemista élet viszont úgy tűnik, hogy nem igazán jött be a bitek világában sokkal otthonosabban mozgó gólyának, aki két félév után úgy döntött, hogy inkább szabadúszó programozóként tengeti tovább napjait. Mint az a következő oldalon taglaltakból látszani fog, a fiatalember élete egyik legjobb döntését hozta meg akkor.

Katherine Anna Kang Katherine Anna Kang
Katherine Anna Kang

Carmack lassan betölti a negyvenet, még mindig a programozás az élete, ám 2000 januárja óta házas ember, pár éve pedig családapa, fia jelenleg öt éves. Feleségével, Katherine Anna Kanggel a 1997-es QuakeCon játékfesztiválon találkozott, ahol a hölgy megállapodott Johnnal, hogy amennyiben össze tud hozni megfelelő számú versenyzőt, a programozó lehetővé teszi az első női Quake bajnokság megrendezését. Mivel az 1996-ban megjelent lövöldözős játéknak akkoriban még látszólag csekély női rajongótábora volt, ez egy elég lehetetlen vállalkozásnak tűnt, de Katherine valahogy mégis össze tudott szedni hatszáznál is több versenyzőt, minek következtében meg tudták rendezni a versenyt, melynek első helyezettje 2000 USD-vel és egy kétfős kaliforniai úttal lett gazdagabb. Carmack három évvel később feleségül is vette a rakétavetőt jól kezelő Katherine-t, akivel azóta is házasok. A hölgy egyébként a Kaliforniai Egyetemen szerzett diplomát marketing tanulmányokból, de a számítógépes játékok jobban vonzották, hiszen együtt dolgozott Johnnal a Quake második és harmadik részén, segédkezett a Kingpin megalkotásában, majd a mobiljátékokra váltott, jelenleg az id Mobile vezetője.

A Wolfenstein 3D-tól a Doomig

Szabadúszóként Carmack két játékot írt, mindkettőt Nite Owl Publications adta ki — a Shadowforge-ot 1989-ben, a Wraith: The Devil's Demise-t 1990-ben fejezte be. Tehetségét látva 1990-ben felkereste a Softdisk, akiknek a Softdisk G-S-en, azaz egy Apple IIGS számítógéphez írt publikáción dolgozott. Itt ismerkedett meg John Romeroval és Adrian Carmackkel, az id Software későbbi társalapítóival. 1990-ben futószalagon adták ki Carmack újabb és újabb játékait, a kis csapat ugyanis azt a feladatot kapta, hogy a Gamer's Edge program keretében minden hónapban új, az átlagosnál rövidebb játékokat fejlesszenek a szolgáltatás előfizetőinek. Miközben ezeken dolgoztak, a fiatalok összedobták a Commander Keen nevű platformjáték első részét, melyet nem a Softdisk, hanem az Apogee Software adott ki shareware játék formájában. A sikeren felbuzdulva Romero és a két Carmack megalapította az id Software-t, ahol a maguk szájíze szerint fejlesztettek, játékaikat pedig jellemzően továbbra is az eddig említett két vállalat adta ki.

Wolfenstein 3D

A nagy áttörés 1992. május 5-én jött el, mikor shareware formájában napvilágot látott a Wolfenstein 3D, a világ első belső nézetű lövöldözős (FPS) játéka. A játék grafikus motorja a kor szintjéhez képest lenyűgöző volt, nagy részét John írta C és x86 Assembly nyelveken, Tom Hall csak a munka kis részét tudhatta magáénak. Bár a cím alapján három dimenziós játékra gondolhatnánk, a Wolfenstein gyakorlatilag két és fél dimenziós volt, tehát 2D-ben rajzolt ki háromdimenziós hatású környezetet - a jelenséget 2,5D vagy pseudo-3D néven szokták emlegetni. A motor gyakorlatilag egy egy dimenziós mélységi buffert használva határozta meg, hogy mely falak és objektumok legyenek kirajzolva, a technológiát ray-castingnak hívják, mely a ray-tracing egy speciális esete. Bár az engine akkoriban gyönyörűnek számító képi világot adott, megvoltak a hátrányai, emberünkkel fel és lefelé nem tudtunk nézelődni, a pályák pedig egy síkban helyezkedtek el, azaz nem voltak emeletek. Kevesen tudják, de nem a Wolfenstein 3D volt az első ilyen technológiával készült játék, az id Software annak megjelenése előtt a Hovertank 3D-ben és a Catacomb 3D-ben is használta az eljárást, de ezek a játékok csupán 16 színű EGA grafikával rendelkeztek. A Wolfenstein 3D grafikus motorját egyébként további öt játék használta, de mivel a kódot 1995-ben Carmack nyílttá tette, az alapjátékot szinte az összes létező platformra portolták, mostanában iPhone-on játszhatunk vele.

Wolfenstein 3D
Pillanatkép a Wolfenstein 3D-ből

1992-ben a csapat tagjai a Wolfenstein 3D kiegészítő lemezén dolgoztak, John pedig elkezdte fejleszteni új-generációs játékmotorját. A cél a még inkább szemet gyönyörködtető grafika volt, de a programozó mindezt a gépigény alacsonyan tartásával kellett, hogy megteremtse, mivel az akkori PC-k még nem voltak elég erőteljesek ahhoz, hogy valódi 3D-ben számoljanak. A Doom névre hallgató, azóta kultikussá vált játék 1992. december 10-én érte el a közönséget, akiknek bizony tátva maradt a szájuk. A nevét egy Tom Cruise filmből (A pénz színe) kölcsönzött jelenetből vett program Carmack új grafikus motorjára épült, mely bár még mindig ál-3D-s megoldás volt, mérföldekkel körözte le elődjét. A legfontosabb újítás, hogy megjelentek a szintbeli különbségek, textúrázva volt a padló és a plafon, valamint az új motor lehetővé tette, hogy a pályatervezők szakítsanak az elődben lévő labirintusra emlékeztető pályarendszerekkel, a falaknak ugyanis nem kellett merőlegesnek lenniük egymásra. A látványvilágon sokat dobtak a fény- és árnyékeffektek, valamint hogy mozgás közben a játékos karja és az abban lévő fegyver himbálózott, ami némi mozgásérzetet adott a játékosnak. A program kétségkívül legimpozánsabb része mégis az volt, hogy gond nélkül elfutott egy 4 MB RAM-mal rendelkező 386-os számítógépen, amit Carmack a Binary Space Partitioning (bináris térfelosztás) nevű rendszerrel ért el, mely gyorsasága zálogául tartalmazott pár megkötést - a pályákon nem lehettek szobák egymás alatt, továbbá a játékos nem nézhetett szét akármilyen szögben a pályákon, mert akkor nagy torzulás lépett volna fel.

Doom
A Doom első része

Mivel az internetre rengeteg információ szivárgott ki már a játék megjelenése előtt, a rajongók folyamatosan arról kérdezték a fejlesztőket, hogy mikor lesz kapható a játék, akik az azóta már szállóigévé vált mondattal válaszoltak: Amikor kész lesz. A játék végül kész is lett, a siker pedig nem maradt el, 1995-ben egy felmérés szerint több mint 10 millió számítógépre volt feltelepítve a program, mely jelentős problémákat okozott a munkahelyeken is, az alkalmazottak ugyanis nagy dugókat okoztak a helyi hálózaton játszott deathmatchekkel. Mivel 1995 végén a program több számítógépre volt feltelepítve, mint a Windows 95, a Microsoftot egy ideig erősen foglalkoztatta az id Software felvásárlásának gondolata. Ez végül nem történt meg, de megkérték a stúdiót, hogy készítsék el a programot Windows 95 alá is, ezzel mintegy szemléltetve a rendszer képességeit. A Doom95 nevű program egyik érdekessége, hogy az azt bemutató videóba még Bill Gatest is bedigitalizálták. A Doomból azóta készült egy erősen B kategóriás akciófilm is, melyben egy Dr. Carmack nevű professzor is szerepet kapott, akit Robert Russell játszik el.

Élet a Doom után, avagy a Quake sikertörténete

Bár a Doom legnagyobb konkurense, a Duke Nukem 3D 1996-ban megjelent, Carmack ekkor már jó ideje a következő nagy lépésen, a Quake első részén dolgozott, mely június 22-én le is taszította a 3D Realms programját az FPS-ek (azaz akkoriban még "Doom-klónok") képzeletbeli trónjáról. A Quake volt az első program, mely valódi, valós idejű 3D-s megjelenítést alkalmazott. A kód nagy részét ezúttal is Carmack írta, de az Assembly optimalizálásnál és egyes algoritmusoknál nagy segítségére volt Michael Abrash is.

A Quake megjelenésének idejében még nem léteztek a mai értelembe vett 3D gyorsítókártyák, a hangok és a mesterséges intelligencia mellett tehát a grafikus számítások is a központi processzor vállára voltak téve - ugyebár 100 MHz alatti Pentium processzorokról beszélünk. Az engine gyorsaságát az tette lehetővé, hogy a 3D-s pályák — azaz a környezet és a konstans tereptárgyak - előre be lettek rendelve, játék közben tehát nem kellett ezekkel számolni a processzornak. A motor egyébként a Doom engine-hez hasonlóan bináris térfelosztást használt, de a látványvilágon sokat dobott a lightmap és 3D fényforrásokon alapuló fény/árnyék megjelenítés, melyet a Quake megjelenése után a legtöbb program át is vett - korábban szektor bázisú statikus fénymegjelenítést alkalmaztak a programok — a Doom 3 megjelenésekor egyébként Carmack megint egy új eljárást vezetett be, de erről majd később. A Quake technológiai újításairól a jövőben egy külön cikket tervezünk publikálni, a további részletekről tehát ebben a cikkben nem kívánunk értekezni. Annyit viszont még megjegyeznék, hogy a program az idő múlásával OpenGL alapú 3D-gyorsítást is kapott, ami tovább emelte a látványvilágot. Ezt az engine-t egyébként rengeteg játékban használták, erre épül minden idők egyik legnépszerűbb többjátékos taktikai lövöldözős játéka, a Half-Life motort használó Counter-Strike is.

Quake

A folytatás 1997. november 30-án jelent meg. A Quake II az egyjátékos módra volt kihegyezve, épp ezért sosem volt olyan komoly versenyjáték, mint a sorozat első és harmadik része. A Quake II-ben találkozhattunk először színes fényekkel, plusz ebben már alapból támogatva voltak a 3D gyorsítókártyák, de alapjaiban a Quake első részének motorjára épült.

Quake 3

A Quake harmadik része ezzel szemben csak és kizárólag többjátékos módot tartalmazott, a mai napig ez az egyik legnépszerűbb lövöldözős játék. Ezt követte 2004-ben a Doom harmadik része, melynél Carmack rengeteget dolgozott az új motoron, ami azonban az erősödő konkurencia miatt technikai áttörései ellenére sem tűnt akkora durranásnak, mint a Quake első része — ebben az is szerepet játszott, hogy elképesztően nagy gépigénye volt. Carmack talán a Doom 3 motorjának fejlesztése során volt szakmai karrierje csúcsán, a két nagy videókártya-gyártó szinte egymást torkát tépve versenyzett John elismerő szavaiért — "úgy gondolom, hogy a Doom most jobban fut Geforce-on". Persze nem kell féltenünk az öreg Carmackot, hiszen jelenleg a Rage nevű félig autós, félig lövöldözős akciójátékon munkálkodik, ami ugyebár akkor fog a boltok polcaira kerülni, amikor készen lesz.

John Carmack furcsa hobbijai

John Carmack amellet hogy kiváló programozó, három dologról ismeretes: a nyílt forráskodú szoftverekért folytatott harcáról, a Ferrari-gyűjtő szenvedélyéről, valamint az űrrakéta-építő kísérleteiről.

Kezdjük ez utóbbival, hiszen minden bizonnyal ez a legérdekesebb a trióból. Carmacknak saját űrrepülési vállalata van, melynek neve Armadillo Aerospace. A programozó — bár nem fejezte be az egyetemet — a vállalat mérnökeként tevékenykedik, egyelőre úgy tűnik, hogy relatíve sikertelenül. Legutóbb 2004-ben járta be a sajtót az egyik sikertelen rakétaindításuk híre, mikor is egy 35.000 dolláros, körülbelül 5 méter hosszú egységet kívántak az űrbe juttatni. Már a startnál komoly problémáik adódtak, a tüzelőanyagnak ugyanis nem volt elég magas az indítási hőmérséklete, amit az Armadillo Aerospace lelkes csapata további hajtóanyag hozzáadásával kívánt orvosolni, sikertelenül. A rakétát végül ki tudták lőni, az elérte a kívánt magasságot, ahol stabilizálták a röppályáját is, ám sajnálatos módon kifogyott a benzin, minek következtében a közel 10 millió forintos űrrakéta lezuhant, darabjai pedig egy 400 méter sugarú körben szétszóródtak. Szinte csodával határos, hogy a fedélzeti kamera által rögzített anyag megmaradt, amit a vállalat honlapján meg is lehetett tekinteni. A vállalat azóta is építgeti az űrrakétákat, az öt éve kissé balul elsült kísérletért pedig valószínűleg kárpótolta őket az a 350.000 dollár, amit a 2008-as Northrop Grumman Lunar Lander Challenge verseny győzteseként vehettek át.


Az Armadillo Aerospace munkássága

Carmack a Ferrarik iránt érzett szenvedélyéről is híres, ami elég jól mutatja, hogy gyakorlatilag meg sem érezte az olasz sportautók árához képest babajátéknak tűnő rakéta kudarcát. Bár John autóparkjáról nincsenek pontos információink - emberünk ugyanis eléggé elzárkózik a nyilvánosság elől - úgy hírlik, hogy szinte teljes a kollekciója. A kocsikkal kapcsolatos egyik legérdekesebb esemény, hogy 1998-ban az első e-sportolóként számon tartott Dennis "Thresh" Fong ugyanis a Red Annihilation Quake versenyen elnyerte Carmack 328-as Ferrariját (ami úgy 60–70.000 dollárt ért), amin úgy fellelkesült, hogy még évekig versenyzett a Quake első három részében és Starcraftban is – több-kevesebb sikerrel. Miután a fiatalember felhagyott az aktív játékkal, megalapította az xFire nevű céget, melyet 2006-ban 102 millió dollárért adott el - igen, ez 20 milliárd forint.

John D. Carmack

Azonban ez és a rakétaépítés is eltörpül amellett, amit John a szabad szoftverekért folytatott harca során tett. Tegyük hozzá, nem volt nehéz dolga, csupán annyit csinált, hogy pár évvel azok megjelenése után nyílt forráskódúvá tette grafikus motorjait - persze csak akkor, amikor kellően sok fejlesztő liszenszelte tőle, ugyanis mind a Doom, mind a Quake engine-re több száz kiváló játék épül. John ugyanis úgy gondolja, hogy a programozáshoz az eltökéltségen kívül egy számítógép, valamint megfelelő mennyiségű pizza és diétás kóla kell. Az általa készített motorokból minden bizonnyal tehetséges programozók ezrei lestek el fogásokat, mondhatjuk tehát, hogy Carmack gondosan eltervezett mindent arra az időre, amikor ő már a Marson fogja megálmodni a Doom nyolcadik részének forgatókönyvét. Nem kell tehát aggódni, hiszen valószínűleg John D. Carmack nyugdíjba vonulása után is el leszünk látva kiváló 3D-s motorokkal – viszont attól se féljünk, hogy az úriember egyhamar abbahagyja azt, amiben a legjobb.

Bocha

Azóta történt