芒果视频

網(wang)站分類
登錄 |    

如何學習游戲開發 游戲開發學習的兩條路線是什么

本文章由注冊用戶 溫暖·生活家 上傳提供 評論 發布 反饋 0
摘要:隨著電腦和智能手機的筑建普及,玩游戲幾乎成為了人們的常態,這就必然需要較多的游戲開發人,因此不少人都想要自學游戲開發的相關知識。那么,我們應該怎樣學習游戲開發呢?首先要選定游戲平臺的類型,然后就是有針對性的進行學習。你可以選擇只是用游戲引擎的學習也可以選擇使用游戲引擎并深入了解游戲引擎原理的學習兩條路線。當然,如果想要有所作為,那么推薦你選第二條。下面就一起來看下游戲開發學習的相關知識吧。

如何學習游戲開發

一、平臺與編程語言選擇

首先,游戲(xi)開發的平臺就有很多類(lei)型(xing):

*個人主機平臺:WindowsLinuxMac OC

* 移動平(ping)臺:iOSAndroidWindows PhoneBlackBerryOSSymbian

* 專業主機平臺:XboxPlayStationWill等。

如(ru)果你(ni)想從事移動平(ping)臺(tai)的游戲開(kai)發,Android主流JAVA語言,iOS主流Object-C語(yu)言(yan),那么你就(jiu)要去學習這個平(ping)臺主流(liu)的語(yu)言(yan),而在個人主機(ji)上主流(liu)的游戲開(kai)發語(yu)言(yan)現在包(bao)括以后很長時間也還是C++

但(dan)是并不是所不同平(ping)(ping)臺(tai)的(de)游(you)戲開發(fa),就毫(hao)無(wu)共(gong)通之處,學了這(zhe)個到了另一個平(ping)(ping)臺(tai)就無(wu)用了。不是這(zhe)樣(yang)的(de),編程的(de)世界里你走(zou)得(de)越遠你會發(fa)現很(hen)多東西的(de)本質都是相似的(de),例如你如果扎實地理解了C++的基(ji)本語法(而不是死記硬背),日后再轉Java語(yu)(yu)言也不是(shi)很(hen)難的(de)事(shi)情,因為(wei)它(ta)們本質的(de)面向對象特性(xing)還有各種編程語(yu)(yu)言特性(xing)都是(shi)相通的(de)。

所以,如果你想走(zou)得(de)遠,在(zai)學習的(de)(de)時候不能簡單流于表面,對于一(yi)(yi)樣(yang)知(zhi)識越深入(ru)到(dao)底層,你就(jiu)越能看到(dao)其它(ta)知(zhi)識與其的(de)(de)異曲同(tong)工之處,因此你將比別人更輕松。但是,當然一(yi)(yi)開始最(zui)好盡可能是貼合(he)自己的(de)(de)專屬(shu)領域和(he)編程語言(yan),這樣(yang)能盡快(kuai)地(di)在(zai)這個(ge)領域持(chi)有一(yi)(yi)席之地(di)。

無(wu)論你選擇(ze)哪個平臺,游戲開(kai)發這個浩大的工程都離不開(kai)游戲引(yin)擎,所(suo)以這里都有二(er)條路線讓你選擇(ze):

*只使用游戲引擎;

*使用游戲(xi)引(yin)擎并(bing)深入學習游戲(xi)引(yin)擎原理(li)。

該圖片由注冊用戶"溫暖·生活家"提供,版權聲明反饋

二、游戲開發不同學習線路

線路一:只使用游戲引擎

對于(yu)(yu)第一條路(lu)線,游(you)(you)(you)戲(xi)引擎的(de)使用(yong)(yong)并不困難,因此(ci)適合想(xiang)快(kuai)速上(shang)手游(you)(you)(you)戲(xi)開(kai)發工作的(de)人。我們工作大(da)多數(shu)時候也不會(hui)自己開(kai)發游(you)(you)(you)戲(xi)引擎,所(suo)以這樣對于(yu)(yu)一般的(de)日常(chang)工作也沒什么大(da)礙。對于(yu)(yu)只使用(yong)(yong)游(you)(you)(you)戲(xi)引擎的(de)人來說(shuo),入門階段要做的(de)就是看該引擎的(de)教程(cheng)(書籍、視頻、網上(shang)博客、網上(shang)教程(cheng)、官方(fang)幫(bang)助文檔(dang)等),并且熟練該教程(cheng)所(suo)使用(yong)(yong)的(de)編程(cheng)語言。

