眾所周知,游戲開發(fā)是一個(gè)大的專業(yè)領(lǐng)域,細(xì)分還有很多技術(shù)方向,不同技術(shù)方向在學(xué)習(xí)時(shí)間、學(xué)習(xí)難易度以及崗位薪資都是有區(qū)別的。一些計(jì)劃學(xué)習(xí)游戲開發(fā)的小伙伴在正式定專業(yè)之前都會(huì)在網(wǎng)上咨詢學(xué)習(xí)游戲開發(fā)技術(shù)方向問題。對(duì)于一個(gè)入門新手的來說,課程方向選擇方面如果沒有人指點(diǎn),很容易誤入歧途,相反,如果走這條路之前能得到前人的一些指引,是可以事半功倍的。下面就給大家介紹一下做游戲開發(fā)所需要學(xué)習(xí)的技術(shù)。
做游戲開發(fā)需要學(xué)哪些技術(shù)?
游戲基礎(chǔ)知識(shí)方面:
目前大部分游戲都是基于商業(yè)游戲引擎開發(fā)的,即Unity3d、Unreal、CryEngine之內(nèi),當(dāng)然此外還有cocos和白鷺等等,以及部分游戲公司有自己的引擎,暫且不談。
目前放眼游戲市場(chǎng),Unity引擎和Unreal的使用數(shù)量幾乎平分秋色。所以接下來說的也是針對(duì)這兩個(gè)引擎。注意,游戲引擎本身的使用(包括編輯器操作和開發(fā)方式)。
一、游戲客戶端學(xué)習(xí)內(nèi)容
游戲客戶端程序,就是在游戲引擎上實(shí)現(xiàn)游戲業(yè)務(wù)邏輯的工作。
其中,Unreal引擎的開發(fā)語言是(Unreal瘋狂魔改版)的C++,和Unreal自己發(fā)明的Blueprint。在中大型項(xiàng)目中,基本上都是這兩種語言混合完成游戲開發(fā)的。
Unity3d的官方開發(fā)語言是C#,在很多有熱更新或是其他需求的游戲中,會(huì)用到第三方實(shí)現(xiàn)的Lua語言環(huán)境。游戲客戶端方向需要學(xué)習(xí)的內(nèi)容是:
1、游戲引擎開發(fā)與操作(Unity3d、ue4、Unreal等);
2、游戲引擎所用的開發(fā)語言的學(xué)習(xí)(c語言、c++、c#、java等);
3、計(jì)算機(jī)圖形學(xué)。
二、TA學(xué)習(xí)內(nèi)容
TA是技術(shù)美術(shù)。游戲中,主角隱形之后的半透明效果,主角大招時(shí)候的技能效果,或者“我想要這個(gè)房子不受周圍環(huán)境光的影響”、“我要這個(gè)logo大一點(diǎn)再小一點(diǎn)”“我想要五彩斑斕的黑”之類的,簡(jiǎn)單的說,技術(shù)美術(shù)的工作就是編寫針對(duì)GPU的程序,告訴GPU以何種方式渲染出游戲需要的效果。
需要學(xué)習(xí)的內(nèi)容:
1、Shader(著色器)開發(fā);
2、 OpenGL;
3、次世代美術(shù)基礎(chǔ),
三、服務(wù)端程序?qū)W習(xí)內(nèi)容
服務(wù)器端工程師主要負(fù)責(zé)能夠聯(lián)網(wǎng)的游戲的后端邏輯,需要學(xué)習(xí)并掌握網(wǎng)絡(luò)編程、數(shù)據(jù)庫、常規(guī)運(yùn)維等知識(shí)。在需要聯(lián)網(wǎng)交互的游戲中,肯定就會(huì)有服務(wù)端程序的事。相較于客戶端而言,服務(wù)端的技術(shù)棧就顯得“五花八門”了,有Java的,有Cpp的,有Golang的,有C#的,(甚至還有PHP的。 根據(jù)游戲的類型,服務(wù)器技術(shù)要求也不太一樣,有的用http處理類似常規(guī)服務(wù)端的業(yè)務(wù)邏輯,有的用udp處理幀同步的游戲。有的服務(wù)端需要計(jì)算游戲的大部分內(nèi)容,有的就簡(jiǎn)單的增刪改查。
對(duì)于這塊的話,建議有常規(guī)服務(wù)端基礎(chǔ)之后,找個(gè)游戲公司實(shí)習(xí)個(gè)一年半載。
此外,游戲開發(fā)領(lǐng)域還有二維美術(shù)、三維美術(shù)、關(guān)卡設(shè)計(jì)師、音效師、編曲、策劃、導(dǎo)演等等各種有趣的值得學(xué)習(xí)的地方
游戲開發(fā)學(xué)習(xí)建議:
如果你想從事游戲開發(fā)不僅要學(xué)會(huì)這些相應(yīng)的語言和開發(fā)引擎,也要有一定的相關(guān)情商能力才能長(zhǎng)期在這個(gè)行業(yè)走下去。
第一,從事游戲開發(fā)的人一定有情懷。有情懷沒什么了不起,誰都可以有一腔熱情,但你的能力必須支撐你的情懷,做出足夠好的東西。有的時(shí)候你發(fā)現(xiàn),市面上沒有出現(xiàn)你希望的東西,不是因?yàn)樾袠I(yè)沒有情懷,而是有情懷的人沒有這個(gè)能力,有能力的人沒有這個(gè)情懷。只有同時(shí)具備這兩點(diǎn),你才能既做出真正的獨(dú)立游戲,也能把這件事情做好。
第二,大家可以開放一點(diǎn),多看一些商業(yè)的東西,多去了解用戶,看看小學(xué)生、大眾用戶在玩什么游戲,為什么玩得進(jìn)去這些游戲,而不是你覺得很好的游戲?你甚至要從你可能唾棄的東西學(xué)習(xí),因?yàn)檎f不定它們都能為你提供養(yǎng)料。
第三,沒有任何人能保證你做的游戲會(huì)成功,所以大家要做長(zhǎng)久的規(guī)劃,善待團(tuán)隊(duì),善待自己。我不認(rèn)可砸鍋賣鐵,和團(tuán)隊(duì)在一起就什么都不考慮。要可持續(xù)發(fā)展,做游戲是一輩子的事情,不要急于一時(shí)。
當(dāng)這幾點(diǎn)都具備的時(shí)候,我們就可以從事這方面的工作,所有的工作不是外表看起來那么好,每一件事情都會(huì)有困難點(diǎn),我們要冷靜下來,好好面對(duì)對(duì)尋找方案,這樣的我們才會(huì)有進(jìn)步。當(dāng)初如果我不冷靜下來,還是一頭鬧熱在找工作,也許現(xiàn)在我是找到了,但不是自己想要的,無論何時(shí)我們要冷靜下來為自己想想,冷靜的頭腦才會(huì)給你一個(gè)正確的方向,方向正確了加上努力你就會(huì)成功。