做游戲開發(fā)需要學(xué)哪些技術(shù)?
學(xué)習(xí)游戲開發(fā)需要熟練掌握游戲編輯軟件,熟練掌握好這些基礎(chǔ)的游戲軟件功能就可以了。
常用的編輯軟件有以下6種。
1、3dsMAX:大多數(shù)游戲開發(fā)公司美工使用,效率較高,可以獨(dú)立制作游戲中所有美術(shù)相關(guān)資源。
2、MAYA:跟3dsMAX差不多的軟件,因個(gè)人喜好而定,MAYA在制作動(dòng)作的方面較MAX稍差,不過在很多方面這兩款軟件都是可以兼容的。
3、:可以直接打開3維模型文件,在上面繪制貼圖。
4、C++:程序使用,用來實(shí)現(xiàn)游戲中的各種功能,調(diào)試BUG等。
5、Photoshop與Panter:配合MAX或MAYA來繪制各種模型需要用的貼圖。
6、ZBrush:美工制作超高模用的,然后可以生成法線貼圖,在MAYA或MAX中使用。想學(xué)游戲編程需要什么?
首先,不管什么游戲,最基本的要求有兩個(gè)。一是至少精通一門編程語言,二是掌握游戲設(shè)計(jì)結(jié)構(gòu)。
語言包括C/C++、C#、ObjC、Java等。游戲設(shè)計(jì)結(jié)構(gòu)包括圖形渲染、聲音、物理、網(wǎng)絡(luò)等等。
再者,看你具體要想學(xué)習(xí)哪方面的游戲編程了。
如果做Windows PC游戲需要你學(xué)習(xí)DirectX或OpenGL等圖形庫,如有必要還需要網(wǎng)絡(luò)和多線程的知識。
如果做手機(jī)游戲多為2D游戲,建議你了解一下cocos2d游戲引擎(Android或iOS,如果是WinPhone手機(jī),順便建議你了解一下XNA)。
如果做網(wǎng)頁游戲,若是服務(wù)端建議你了解至少一門編寫CGI的語言如PHP,還需要你知道數(shù)據(jù)庫相關(guān)知識;若是前端建議你了解一下HTML5、、Flash等等。
PS,請樓主不要看到這些內(nèi)容就覺得暈,你提出的是一個(gè)很大很籠統(tǒng)的命題,希望你可以找準(zhǔn)方向,專攻一路。草民提到的也不一定全面,當(dāng)然更不深入,如果不對你就當(dāng)沒看到吧。游戲編程要學(xué)什么?
問題一:學(xué)游戲開發(fā)要學(xué)那么多東西。。。怎么學(xué)啊。。。 我覺得你這些學(xué)會了還是太少了。
開玩笑了,我作為一個(gè)游戲程序員在這個(gè)行業(yè)干了6年,其實(shí)你真正要會的東西是C++, 另外你還要對計(jì)算機(jī)的內(nèi)存結(jié)構(gòu),數(shù)據(jù)編排管理方式,也就是我們說的數(shù)據(jù)結(jié)構(gòu)掌握透徹。
Android只是一個(gè)程序的載體平臺,你將來還有可能為iphone開發(fā),所以這種東西你用到的時(shí)候通過sdk文檔去了解一下它的規(guī)則就可以了。
cocos2dx你可以通過一個(gè)實(shí)例項(xiàng)目去掌握它,用它來做一塊你進(jìn)入這個(gè)行業(yè)的敲門磚還是可以的。畢竟現(xiàn)在用這個(gè)的公司是非常多,都想招個(gè)熟練工嘛。
粒子系統(tǒng)和OpenGL. 等你學(xué)了cocos2dx之后,如果對他背后的東西感興趣可以研究一下,有百益而無一害。
數(shù)據(jù)庫無非就是一些接口和查詢語句,對于一個(gè)程序員來說,應(yīng)該要學(xué)。
游戲腳本你可以學(xué)一個(gè),比如lua, 不要糾結(jié)它的語法和形式,要思考為什么用腳本,用腳本有什么好處。大部分游戲引擎都有自己的腳本語言,你能理解他存在的意義遇到任何腳本語言就都沒有問題了。
物理引擎我建議你也學(xué)一下,雖然我見過的很多游戲程序員根本不懂物理引擎,也能做出很優(yōu)秀的游戲。但是當(dāng)你深入研究了物理引擎,你就會覺得你游戲程序員的路還很長,就不會因此而滿足現(xiàn)狀。
最后給你一點(diǎn)忠告,學(xué)好數(shù)據(jù)結(jié)構(gòu)很重要,做游戲的都說游戲的靈魂是程序,而程序的靈魂是數(shù)據(jù)!能創(chuàng)造出完美靈魂的人才是一個(gè)完美的游戲程序員。
問題二:游戲軟件編程要先學(xué)什么 首先,別的都不管,一定要先學(xué)精以下數(shù)學(xué)科目:線性代數(shù)、空間解析幾何、微積分。都要學(xué)到比較深的程度,千萬不能囫圇吞棗,否則往后的壓力會越來越大?,F(xiàn)在本科的內(nèi)容其實(shí)不夠的,例如你在課本里就沒學(xué),但游戲里絕對用得多。還有,課本里大概也不會教你怎樣判斷任意兩個(gè)多面體是否相交。這些都要靠自己多鉆研、多琢磨,不能滿足課本內(nèi)容的。
然后,看你是側(cè)重圖形、物理、還是AI方向。
圖形方面,其實(shí)基本上就是幾何和光學(xué)問題,關(guān)鍵是熟悉API(DirectX或OpenGL)。如果想獲得尖端效果,則要先學(xué)一些光學(xué)基礎(chǔ),然后才能進(jìn)入可編程Shader的美妙境界。
物理方面,本人經(jīng)驗(yàn)太少,只能說:這真的是太太復(fù)雜了。AI方面:本人也沒經(jīng)驗(yàn)。就不多說了。
最后才說C++編程:其實(shí)C++編程這東西真的很奇怪。我們先是在課堂上學(xué)了一套東西,然后實(shí)際開發(fā)的時(shí)候人們又會告訴我們那套東西是不能用的(理由一般就是性能低啦、不安全啦,等等),反正又得學(xué)另一套東西。搞C++特別是游戲的人,都有一種近乎病態(tài)的完美主義傾向,企圖用目前并不完美的語言工具實(shí)現(xiàn)完美的目標(biāo)(最典型的病態(tài)就是那個(gè)const,什么都加const,其實(shí)你就算加了const,人家用強(qiáng)制類型轉(zhuǎn)換,一樣可以轉(zhuǎn)成非const)。還有那個(gè)指針,如果你真的用CObject *pObj這樣的形式,肯定要被人罵。他們要用所謂的“ *** art pointer”。諸如此類,都相當(dāng)變態(tài)。
其實(shí)真的要做AAA級的游戲,簡直就和強(qiáng)迫自己開發(fā)一套操作系統(tǒng)、加上一套程序框架、加上實(shí)現(xiàn)絕大多數(shù)的數(shù)據(jù)結(jié)構(gòu)和算法一樣痛苦。
為什么那么痛苦那么麻煩?想想:做一個(gè)游戲,本質(zhì)上就是想用有限的資源模擬出無限的顯示世界,而創(chuàng)造這個(gè)復(fù)雜的世界是上帝才能勝任的事情,那你想模擬它出來,不就是要和上帝競爭嗎?(本人不信教,呵呵。)
當(dāng)然,如果你只是滿足比較不那么出眾的游戲,或許并不用那么痛苦,隨便拿個(gè)所謂的“引擎”過來用就行。或者用C#,也可以吧。
問題三:游戲開發(fā)需要學(xué)哪些課程呢? 游戲程序開發(fā)專業(yè)主要培養(yǎng)具有必要的計(jì)算機(jī)理論知識,熟練掌握至少一種游戲開發(fā)平臺,熟悉游戲架構(gòu)、游戲 規(guī)劃及設(shè)計(jì)、游戲動(dòng)畫、音效制作、游戲編程和測試的游戲開發(fā)人才,并且能適應(yīng)游戲開發(fā)公司、網(wǎng)絡(luò)游戲運(yùn)營和服務(wù)企業(yè)、動(dòng)漫制作等公司的需要,從事各種游戲的策 劃、設(shè)計(jì)、編碼和測試工作。
主要專業(yè)課程有:C++程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)與算法、計(jì)算機(jī)圖形學(xué)、DirectX程序設(shè)計(jì)、OpenGL程序設(shè)計(jì)、JAVA游戲程序設(shè)計(jì)、游戲體系結(jié)構(gòu)、游戲建模技術(shù)、游戲引擎技術(shù)、角色設(shè)計(jì)、游戲企劃、網(wǎng)絡(luò)游戲開發(fā)等。
問題四:學(xué)游戲開發(fā)要學(xué)些什么? 跟樓主說一下常用的游戲編輯軟件吧:
3dsMAX:大多數(shù)游戲開發(fā)公司美工使用,效率較高,可以獨(dú)立制作游戲中所有美術(shù)相關(guān)資源。
MAYA:跟3dsMAX差不多的軟件,因個(gè)人喜好而定, MAYA在制作動(dòng)作的方面較MAX稍差,不過在很多方面這兩款軟件都是可以兼容的。
Maya和3dmax的區(qū)別:
MAX 優(yōu)勢在于模型和插件 ,有豐富的模型庫,快速的建模方式和優(yōu)良的渲染插件及較快的渲染速度,能夠在游戲模型、建筑巡游、廣告效果圖等領(lǐng)域廣泛使用。 MAYA 優(yōu)勢在于動(dòng)畫及其特效,在模型方面與MAX 無太大差異,但建模速度較慢。MAYA的動(dòng)畫塊較MAX有顯著優(yōu)勢,現(xiàn)階段的動(dòng)畫電影及長片動(dòng)畫都是用 MAYA來制作完成,并且《變形金剛》《蜘蛛俠》 這類科幻電影的 動(dòng)畫及特效也是有MAYA來制作完成,所以MAYA的側(cè)重點(diǎn)在于動(dòng)畫電影的制作。
Photoshop與Panter:配合MAX或MAYA來繪制各種模型需要用的貼圖。
ZBrush:美工制作超高模用的,然后可以生成法線貼圖,在MAYA或MAX中使用。
:可以直接打開3維模型文件,在上面繪制貼圖。
C++:程序使用,用來實(shí)現(xiàn)游戲中的各種功能,調(diào)試BUG等。
:文件管理軟件。游戲團(tuán)隊(duì)不是一個(gè)兩個(gè)人在工作,一大群人的工作成果怎樣才能有效的管理并使用?這時(shí)就需要一款文件管理軟件
問題五:學(xué)習(xí)游戲編程需要學(xué)什么? 首先,不管什么游戲,最基本的要求有兩個(gè)。一是至少精通一門編程語言,二是掌握游戲設(shè)計(jì)結(jié)構(gòu)。
語言包括C/C++、C#、ObjC、Java等。游戲設(shè)計(jì)結(jié)構(gòu)包括圖形渲染、聲音、物理、網(wǎng)絡(luò)等等。
再者,看你具體要想學(xué)習(xí)哪方面的游戲編程了。
如果做Windows PC游戲需要你學(xué)習(xí)DirectX或OpenGL等圖形庫,如有必要還需要網(wǎng)絡(luò)和多線程的知識。
如果做手機(jī)游戲多為2D游戲,建議你了解一下cocos2d游戲引擎(Android或i盯S,如果是WinPhone手機(jī),順便建議你了解一下XNA)。
如果做網(wǎng)頁游戲,若是服務(wù)端建議你了解至少一門編寫CGI的語言如PHP,還需要你知道數(shù)據(jù)庫相關(guān)知識;若是前端建議你了解一下HTML5、、Flash等等。
PS,請樓主不要看到這些內(nèi)容就覺得暈,你提出的是一個(gè)很大很籠統(tǒng)的命題,希望你可以找準(zhǔn)方向,專攻一路。草民提到的也不一定全面,當(dāng)然更不深入,如果不對你就當(dāng)沒看到吧。
問題六:要學(xué)計(jì)算機(jī)游戲開發(fā)要學(xué)些什么? 20分 首先你需要掌握一門編程語言。還需要3dsMAX或maya,,Photoshop與Panter等軟件的使用
問題七:學(xué)習(xí)游戲軟件開發(fā)要具備什么? 游戲分為游戲策劃,游戲美工,游戲程序三個(gè)部分,游戲策劃就是編輯游戲劇本,需要有好文彩,游盯美工要有繪畫基礎(chǔ),美感好,學(xué)3dmax軟件,游戲程序要學(xué)習(xí)編程語言,邏輯思維能力。
問題八:想學(xué)游戲編程應(yīng)該從什么入門啊。 20分 不管什么方向,編程都是基礎(chǔ).哪個(gè)人不是從零基礎(chǔ)開始學(xué)的,你又不是第一個(gè)?你要先學(xué)C語言,編程入門的.我是學(xué)這個(gè)的,可以共同學(xué)習(xí),茉987末期300址192開,注意數(shù)字,能找q.
問題九:游戲開發(fā)需要學(xué)什么 你好做手機(jī)游戲我分開說好了 首先做手機(jī)應(yīng)用(手機(jī)游戲其實(shí)也是應(yīng)用 的一種)首選肯定是安卓或者ios 二選 一 安卓肯定就是java了 (我比較了解干這 個(gè)的)后一種我就不熟了 那么這個(gè)方向的技能需要javaLogic 也 就是java的基本邏輯 然后是web應(yīng)用 也 就是服務(wù)器技術(shù)jsp 、servlet 前端的話 頁面要學(xué)習(xí)js jquery html也就是div+css 再從游戲來說游戲那么多精美的圖片想 要絢麗的效果肯定少不了的那么就是fla sh 圖片處理之類的技術(shù)了 如果你只是想練手做個(gè)小游戲例如貪食 蛇俄羅斯方塊掃雷坦克大戰(zhàn)之類的那么 入手的方向是 先搞懂游戲的算法簡單來說如何判斷蛇 吃到了食物如何讓蛇前進(jìn)后退俄羅斯方 塊:如何這一層滿了就消除如何變幻方 塊模型掃雷:如何查找周圍有幾顆雷這 些都是游戲的算法搞懂了這些邏輯算法 就好做了 希望能幫到你謝謝 你好做手機(jī)游戲我分開說好了 首先做手機(jī)應(yīng)用(手機(jī)游戲其實(shí)也是應(yīng)用 的一種)首選肯定是安卓或者ios 二選 一 安卓肯定就是java了 (我比較了解干這 個(gè)的)后一種我就不熟了 那么這個(gè)方向的技能需要javaLogic 也 就是java的基本邏輯 然后是web應(yīng)用 也 就是服務(wù)器技術(shù)jsp 、servlet 前端的話 頁面要學(xué)習(xí)js jquery html也就是div+css 再從游戲來說游戲那么多精美的圖片想 要絢麗的效果肯定少不了的那么就是fla sh 圖片處理之類的技術(shù)了 如果你只是想練手做個(gè)小游戲例如貪食 蛇俄羅斯方塊掃雷坦克大戰(zhàn)之類的那么 入手的方向是 先搞懂游戲的算法簡單來說如何判斷蛇 吃到了食物如何讓蛇前進(jìn)后退俄羅斯方 塊:如何這一層滿了就消除如何變幻方 塊模型掃雷:如何查找周圍有幾顆雷這 些都是游戲的算法搞懂了這些邏輯算法 就好做了 希望能幫到你謝謝 我 你好做手機(jī)游戲我分開說好了 首先做手機(jī)應(yīng)用(手機(jī)游戲其實(shí)也是應(yīng)用 的一種)首選肯定是安卓或者ios 二選 一 安卓肯定就是java了 (我比較了解干這 個(gè)的)后一種我就不熟了 那么這個(gè)方向的技能需要javaLogic 也 就是java的基本邏輯 然后是web應(yīng)用 也 就是服務(wù)器技術(shù)jsp 、servlet 前端的話 頁面要學(xué)習(xí)js jquery html也就是div+css 再從游戲來說游戲那么多精美的圖片想 要絢麗的效果肯定少不了的那么就是fla sh 圖片處理之類的技術(shù)了 如果你只是想練手做個(gè)小游戲例如貪食 蛇俄羅斯方塊掃雷坦克大戰(zhàn)之類的那么 入手的方向是 先搞懂游戲的算法簡單來說如何判斷蛇 吃到了食物如何讓蛇前進(jìn)后退俄羅斯方 塊:如何這一層滿了就消除如何變幻方 塊模型掃雷:如何查找周圍有幾顆雷這 些都是游戲的算法搞懂了這些邏輯算法 就好做了 希望能幫到你謝謝 我 你好做手機(jī)游戲我分開說好了 首先做手機(jī)應(yīng)用(手機(jī)游戲其實(shí)也是應(yīng)用 的一種)首選肯定是安卓或者ios 二選 一 安卓肯定就是java了 (我比較了解干這 個(gè)的)后一種我就不熟了 那么這個(gè)方向的技能需要javaLogic 也 就是java的基本邏輯 然后是web應(yīng)用 也 就是服務(wù)器技術(shù)jsp 、servlet 前端的話 頁面要學(xué)習(xí)js jquery html也就是div+css 再從游戲來說游戲那么多精美的圖片想 要絢麗的效果肯定少不了的那么就是fla sh 圖片處理之類的技術(shù)了 如果你只是想練手做個(gè)小游戲例如貪食 蛇俄羅斯方塊掃雷坦克大戰(zhàn)之類的那么 入手的方向是 先搞懂游戲的算法簡單來說如何判斷蛇 吃到了食物如何讓蛇前進(jìn)后......>>學(xué)計(jì)算機(jī)編程,要學(xué)好的話,到底用不用學(xué)線性代數(shù)
一般算法方面是有要求的
和語言就沒關(guān)系了.
不過就語言本身而言甚至和與數(shù)學(xué)有關(guān)的一切都沒關(guān)系啊.
所以如果你以后真的有興趣投身于程序設(shè)計(jì),還是要學(xué)好的.對理解算法是有用處的.
我一北大數(shù)學(xué)系的同學(xué)也是這么說的..程序員線性代數(shù)什么程度可以學(xué)
程序員需要掌握本科程度的線性代數(shù)才可以學(xué)。作為一名程序員需要要掌握物理知識,數(shù)據(jù)冗余存儲相關(guān)的編解碼算法,這些背后本質(zhì)是矩陣的計(jì)算,而這些至少需要你掌握本科程度的線性代數(shù)的知識才能夠進(jìn)一步的理解學(xué)習(xí)。游戲制作學(xué)習(xí)需要些什么基礎(chǔ)嗎?
制作游戲算是編程行業(yè)里面技術(shù)難度很高、計(jì)算機(jī)素養(yǎng)也很高的了,真正想要靠制作游戲吃飯的話,作為一位程序員,首先必須要有扎實(shí)的C++基礎(chǔ),要對算法、圖形圖像有著深刻的理解,制作游戲?qū)τ跀?shù)學(xué)的要求十分高、特別是線性代數(shù)、離散數(shù)學(xué)、概率論等等。
如果只是個(gè)人興趣,基礎(chǔ)并不好的話不推薦直接以開發(fā)游戲?yàn)槟繕?biāo),可以選擇相對基礎(chǔ)要求不高的制作網(wǎng)站、開發(fā)應(yīng)用程序等等,提升個(gè)人編程素質(zhì)十分重要,因?yàn)樽鳛橐粋€(gè)中專生沒有很優(yōu)秀的能力,用人單位根本不會考慮讓你先進(jìn)公司學(xué)著做【以上復(fù)制的】
線性代數(shù)很重要嗎線性代數(shù)在數(shù)學(xué)、力學(xué)、物理學(xué)和技術(shù)學(xué)科中有各種重要應(yīng)用,因而它在各種代數(shù)分支中占居首要地位;
②在計(jì)算機(jī)廣泛應(yīng)用的今天,計(jì)算機(jī)圖形學(xué)、計(jì)算機(jī)輔助設(shè)計(jì)、密碼學(xué)、虛擬現(xiàn)實(shí)等技術(shù)無不以線性代數(shù)為其理論和算法基礎(chǔ)的一部分;。
③該學(xué)科所體現(xiàn)的幾何觀念與代數(shù)方法之間的聯(lián)系,從具體概念抽象出來的公理化方法以及嚴(yán)謹(jǐn)?shù)倪壿嬐谱C、巧妙的歸納綜合等,對于強(qiáng)化人們的數(shù)學(xué)訓(xùn)練,增益科學(xué)智能是非常有用的;
④
隨著科學(xué)的發(fā)展,我們不僅要研究單個(gè)變量之間的關(guān)系,還要進(jìn)一步研究多個(gè)變量之間的關(guān)系,各種實(shí)際問題在大多數(shù)情況下可以線性化,而由于計(jì)算機(jī)的發(fā)展,線性化了的問題又可以計(jì)算出來,線性代數(shù)正是解決這些問題的有力工具。
你說重要嗎
?學(xué)計(jì)算機(jī)的話,線性代數(shù)重要嗎?
不重要。
學(xué)計(jì)算機(jī),看你學(xué)的是硬件還是軟件,如果是硬件,可能物理相關(guān)的比較重要;學(xué)軟件編程語言尤為重要,和數(shù)學(xué)關(guān)系不大,如果你的數(shù)學(xué)一般,也不用擔(dān)心,努力就好。
學(xué)好線性代數(shù)不是說出來的,一定是要練出來的。首先數(shù)學(xué)這一門學(xué)科本身就要做大量的練習(xí)才能掌握的好,但有可能你說你思維能力強(qiáng)、智力好其他的數(shù)學(xué)科目看理論、看例題、習(xí)題就能掌握的差不多。但線性代數(shù)不一樣,里面各種各樣的矩陣一個(gè)不小心就搞錯(cuò),所以學(xué)線性代數(shù)一定要在認(rèn)真看完理論知識和例題后多做些相關(guān)的練習(xí)題,我相信只要你肯這樣做,一定能學(xué)好線性代數(shù)。