所以你要做(zuo)的(de)(de)(de)(de)第一件事,就(jiu)是去了解現在流(liu)行的(de)(de)(de)(de)游(you)(you)戲引擎(qing)。因為不(bu)同(tong)(tong)平(ping)臺下的(de)(de)(de)(de)性能(neng)不(bu)同(tong)(tong),支持(chi)的(de)(de)(de)(de)編程語(yu)言也(ye)不(bu)盡相同(tong)(tong),所以針(zhen)對不(bu)同(tong)(tong)平(ping)臺下的(de)(de)(de)(de)流(liu)行的(de)(de)(de)(de)游(you)(you)戲引擎(qing)也(ye)是不(bu)同(tong)(tong)的(de)(de)(de)(de)(方括號里(li)面是特別推薦(jian)的(de)(de)(de)(de),基于開(kai)源性、易用性、性能(neng)與效(xiao)果等方面的(de)(de)(de)(de)綜合水平(ping)推薦(jian)):

*windows或游戲(xi)主機:【Unreal】、寒霜、CE3

*蘋果ios:【unity3D】、【cocos2d-ObjC】、【Unreal】、sparrowsprite kit

*安卓:【unity3d】、【cocos2d-x】、【Unreal】、AndEnginelibgdx

*網頁:【Egret】、【cocos2d-html5】、Fancy3Dunity3d

在選(xuan)擇游戲(xi)引(yin)(yin)擎的時候,盡(jin)可能(neng)選(xuan)用(yong)流(liu)行(xing)的游戲(xi)引(yin)(yin)擎,因為這(zhe)個游戲(xi)引(yin)(yin)擎流(liu)行(xing)意味著官方的功能(neng)比較(jiao)完(wan)善和(he)易用(yong),問(wen)答社區也比較(jiao)多人解疑。各個游戲(xi)引(yin)(yin)擎也各有千秋,Unity3d勝在簡單易(yi)用,對性能要求不高(gao),但是效果不夠華麗,因(yin)而一般用在移動平臺而不會用在電腦或游戲主機。Unreal勝在開源免費(fei),而(er)(er)且效果(guo)也很出色,但是對設(she)備要求比較高,因而(er)(er)常(chang)常(chang)用來開發效果(guo)絢麗的大型游戲。cocos2d-x也是(shi)開源免費的,在2D領(ling)域深有(you)造詣(yi),但(dan)是缺點是不可(ke)視化開發。另外,如(ru)果你想了解游(you)戲引(yin)擎(qing)原理(li),那么首要(yao)考慮(lv)的(de)就是開源的(de)游(you)戲引(yin)擎(qing)。

不同(tong)游(you)戲引擎(qing)使(shi)(shi)用(yong)的編(bian)程(cheng)語言或(huo)者腳本(ben)語言可能是不一樣的,所(suo)以當你(ni)想要學(xue)習某個游(you)戲引擎(qing)的時候,也應該留意該游(you)戲引擎(qing)所(suo)使(shi)(shi)用(yong)的語言。大(da)部分情況是,Windows用的的是C++,同時結合lua或(huo)python腳本(ben)語(yu)言(yan)。而ios平臺下使(shi)用Objective-Cswift,安卓平臺下使用Java。但這不(bu)是必然的,例如(ru)Unity在各個平臺(tai)下(xia)都(dou)可以用C#或(huo)者javascript腳本語言。

下面是商業(ye)上(shang)流行的游戲引擎詳細比(bi)較:

1) Unreal4(虛幻4

*適用平臺(tai):Microsoft WindowsMac OS XiOSAndroid、虛擬現(xian)實設備(bei)(包括但(dan)不限于SteamVR/HTC ViveMorpheusOculus Rift及(ji)Gear VR)LinuxSteamOSHTML5平臺(tai)。

*編(bian)程(cheng)語(yu)言:C++或無(wu)需(xu)編寫代碼(ma)。

*優點:開源(yuan)免(mian)費,畫面效果出色,已有多款商業(ye)大(da)作經驗。同時(shi),它還能(neng)(neng)跨平臺,商店(dian)資源(yuan)豐富,提供(gong)了無需編寫代(dai)碼即(ji)可(ke)制(zhi)作游戲的強大(da)功能(neng)(neng)(可(ke)視(shi)化開發)。

*缺(que)點:開發機器配(pei)置要求較(jiao)高。

2) Unity3D

*適用平臺:iOSAndroidWindows phone 8TizenMicrosoft WindowsWindows Store應用程序、MacLinux/Steam OS、網絡播放器、WebGLPlayStation3PlayStation4PlayStation Vita版、Xbox OneXbox 360Wii UAndroid TVSamsung SMART TVOculus RiftGear VRMicrosoft HololensPlaystation VR

*編程語(yu)言:C#javascriptBoo

*優點:方(fang)便(bian)易用,中文資料豐富,跨(kua)平臺,商店資源豐富,可視(shi)化開發。

