遊戲程式設計師的工作是怎樣的?

zhihu發表於2016-03-03

  問題:

  1.現在編那些動輒幾十個G的遊戲和以前編DOS遊戲的方法是一樣的嗎?是原理不同還是原理相同只是工作量變大?

  2.從事這行在現在的高等教育中最對口的專業是哪些?(比如遊戲程式設計師對應的是哪個專業;遊戲美工對應的是哪個專業;遊戲音樂對應的是哪個專業;等等)

  3.在編寫遊戲的過程中有沒有一些值得一說的故事?

  4.做這行,收入高嗎?大約是多少?

  5.從事這個行業未來的上升空間大嗎?如果做到管理層級別,負責的內容和一執行緒序員有什麼不同?

  1.現在編那些動輒幾十個G的遊戲和以前編DOS遊戲的方法是一樣的嗎?是原理不同還是原理相同只是工作量變大?

  沒有寫過DOS遊戲;

  現在遊戲大主要是因為美術資源量大:模型複雜,貼圖精度高,動作豐富,特效絢麗等。程式碼量再多也不會導致遊戲包大到哪裡去;

  現在遊戲和以前的遊戲有一些不同,現在遊戲基本上都基於一款引擎來製作(例如OGRE,寒霜,CRY,虛幻,U3D等引擎),也就是說已經有一些常用、公用的東西(渲染,物理,動作等)被從遊戲邏輯裡抽離出來了。

  這樣遊戲寫起來反而更容易一些,生產力一直都在提高嘛。想了解引擎的話,推薦看一看《遊戲引擎架構》@Milo Yip

  2.從事這行在現在的高等教育中最對口的專業是哪些?

  程式猿當然是計算機最好了,另外通訊,自動化也可以,也有很多學生物化學的同學憑藉毅力轉到這條路上來,當然那更辛苦了。

  最重要的相關知識有:用到的計算機語言,演算法與資料結構,設計模式,圖形學等…當然要增強內力的話要學的更多更深。

  具體工作:

  個人先按自己的經驗分一下游戲前端的工種(同行請輕拍):引擎程式,遊戲底層程式,戰鬥程式,上層邏輯程式;

  引擎程式:主要有3大主要業務:渲染,物理,動畫。幾個分支業務:音效,地形等……例如渲染來說,從畫素開始,向量,矩陣,匯入模型,攝像機各種矩陣計算(旋轉,位移,縮放),各種模型填充方式,材質,光照模型等等。——這一部分的工作大部分都被商業引擎做完了,少數大廠會養一些大牛來維護自研引擎。

  遊戲底層程式:具體業務具體辦——例如實現前端資料的儲存,需要研究xml,binary,excel表等東西怎麼讀,怎麼寫(核心3~5千行),讀寫工具最好自動生成(程式碼生成程式碼);例如實現與伺服器通訊的邏輯,需要知道TCP/IP,協議最好自動化生成(程式碼生成程式碼),怎麼加密解密等(核心3~5千行);例如實現資源打包,需要思考怎麼壓縮資源,怎麼解壓資源,怎麼從伺服器下載資源,存放在哪裡等(核心3千行)。——一般是主程做這些工作。

  戰鬥程式:和策劃討論好需求後,寫角色的身體控制,特效控制,動作控制,封裝出技能,然後實現AI;然後從角色派生出主角,NPC,怪物,寵物以及各種小物件等東西,然後寫一下攝像機的鏡頭控制(共3~8萬行)。當然,最好寫一些編輯器讓策劃去使用,或者指定好表格結構告訴策劃怎麼配置,以達到他們的需求。——一般是核心元老程式做這些工作。

  上層邏輯程式:與策劃討論需求,確定需求後消化之,然後確定表格結構,確定資料儲存結構,確定網路協議,用已經寫好的工具生成一些基礎程式碼,然後就是編碼實現各種邏輯(普通功能3千行),再把相關的UI的按鍵,效果寫完(普通功能2千行)。例如實現一個鐵匠鋪,定好哪些是材料(鐵錠),哪些是產品(鐵錘),然後按什麼邏輯從材料到產品,向伺服器要哪些資料並告訴它存哪些東西,最後把UI的按鈕以及效果寫完。——介面可能改動量非常大,仔細認真,任勞任怨的工作態度尤為重要。

  3.在編寫遊戲的過程中有沒有一些值得一說的故事?

  這要看你想問哪方面了,業內各種奇葩八卦很多,開發階段,運營階段都有。

  想起一件事情來,當年班禪活佛來公司視察,一個負責專案開發的小夥子負責講解。活佛挺有興趣的,還拍了拍小夥子的腦袋,算是灌頂祝福。晚上這位同學上吐下瀉,大病一場,我們都說活佛灌頂果然有效,他體內積攢的毒素甚多,這下算是全排出去了。

  4.做這行,收入高嗎?大約是多少?

  不等,年收入5萬-50萬都不算罕見。當然這肯定不是平均分佈的,還可以的專案裡面年收入主要在10-30萬之間。

  5.從事這個行業未來的上升空間大嗎?如果做到管理層級別,負責的內容和一執行緒序員有什麼不同?

  各行各業上升機率和空間都差不多,因為主管管理的人員基本都是5-10人之間,所以基本就是10-20%的機率升遷,最高能升遷到什麼層次看公司規模。是否升遷技術能力佔一部分因素,和人溝通的能力(尤其是跨部門)也佔很重要的因素,另外就是資源的協調能力,這點遊戲行業和其他行業並無不同。至於負責的內容,當然看你升遷到什麼級別。 

相關文章