【转】3D之神JohnCarmack
John Carmack,
如果你問比爾.蓋茨,“你最欣賞的程式師有哪些?”,在他的回答中,肯定會(huì)出現(xiàn)JohnCarmack(卡馬克)的名字。(PS:論壇爭(zhēng)論很兇的DX和OPENGL的前者---DX API的很多修改都是根據(jù)JC的建議)沒錯(cuò),John Carmack 在程式師中的崇拜程度,甚至到了無以為加的地步,他設(shè)計(jì)出了游戲史上最強(qiáng)大的3D引擎,30 歲時(shí)就步入了美國互動(dòng)藝術(shù)設(shè)計(jì)名人堂。微軟在很多問題都非常尊重他的意見,甚至展示W(wǎng)indows 95 多媒體應(yīng)用的3D演示程式就是使用他設(shè)計(jì)的引擎。
另外他還是個(gè)超級(jí)游戲設(shè)計(jì)師和王牌玩家,沖動(dòng)而富有激情和感染力,正是因?yàn)閷?duì)游戲的熱愛,才進(jìn)化成為程式員,并不斷改進(jìn)自己所從事的產(chǎn)業(yè)。作為年輕一代,John Carmack是典型的美國夢(mèng)樣版,他用自己的熱情點(diǎn)燃了一種新的藝術(shù)形式、一種文化現(xiàn)象,并在商業(yè)上獲得巨大成功。他的經(jīng)歷使自己成為叛逆的偶像,他既是電腦駭客,同時(shí)也名列《財(cái)富》雜志(Fortune)評(píng)選的500佳企業(yè)管理者;他被譽(yù)為游戲界的列儂(Lennon),其實(shí)他自己更樂於被看作金屬樂隊(duì)(Metallica)的成員.ID Software的Co-founder, technical director 和 Lead Programmer,3D FPS游戲鼻主。
90年代初,John Carmack推出了石破天驚的Castle Wolfstein, 然後再接再勵(lì),doom, doomII, Quake...每次都把3-D技術(shù)推到極限。 標(biāo)準(zhǔn)的編程狂人,結(jié)婚前每天14小時(shí)以上的時(shí)間都在碼。ID的圖形引擎幾乎成為顯卡廠商的重要標(biāo)準(zhǔn),遠(yuǎn)的不說,04公布的DOOM3 引擎直到現(xiàn)在還是牛X的一塌糊涂,一直作為顯卡評(píng)測(cè)工具也說明了一些問題。但JC最令人敬仰的不是他的技術(shù),而是他那顆駭客的心。所有游戲公開源代碼,所有領(lǐng)先的圖形引擎I都毫無保留的開源,可以說沒有JC 現(xiàn)在游戲的圖形技術(shù)肯定要滯後很多,只有真正的神才是不怕被別人抄襲他的技術(shù)。
1992年:《狼穴 3D》(Wolf 3D)
1995年:《毀滅戰(zhàn)士》(DOOM)
1996年:《雷神之錘》(Quake)
1997年:《雷神之錘 II》(Quake II)
1999年:《雷神之錘 III—競(jìng)技場(chǎng)》(Quake III Arena)
2004年:《毀滅戰(zhàn)士 III》(DOOM III)
2005年:《雷神之錘 IV》(Quake IV)
PS:JC的業(yè)馀愛好是制作私人火箭
再付JC 為 Michael Abrash的《圖形程式開發(fā)人員指南》寫的序,絕對(duì)的震撼
??
我在學(xué)校讀書的時(shí)候開始在AppleⅡ電腦上編程,幾乎所有早期的工二作都基於Apple平臺(tái)。畢業(yè)之後,我很快發(fā)現(xiàn)80年代後期Apple II工作舉步艱難,於是我不得不迅速轉(zhuǎn)入Intel的PC環(huán)境。過去我在Apple上花—了好些年得到的知識(shí),在PC機(jī)上不需要幾個(gè)月就可以,學(xué)到。作為一名程式師取得收入,最大的好處就是能夠購買所有想要的書和雜志。我買了許多。我處在一個(gè)一無所知的領(lǐng)域,於是我閱讀在我身邊所能找到的所有東西,時(shí)事報(bào)導(dǎo)、社論甚至廣告都有我可以吸取的資訊。
早些時(shí)候,John Romero給了我—些Michael Abrash的文章,這些都是好文章:圖形硬體、代碼優(yōu)化、雄心勃勃的開發(fā)者的知識(shí)和聰明才智,它們讀起來更是輕松愉快。有很長(zhǎng)一段時(shí)間,我到各個(gè)書店去尋找Michael的第一本書《Zen of Assembly Language》,但—直沒有找到,只好將就利用我所能發(fā)掘到的他的文章。從那些文章里,我學(xué)到了EGA視頻控制不為人知的秘密,并且開發(fā)成幾個(gè)精致的技巧,有幾個(gè)成為Commander Keen系列游戲的基礎(chǔ)。正是它們導(dǎo)致了id軟體公司的產(chǎn)生。
—兩年後,就是Wolfenstein—3D開發(fā)出來以後,我第—次“碰到”Michael,當(dāng)時(shí)我正在M&T的BBS上線上漫游,這個(gè)BBS是Dr.Dobb出版商在Internet火爆起來之前構(gòu)建的,這時(shí)我看見了他發(fā)出的郵件。我們交換了email。有好幾個(gè)月,我們?cè)趫D形學(xué)論壇扮演著領(lǐng)袖二人組的角色,直到Doom游戲占據(jù)我的生活。
當(dāng)Doom引起轟動(dòng)以後,Michael一個(gè)新得到工作的朋友讓我們又彼此取得了聯(lián)系,并且我終於有機(jī)會(huì)見到Michael。那天我說得嗓子都啞了,我與Michael和他的合作者中感興趣的人講述著Doom的所有細(xì)節(jié)。從那以後,每隔幾天我就能收到—封發(fā)自Michael的email,或是徵求我某個(gè)觀點(diǎn)的細(xì)節(jié),或是討論將來圖形學(xué)的發(fā)展方向。
最後,我徵求他的意見—給他—份在id軟體公司的:工作:“只要思考;不要向任何人匯報(bào);有機(jī)會(huì)整天從一張白紙開始編程。—個(gè)編程員做他該作的事情的機(jī)會(huì)”。但他未答應(yīng)。但是我一直堅(jiān)持,一年以後,我終於說服他屈駕來id看一看。當(dāng)時(shí)我正在研制Quake。從Doom到Quake是我們邁出的極大的—步。我知道我該在哪里結(jié)束,但我—點(diǎn)也不知道如何到達(dá)那里。我試過很多很多的方法,即使是失敗了也讓我學(xué)到了許多東西。—定是我的熱情感染了他,因?yàn)樗邮芰诉@項(xiàng)工作。
於是開始史詩般的編程。數(shù)十萬行的代碼編出來,重編,再重編……。
此刻回想,我感到Quake的許多方面都有遺憾之處, 但那只是—個(gè)杰出的人不愿輕易地承認(rèn)它技術(shù)上的成功而已。的確, 一年以後, 我可能會(huì)發(fā)現(xiàn)Quake中的某些地方有待改進(jìn)。但現(xiàn)在對(duì)我來說,它看起來依然非常好。我們使它引人入勝。我很高興Michae1在他正在發(fā)行的文章中描述了許多Quake的技術(shù),我希望我們能夠教給別人一些。當(dāng)—個(gè)非編程人員聽說我允許發(fā)行Michael的文章和源代碼時(shí),我總見到一幅目瞪口呆的面孔——“你那樣做想十什麼?”。他們不會(huì)明白的。
編程不是一個(gè)零和一的游戲,教給你的同行一些東西并不會(huì)丟失它們。我與人分享我能做到的一切時(shí)覺得很高興,因?yàn)槲疑钌畹責(zé)釔劬幊獭R惠v法拉利小車不過是一種物質(zhì)享受,但做人最重要的是真誠。
這本書包含了許多最初的文章,正是它們幫助我開始我的編程生涯。對(duì)於後面這些文章內(nèi)容的出版,我希望我所做的努力能為其他人起到同樣的鋪路石的作用。
總結(jié)
以上是生活随笔為你收集整理的【转】3D之神JohnCarmack的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于IOCP完成端口的文章
- 下一篇: 史上最‘牛’杀毒软件之麦咖啡