1、C++游戲程序員現(xiàn)狀
2、MMO游戲開發(fā)對C++游戲程序員要求
3、成長和技術(shù)發(fā)展路線
4、發(fā)展待遇
C++游戲程序員現(xiàn)狀 中國C++程序員100%都是自學(xué)的。因?yàn)橹袊鴰缀鯖]有象樣的C++培訓(xùn)機(jī)構(gòu)。大家都知道社會培訓(xùn)是賺錢為主要目的。能在那里成才是個大運(yùn)氣。也不象JAVA有SUN公司一手推行。中國大學(xué)教育里也根本沒有C++教學(xué)。關(guān)于C/C++基礎(chǔ)課的知識,只是讓學(xué)生入門。但對于實(shí)際的C++軟件工程應(yīng)用,大學(xué)課本知識實(shí)踐意義不大。最重要的是,大學(xué)里沒有合格的C++老師。編程是門技術(shù),叫手藝也行。而大學(xué)是搞科研的,多的是科學(xué)家,靠出PAPER教科憑職稱為生。并不是技術(shù)員。沒有10萬行以上代碼經(jīng)驗(yàn)和成功軟件項(xiàng)目經(jīng)驗(yàn)的人,很難教出中高級C++程序員。游戲制作業(yè)對C++程序員的要求是比較高的。比一般行業(yè)軟件高很多。因?yàn)槿魏我粋€MMO都是個中大型軟件項(xiàng)目。日使用人次達(dá)到幾十萬上百萬,同時使用人數(shù)幾十萬在線的大型網(wǎng)絡(luò)多人交互軟件,集成了超過十幾項(xiàng)專業(yè)領(lǐng)域編程技術(shù)的軟件,想不大都不行。另外,中高級C++程序員能力一般都很強(qiáng)。因?yàn)槎际亲詫W(xué)成才,這需要較高智商,很強(qiáng)的自學(xué)能力,解決問題能力,和克服困難的毅力。但是這種人才在游戲行業(yè)里人數(shù)并不多。拋開鳳毛麟角具備整體大型軟件架構(gòu)能力的高級人才不談。能夠承擔(dān)獨(dú)立模塊開發(fā),具備獨(dú)立解決問題的能力,寫出在空間,性能,可維護(hù)性等幾個方面達(dá)到要求的C++程序員,也是很難找到的。而具備這些能力,同時又具備一些專業(yè)領(lǐng)域技術(shù)的人(圖形引擎,網(wǎng)絡(luò)引擎,等),更加稀少。所以,即便是大游戲公司,對于C++游戲程序員的需求,也是永遠(yuǎn)不能夠得到滿足。而已經(jīng)在公司工作的C++程序員,不經(jīng)過短則3個月,長達(dá)1年的鍛煉,也無法真正勝任獨(dú)當(dāng)一面的C++游戲程序開發(fā)工作。
MMO游戲開發(fā)對C++游戲程序員要求 前面提到,所有MMO游戲都是中大型軟件。軟件占用空間,穩(wěn)定性,性能,可維護(hù)性等各項(xiàng)衡量軟件質(zhì)量的指標(biāo),對MMO游戲軟件的要求都非常嚴(yán)格。遠(yuǎn)大于普通行業(yè)軟件。這種規(guī)模和銀行系統(tǒng)類似。而客戶端和軟件邏輯比一般的商業(yè)軟件又要復(fù)雜很多倍。這就要求軟件編寫人員具備較高的程序編寫素質(zhì)。游戲軟件中,解決好軟件工程部分,只是項(xiàng)目的1/3。另外兩部分是策劃和美術(shù)/音頻。從經(jīng)驗(yàn)來看,需求變更對于MMO游戲軟件,不是偶然事件,而是一種MMO游戲軟件開發(fā)的基本屬性。游戲軟件投入大,周期長,風(fēng)險高。MMO市場變化也大,交互電子游戲發(fā)展迅速。游戲軟件必須面對外界變動。又因?yàn)殚_發(fā)周期長,所以軟件需求變動成為了軟件開發(fā)的一種基本屬性。猶如復(fù)雜性是軟件工程的一項(xiàng)基本屬性一樣。這導(dǎo)致游戲軟件的開發(fā)充滿了不確定性。交互娛樂不同于商業(yè)應(yīng)用。娛樂是屬于理性和感性之間的領(lǐng)域。而C++開發(fā)面對就是0和1的二元世界邏輯。這兩個領(lǐng)域存在著不可調(diào)和的矛盾。這種情況,對C++游戲程序員提出了更高的要求。首先,基本C++知識,C/C++運(yùn)用技能,必須極其扎實(shí)。并不是游戲軟件開發(fā)用到什么平時書本上很難得到的知識點(diǎn)或者技能點(diǎn)。游戲C++開發(fā)的知識體系和技能體系,利用現(xiàn)有C++書籍就可以滿足。比如《C++ PAORGRAMMING LANGUAGE》《C++ PRIMER》《EFFECT C++》《MORE EFFECT C++》等。但是在開始游戲編程之前,把這些書本吃透并且實(shí)踐熟練的人,非常難遇到。當(dāng)然能夠真做到這點(diǎn)的人,已經(jīng)是個中高級C++程序員了。我曾經(jīng)遇到過一個,畢業(yè)工作不久就去了GOOGLE其次,對于面向?qū)ο蟮纳钊肜斫狻J欠浅V匾摹J炀氄莆誄/C++語法,編程技巧,只是滿足了C++游戲程序員一部分要求。而面向?qū)ο笥^念的深刻理解,會為大型C++項(xiàng)目開發(fā)帶來翻天覆地的變化。 有時候,在一個10人以上并行開發(fā)的C++游戲項(xiàng)目中,面向?qū)ο蠓椒〞蔀榫让静荨!对O(shè)計模式》以及《設(shè)計模式解析》相關(guān)的書籍,也是必修課。最后,好技術(shù)人員的本質(zhì)是自大的。這屬于正常。但是如果這種習(xí)性影響了自身繼續(xù)提高和團(tuán)隊(duì)合作。以及影響了其成為技術(shù)管理者和項(xiàng)目技術(shù)核心時,那么這種技術(shù)人員的自身價值會大打折扣。 如果早日越過自命不凡這一關(guān),擴(kuò)大眼界,繼續(xù)在綜合素質(zhì)上提高。在技術(shù)管理能力,架構(gòu)能力上提高,其自身價值才會繼續(xù)增長。落到實(shí)處,就是待遇和身家增長。由于游戲開發(fā)的本質(zhì)是團(tuán)隊(duì)開發(fā)。任何時候,只有對一個團(tuán)隊(duì)有價值的技術(shù)人員,其本身的價值才有可能得以體現(xiàn)。
成長和技術(shù)發(fā)展路線 一般技術(shù)人員發(fā)展有幾個階段1 、具備獨(dú)立開發(fā)局部功能的能力 比如為某個UI編寫邏輯接口函數(shù)。為某個LOGIN對話框編寫自繪制控件等。2 、具備獨(dú)立開發(fā)和攻關(guān)某個功能模塊的能力 比如為游戲增加一個小型邏輯功能模塊。3 、具備獨(dú)立設(shè)計并開發(fā)某個系統(tǒng)的能力 比如設(shè)計和開發(fā)AUTOPATCH 系統(tǒng) 4 、具備解決技術(shù)難題,設(shè)計架構(gòu)的能力 比如開發(fā)網(wǎng)絡(luò)同仿真系統(tǒng),開發(fā)一個中大型游戲制作工具5 、具備整體架構(gòu),管理,協(xié)調(diào)其他人共同開發(fā)一個大系統(tǒng)的能力 客戶端主程,服務(wù)器主程,引擎主程等6 、技術(shù)director制定技術(shù)發(fā)展方向,技術(shù)團(tuán)隊(duì)建立,技術(shù)管理等 在邁向每個階段的過程中,伴隨的都是巨大的工作量和工程壓力。有時候是跨越1年的失敗等等。在公司項(xiàng)目不成功時轉(zhuǎn)換單位,重新開始,或者繼續(xù)做為核心團(tuán)隊(duì)留在公司繼續(xù)從新的機(jī)會做起,都是好的辦法。但關(guān)鍵是吸取經(jīng)驗(yàn)教訓(xùn),盡量多學(xué)多練。并且結(jié)合自身長處發(fā)展。當(dāng)然,游戲制作人員,最好還是依靠一個核心團(tuán)隊(duì)。成為核心團(tuán)隊(duì)的一員。
能夠達(dá)到第三檔的程序,已經(jīng)是公司不可缺少的人才了。但往往程序員自身對自己的認(rèn)識,和公司對其的認(rèn)識,有時候會有差異。我碰到過一些人,腦子好用,寫東西很快。各種技術(shù)都有涉獵。但總是不放心讓他獨(dú)立開發(fā)設(shè)計某個系統(tǒng)。哪怕是相對獨(dú)立的工具。也會被搞得一塌糊涂。要后面人不停擦屁股。可自己還覺著自己水平很高。這種人浮躁,眼高手低,不愿意細(xì)致周全的做好一件完整的事。所以就可以看到他不停的跳來跳去,可在新公司的職位也沒有見多么提高。公司非常重視交給一個程序員一件事,他是否能完整,考慮周全的把事情做完。哪怕時間長一點(diǎn),也不能不做完。這會給工程帶來致命的后果。
發(fā)展待遇 前面提到的6檔,粗略了劃分了待遇水平。其實(shí)到了第三檔,你的待遇已經(jīng)是這個行業(yè)所決定的了。而不是某個公司決定的。因?yàn)橛螒驑I(yè)大量缺乏這樣的C++程序員。如果具備這個水平,在幾個大城市游戲公司找到工作并不難。大公司提升慢,還有我這種不到百人規(guī)模的公司要。所以行業(yè)價格才是公司要考慮的。如果給少了,軟件項(xiàng)目的C++程序員流失會帶來較大影響。但給的多,其實(shí)是 C++程序員自己的價值增長瓶頸。如果幾年下來一直以為自己水平就該拿這么高,結(jié)果到了一家整體技術(shù)水平比較高的企業(yè),就會徹底傻眼。這個時候再放低心態(tài)去重新開始,對技術(shù)員來講就是件很艱難的事了。在目前游戲行業(yè)技術(shù)水平普遍較低的情況下,哄抬程序員工資水平對程序員自身好處也不會很大。就算一個新手本來拿幾千的水平,給他1萬。他根本就不會知道自己到底有多少水。一年下來也就多拿了3-4萬人民幣。可耽誤的是學(xué)習(xí),影響了心態(tài)。而那些心態(tài)好,知道努力方向的技術(shù)人員,干個3-5年后如果有拿期權(quán)和股權(quán)的機(jī)會,比那些一開始虛高的人,身家就不知道高多少倍了。