*缺點:畫面效(xiao)果一(yi)般,不(bu)是免費開源,引擎(qing)效(xiao)率(lv)比較(jiao)低。

3) Cocos2d系列(lie)(包Cocos2d-xCocos2d-ObjCCocos2d-html5Cocos2d-xna等)

*適用(yong)平臺:Microsoft WindowsOS XLinuxiOSAndroidTizenLinuxMac OS XHTML5瀏(liu)覽(lan)器、Windows Phone 7 & 8Xbox 360

*編程語言:PythonObjective-CC++LuaJavaScriptSwiftJavaScriptC#

*優點:開源免費,跨平臺(tai),中文資料豐富(fu),2D技(ji)術豐富且成熟。

*缺點:不可視化(hua)開發,3D方面(mian)技(ji)術不成熟。

4) CryEngine3

*適用平臺:Microsoft WindowsOS XLinuxPlayStation 3PlayStation 4Wii UXbox 360Xbox OneiOSAndroid

*編程語(yu)言:C++Lua

*優點(dian):畫面(mian)效(xiao)果世界一流(liu),可視化(hua)開發,跨平臺(tai)。

*缺(que)點:開發機器配置要求較高,不是(shi)免(mian)費開源。

5) Frostbite3(寒霜3

*適用(yong)平臺:Microsoft WindowsPlayStation 3PlayStation 4Xbox 360Xbox One

*編程語(yu)言:C++

*優點:畫面效果(guo)出(chu)色,可視化開發,跨平臺。

*缺點(dian):開發(fa)機器配置(zhi)要求較高(gao),不是免費開源。

6) Egret(白鷺)

*適用平臺:HTML5iOSAndroidWindows Phone

*編(bian)程語言:TypeScriptJavaScript

*優點:免費開源,配套工具(ju)多,全中(zhong)文文檔(dang),可視化開發,跨平臺。

*缺點:支持平(ping)臺較少,大多數時候(hou)用(yong)于開發對性(xing)能和(he)效率要求不高的(de)小游戲。

但是(shi)使(shi)用游(you)(you)(you)戲(xi)引(yin)擎(qing)(qing)(qing)畢竟(jing)是(shi)停留在(zai)表面看不(bu)到本(ben)質,當游(you)(you)(you)戲(xi)開發的(de)時(shi)候出現了某些問(wen)題(ti)或(huo)者特殊需求,你(ni)(ni)往往很(hen)難處理。而(er)且(qie)游(you)(you)(you)戲(xi)引(yin)擎(qing)(qing)(qing)技術日新月(yue)異,你(ni)(ni)所學的(de)幾乎都是(shi)別人留下來(lai)的(de)方(fang)法(fa),而(er)不(bu)是(shi)其本(ben)質思(si)想。如果將來(lai)別的(de)游(you)(you)(you)戲(xi)引(yin)擎(qing)(qing)(qing)興起,你(ni)(ni)又要重新學習(xi)另外(wai)的(de)游(you)(you)(you)戲(xi)引(yin)擎(qing)(qing)(qing)怎(zen)么使(shi)用。在(zai)很(hen)多大公(gong)(gong)司里(li)面,甚至(zhi)都有自己公(gong)(gong)司內(nei)部(bu)專用的(de)引(yin)擎(qing)(qing)(qing)(如網(wang)易(yi)公(gong)(gong)司的(de)風魂引(yin)擎(qing)(qing)(qing)、金(jin)山公(gong)(gong)司的(de)劍網(wang)3引擎(qing)、蝸牛(niu)公司的Flexi引擎等等)。所(suo)以單純地(di)走這(zhe)條路線,可能(neng)(neng)不會(hui)讓(rang)你走得很(hen)遠并且(qie)可能(neng)(neng)會(hui)日漸(jian)乏(fa)味。

線路二:使用游戲引擎并深入了解游戲引擎原理

對于第二條路線,深(shen)入學習游(you)(you)戲引(yin)(yin)擎(qing)原(yuan)理(li)短時(shi)間不會讓你的(de)(de)工作有什么卓越的(de)(de)成效,但是(shi)可以彌補(bu)只使用游(you)(you)戲引(yin)(yin)擎(qing)導致的(de)(de)問(wen)題,而且學習游(you)(you)戲引(yin)(yin)擎(qing)原(yuan)理(li),更多時(shi)候不是(shi)一定(ding)就為了自(zi)己(ji)日(ri)后要造個游(you)(you)戲引(yin)(yin)擎(qing),而是(shi)更深(shen)入理(li)解自(zi)己(ji)的(de)(de)游(you)(you)戲引(yin)(yin)擎(qing),更好地使用它。當然(ran),千里之(zhi)行始于足下,經常學習游(you)(you)戲引(yin)(yin)擎(qing)底(di)層原(yuan)理(li)的(de)(de)人到了一定(ding)的(de)(de)積累(lei)的(de)(de)時(shi)候,自(zi)己(ji)造個游(you)(you)戲引(yin)(yin)擎(qing)也(ye)是(shi)可以的(de)(de)。

