當你在吃雞,王者農藥的時候有沒有想過如何才能做出一款這樣讓人神迷的遊戲?
遊戲開發這個方向看起來目標很明確,但其實是個領域很廣的方向,入門的時候如果得不到指點一二,很容易誤入歧途,相反,如果走這條路之前能得到前人的一些指引,是可以事半功倍的。這裡為大家推薦一下,做參考。
遊戲客戶學習路線
#1.首先,一開始可能對遊戲引擎沒什麼概念,建議先入門一兩個遊戲引擎(我推薦可以先去學習Cocos2d-x和Unity3D兩個引擎,市面上大多數遊戲是利用這兩個引擎開發的)。入門階段要做的就是看該引擎的教學(書籍、影片、網路部落格、網路教學、官方說明文件等),並且熟練引擎所使用的程式語言。
推薦課程:C#教學。
因為不同平台下的效能不同,支援的程式語言也不盡相同,所以針對不同平台下的流行的遊戲引擎也是不同的。以下列舉一些現在流行的遊戲引擎。
windows或遊戲主機:【Unreal】、寒霜、CE3
蘋果IOS:【unity3D】、【cocos2d-x】、【Unreal】、sparrow、sprite kit。
安卓:【unity3D】、【cocos2d-x】、【Unreal】、AndEngine、libgdx。
網頁:【Egret】、【cocos2d-js】、Fancy3D、unity3D。
當然不是不同平台的遊戲開發,就毫無共通之處,學了這個到了另一個平台就無用了。不是這樣的,程式設計的世界裡你走得越遠你會發現很多東西的本質都是相似的,例如你如果紮實地理解了C 的基本語法,日後再轉Java語言也不是很難的事情,因為它們本質的物件導向特性還有各種程式語言特性都是相通的。
2. 因為遊戲開發就是一門即時渲染的藝術,所以離不開圖形庫的學習。現在主流的圖形庫是Windows平台專用的DirectX 11和通用平台的Opengl。這兩個圖形庫,至少要入門其中一個。
3.然後,你就可以開始看電腦圖形學的書了。如果你發現你的理論底子不足,這個時候就需要補一下線性代數、基本的微積分、還有3D數學的知識。
4.遊戲引擎中包含了各個部分,上面的渲染只是遊戲引擎的一部分。還有其它諸如著色器編寫、地形編寫、實體引擎編寫、模型和動畫、人工智慧體設計、網頁程式設計等等,完成渲染部分的基本學習後,你可以選擇自己感興趣的部分進行專攻,畢竟我們實際工作大多時候是團隊開發,而不是單打獨鬥,每個人都應該精通自己所擅長的部分。
5.至此,獨自開發一款小型遊戲已經完全不在話下了。也具備了加入公司合力開發大型遊戲的能力。
遊戲服務端學習路線
1.首先需要熟悉服務端語言,例如C/C 、PHP等,會使用一個開發框架。
2.會在伺服器上建置環境,拿lamp來說linux和apache、mysql、php四者擔任的角色要清楚。大多伺服器會選擇搭建在Linux環境下,所以也需要熟悉Linux操作指令。
3.至少熟悉一種資料庫。例如關係型資料庫mysql,能熟練寫出增刪改的語句和不算很複雜的查詢語句,再例如了解各種方式的多表查詢有哪些不同等資料庫技能也是需要的。
4.了解網路程式設計及多執行緒等。例如http通訊協定。跨平台的交互一般http是使用比較廣泛的,需要大體了解,你得清楚請求報文通常包含哪些部分、常見的伺服器回傳碼對應的意思。
5.會使用至少一種資料格式。服務端和客戶端建立了聯繫,資料的傳輸也需要一種協定格式去統一。 json是目前使用率最高的格式了。 json的資料格式還是簡單明了易學的,主要是要了解如何使用它較好的去定義介面。
關於學習路線,我覺得對於學習者,尤其是初學者來說,非常有用,它的作用就是一幅地圖,讓你在浩瀚的知識叢林不至於迷失方向,甚至放棄在99 % 的地方。
以上是開發遊戲要學什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!