做遊戲開發要學什麼?
近幾年來遊戲行業發生了翻天覆地的變化,以至於很多人現在都想加入這個行業,這個行業給大家的感覺,首先是高工資,做開發遊戲的技術應該很高的,這種都給遊戲開發者蒙上一層很厲害的象徵。有的人為了換個環境,有的人是真心喜歡遊戲這個行業,有的人是為了多金,但不管哪個方面,遊戲行業對他們來說充滿了色彩。充滿了希望。而我就是這眾多當中的一個,今天就說說的我的遊戲開發之路。
我是一名剛畢業的計算機的大學生,在學校的時候特別喜歡打遊戲,每到週末都會和室友去網咖包夜,那個時候是最開心的時候,就這樣混過了四年,畢業那會,我就想著找個遊戲方面的工作,我開始大量的投這方面的簡歷。每次去面試時候,都是很激動地就怕自己說的不好,當面試官問我瞭解遊戲多少,我會說我能玩轉游戲,說的那是頭頭世道。可是面試官只說了句你回去等訊息吧,就這樣杳無音訊,我自己都不知道問題出現哪裡了。最後我上網查了,原來玩轉游戲是指遊戲開發,而不是玩遊戲,可見我當時鬧了多大的笑話。最後我選擇一家遊戲培訓機構。
去了才真正瞭解到什麼遊戲開發,中小型遊戲大致可分為網頁遊戲,flash遊戲,小遊戲等,基本上都是一些休閒類的傻呆萌的情節和操作,這類遊戲開發相對比較簡單,會Javascript、HTML、flashcs、Java就可以進行開發了,語言類主要有C/C++,組合語言,著色器語言,指令碼語言,高效的開發語言C#或Java。所以,任何一個大型遊戲都不可能只用一種語言去開發。在這裡呢,我們強調的是主要語言。比較主流的遊戲開發引擎是Unity3d。比如現在依舊比較火熱的王者榮耀、神廟逃亡、穿越火線、等都是基於Unity3d(www.ahyxedu.com)開發的遊戲。對於遊戲開發人員來說,在開發遊戲時候選擇一個好的遊戲伺服器也是很重要的。遊戲伺服器開發使用的技術取決於遊戲的型別,不同的遊戲型別,需要的遊戲環境不一樣,所使用的技術也不一樣。但是在本質上都是一樣的,都是面對資料,處理資料。
現在遊戲分為三種:
PC類端遊
這類遊戲線上人說較多,遊戲中要處理的資料也非常龐大。所以對伺服器效能要求非常高,一般都是採用C++做為開發語言,C++可以直接操作記憶體資料,與作業系統直接互動,減少資料之間的複製,它執行效率高,處理速度快,是很適合這裡遊戲開發語言。如果你想學習開發這樣大的遊戲需要學習的大致有C++程式設計,Linux網路程式設計、TCP/IP通訊協議、多執行緒程式設計再加資料庫。PC類端遊戲開發週期有點長。大概需要三年左右的時間。
網頁遊戲
這類遊戲相對於端游來說,開發週期短,因為是網頁遊戲,遊戲的介面展示依賴於網路傳輸,所在在畫面和特效上會次於客戶端遊戲很多。遊戲的特點主要集中在遊戲的玩法上。但是對於伺服器端來說,和端遊類是差不多是一樣的,有些公司之前是做端遊的,他們就直接把端遊的伺服器架構拿來就可以使用,以完成快速開發。
手機遊戲
手機類遊戲目前是最熱門的遊戲,很多熱播的電視劇或者電影之後,都會有相同情節的手游上線,我在安徽怡雲學就是手機遊戲開發,它開發很快,變化多樣,但是玩法很單一,是現在很多移動客戶休閒時候的一種樂趣,當前伺服器主流的開發語言是C++和Java,但是C++學習難度大,開發速度慢。為了滿足遊戲伺服器快速開發,快速上線,所以一般來說我們都是使用Java語言來開發伺服器。
如果你想從事遊戲開發不僅要學會這些相應的語言和開發引擎,也要有一定的相關情商能力才能長期在這個行業走下去.
第一,從事遊戲開發的人一定有情懷。有情懷沒什麼了不起,誰都可以有一腔熱情,但你的能力必須支撐你的情懷,做出足夠好的東西。有的時候你發現,市面上沒有出現你希望的東西,不是因為行業沒有情懷,而是有情懷的人沒有這個能力,有能力的人沒有這個情懷。只有同時具備這兩點,你才能既做出真正的獨立遊戲,也能把這件事情做好。
第二,大家可以開放一點,多看一些商業的東西,多去了解使用者,看看小學生、大眾使用者在玩什麼遊戲,為什麼玩得進去這些遊戲,而不是你覺得很好的遊戲?你甚至要從你可能唾棄的東西學習,因為說不定它們都能為你提供養料。
第三,沒有任何人能保證你做的遊戲會成功,所以大家要做長久的規劃,善待團隊,善待自己。我不認可砸鍋賣鐵,和團隊在一起就什麼都不考慮。要可持續發展,做遊戲是一輩子的事情,不要急於一時。
當這幾點都具備的時候,我們就可以從事這方面的工作,所有的工作不是外表看起來那麼好,每一件事情都會有困難點,我們要冷靜下來,好好面對對尋找方案,這樣的我們才會有進步。當初如果我不冷靜下來,還是一頭鬧熱在找工作,也許現在我是找到了,但不是自己想要的,無論何時我們要冷靜下來為自己想想,冷靜的頭腦才會給你一個正確的方向,方向正確了加上努力你就會成功。