對(dui)于像學習游戲引擎原(yuan)理的人來(lai)說(shuo),需要(yao)制(zhi)定(ding)自己明(ming)確的長期目標:

1) 首先(xian),一開始可能對游戲(xi)引(yin)擎(qing)沒(mei)什么概(gai)念,建議先(xian)使用一兩個游戲(xi)引(yin)擎(qing)(我推薦C++程序員學習虛幻(huan)4游戲引擎,現(xian)在是免費開(kai)源(yuan)的,非常(chang)值得學(xue)習(xi)。那些(xie)不開(kai)源(yuan)的游戲引擎盡(jin)量不要去學(xue)習(xi),因為其(qi)對于(yu)學(xue)習(xi)原理來(lai)說沒有多大貢(gong)獻(xian))。

2) 因為游戲開發就是(shi)一門實時渲染的(de)藝術,所以離(li)不開圖(tu)形(xing)庫的(de)學習(xi)。現在(zai)主流的(de)圖(tu)形(xing)庫是(shi)Windows平臺專用的DirectX 11和通用平臺的Opengl。這兩(liang)個圖形庫(ku),至少(shao)需要入門(men)其(qi)中一個。

3) 然后,你(ni)就(jiu)可(ke)以開始看計算機圖形學的(de)書籍了。如果你(ni)發現你(ni)的(de)理(li)論底子不足,這個時候就(jiu)需要(yao)補一下線性代數、基本(ben)的(de)微積分、還有3D數(shu)學的知識。

4) 游戲引擎(qing)中包(bao)含了各個(ge)部(bu)(bu)分(fen)(fen),上(shang)面的(de)渲染(ran)只是游戲引擎(qing)的(de)一(yi)部(bu)(bu)分(fen)(fen)。還有其它諸如著色器編寫(xie)、地形編寫(xie)、物理引擎(qing)編寫(xie)、模型和(he)動畫、人工(gong)智(zhi)能體設計、網絡編程等(deng)等(deng),完(wan)成渲染(ran)部(bu)(bu)分(fen)(fen)的(de)基本(ben)學習(xi)后,你(ni)可(ke)以選擇自(zi)己感(gan)興趣的(de)部(bu)(bu)分(fen)(fen)進行專(zhuan)攻,畢竟我們(men)實(shi)際工(gong)作大多數時候(hou)是團隊(dui)開發(fa),而不(bu)是單打(da)獨(du)斗,每個(ge)人都應該精通(tong)自(zi)己所擅長的(de)那(nei)部(bu)(bu)分(fen)(fen)。

申明:以上內容源于程序系統索引或網民分享提供,僅供您參考使用,不代表本網站的研究觀點,請注意甄別內容來源的真實性和權威性。

網站提醒和聲明
本(ben)站(zhan)(zhan)為注冊(ce)用戶(hu)提(ti)供信息(xi)(xi)存(cun)儲(chu)空間服務,非(fei)“MAIGOO編輯上(shang)傳(chuan)提(ti)供”的(de)文(wen)章/文(wen)字均是(shi)注冊(ce)用戶(hu)自主發(fa)布(bu)上(shang)傳(chuan),不代表本(ben)站(zhan)(zhan)觀點,更不表示本(ben)站(zhan)(zhan)支持(chi)購買(mai)和交易,本(ben)站(zhan)(zhan)對網頁(ye)中(zhong)內容(rong)的(de)合(he)法性(xing)(xing)、準(zhun)確(que)性(xing)(xing)、真實(shi)性(xing)(xing)、適用性(xing)(xing)、安全性(xing)(xing)等概不負責。版權(quan)歸原作者所有,如有侵(qin)權(quan)、虛假信息(xi)(xi)、錯誤(wu)信息(xi)(xi)或任何(he)問題,請及時聯(lian)系(xi)我們,我們將在第一時間刪(shan)除或更正。 申請刪除>> 糾錯>> 投訴侵權>>
提交說明: 快速提交發布>> 查看提交幫助>> 注冊登錄>>
發表評論
您還未登錄,依《網絡安全法》相關要求,請您登錄賬戶后再提交發布信息。點擊登錄>>如您還未注冊,可,感謝您的理解及支持!
最新評論
暫無評論
頁面相關分類
熱門模塊
已有4078225個品牌入駐 更新519149個招商信息 已發布1590212個代理需求 已有1355669條品牌點贊