自學(xué)游戲需要學(xué)什么編程,學(xué)習(xí)游戲開(kāi)發(fā)的學(xué)習(xí)路線大概是怎樣的?
比較主流的游戲開(kāi)發(fā)引擎是Unity3d。比如現(xiàn)在依舊比較火熱的王者榮耀、神廟逃亡、穿越火線、等都是基于Unity3d
編程學(xué)習(xí)路線分三步:1、學(xué)習(xí)C#;2、學(xué)習(xí)Unity;學(xué)習(xí)C#
首先C#在游戲開(kāi)發(fā)中是一種腳本語(yǔ)言。腳本語(yǔ)言是做什么的呢?就是給計(jì)算機(jī)發(fā)出指令,讓它什么時(shí)候做什么事情。
比如,警察想命令一條警犬做一些事情,會(huì)發(fā)出手勢(shì)指令:“靠”、“坐”、“來(lái)”、“叫”、“掃撕”……當(dāng)警犬看到這些手勢(shì)指令時(shí),它就會(huì)做相應(yīng)的行為。而這些手勢(shì)合集,在控制計(jì)算機(jī)時(shí),對(duì)應(yīng)的就是腳本語(yǔ)言。比如我寫一句“Delete Bullet”,意思就是刪除這顆子彈;寫一句“Soldier Fire”,意思就是讓這個(gè)士兵開(kāi)火。C#就是用來(lái)發(fā)出這些指令的。
然后我們說(shuō)學(xué)Unity,Unity是一個(gè)游戲引擎。游戲引擎中集合了開(kāi)發(fā)一個(gè)游戲所需要的大部分工具、組件、環(huán)境等內(nèi)容。就像拍一部電影,我們需要攝像機(jī)、搖臂、燈光、挑干等基礎(chǔ)工具。做游戲也需要攝像機(jī)、燈光、地形、人物控制器等組件,游戲引擎里面就包括了許多這些基礎(chǔ)內(nèi)容。握游戲引擎,使我們不用重頭開(kāi)始造輪子,而是直接拿現(xiàn)成的輪子來(lái)組裝車。
一般來(lái)說(shuō)C#編程能力是學(xué)Unity的前置條件。對(duì)于什么都不懂的人來(lái)說(shuō),直接學(xué)習(xí)C#會(huì)感到無(wú)聊、迷茫、沒(méi)有盡頭,不知道現(xiàn)在所學(xué)的這些東西在以后實(shí)際做游戲時(shí)會(huì)怎么用到,很可能會(huì)讓理想之路產(chǎn)生動(dòng)搖。那么直接學(xué)Unity就不會(huì)無(wú)聊了。
那么目前unity3d的前景怎么樣?據(jù)了解,游戲開(kāi)發(fā)工程師福利待遇好,行業(yè)也處于上升期間,專業(yè)人才缺乏,市場(chǎng)供不應(yīng)求。
簡(jiǎn)單的計(jì)算器編程游戲?
圖形計(jì)算器。絕大多數(shù)圖形計(jì)算器是可編程的,所以可以用來(lái)玩游戲,簡(jiǎn)單的包括貪吃蛇、俄羅斯方塊等,復(fù)雜的,ti nspire cx(德州儀器)這個(gè)型號(hào)甚至可以運(yùn)行GBA模擬器從而玩GBA游戲。
除了游戲之外,當(dāng)然也可以用來(lái)寫其他程序,不過(guò)數(shù)學(xué)方面的肯定不如用電腦上的matlab等數(shù)學(xué)軟件了。
游戲開(kāi)發(fā)都需要會(huì)哪些?
首先非常感謝在這里能為你解答這個(gè)問(wèn)題,讓我?guī)ьI(lǐng)你們一起走進(jìn)這個(gè)問(wèn)題,現(xiàn)在讓我們一起探討一下。
1.要想成為一個(gè)游戲開(kāi)發(fā)人員,就得先成為一個(gè)很好的程序開(kāi)發(fā)人員。當(dāng)你成為一個(gè)很好的程序開(kāi)發(fā)人員時(shí),就可以考慮學(xué)習(xí)游戲開(kāi)發(fā)了。要想成為一個(gè)非常好的游戲開(kāi)發(fā)人員,最重要的一點(diǎn),就是需要對(duì)數(shù)學(xué)非常好。當(dāng)然,這里指的數(shù)學(xué)好,不是指加減法好,或者心算好,而是指線性代數(shù),幾何和幾何代數(shù),物理方面的數(shù)學(xué)等等。如果你對(duì)于數(shù)學(xué)是毫無(wú)興趣,或者索然無(wú)味的話,就要重新想想自己是否可以改變自己的理想了。如果你的數(shù)學(xué)不好,還想成為游戲中的人員,呵呵,有一個(gè)辦法,就是成為游戲的測(cè)試人員,游戲的藝術(shù)人員,或者是游戲設(shè)計(jì)人員,或者游戲的管理人員。
上面知道數(shù)學(xué)是開(kāi)發(fā)游戲的第一個(gè)基本條件了,但還是有很多其它知識(shí)需要學(xué)習(xí)的。下面就來(lái)詳細(xì)說(shuō)明一下:
2.程序設(shè)計(jì)語(yǔ)言:在程序語(yǔ)言方面,不但要精通一兩門語(yǔ)言,還需要了解其它的語(yǔ)言。一般開(kāi)發(fā)游戲都是使用C++或者C,因此精通這門語(yǔ)言是必然的選擇了。由于開(kāi)發(fā)游戲需要不同的語(yǔ)言,比如腳本語(yǔ)言,這樣就需要了解一下動(dòng)態(tài)語(yǔ)言,比如Python等等。
3.數(shù)據(jù)結(jié)構(gòu):不管計(jì)算機(jī)發(fā)展到什么程度,只要是編寫程序,就少不了數(shù)據(jù)結(jié)構(gòu)。目前,基本上都不再會(huì)有自己去創(chuàng)造“車輪”年代了,應(yīng)去理解和使用STL,或者其它更好的數(shù)據(jù)結(jié)構(gòu)庫(kù)了。精通地使用STL,就基本上解決了數(shù)據(jù)結(jié)構(gòu)的問(wèn)題了。
浮點(diǎn)數(shù):在開(kāi)發(fā)游戲里,使用最多的數(shù)據(jù)類型是什么呢?顯然就是浮點(diǎn)數(shù)。比如3D游戲里的點(diǎn)坐標(biāo),就是使用三個(gè)浮點(diǎn)數(shù)來(lái)表示的。浮點(diǎn)數(shù)的計(jì)算,往往就會(huì)有不精確的現(xiàn)像,比如判斷一個(gè)數(shù)是否等于0,就不能想當(dāng)然地認(rèn)為是否等于0了。
4.編程工具:編程工具,就像自己的柴刀,如果沒(méi)有柴刀,就砍不到柴的。當(dāng)然,磨刀不誤砍柴功。因此,一定要對(duì)自己的編程工具非常熟悉,比如調(diào)試,工程配置,編輯,編譯等等,還有經(jīng)常出現(xiàn)的編譯錯(cuò)誤等。如果你還是使用VC6來(lái)開(kāi)發(fā)現(xiàn)在的游戲話,建議你趕緊放棄吧。那都是8年前的開(kāi)發(fā)工具了,目前都需要使用VS2005的開(kāi)發(fā)工具了,強(qiáng)大的C++語(yǔ)言特性,強(qiáng)勁的編輯工具,讓你寫代碼,就如流水般流暢。它還能支持編譯x64位的代碼,64位的PC越來(lái)越流行了。
5.計(jì)算機(jī)體系結(jié)構(gòu):不了解計(jì)算機(jī)的體系結(jié)構(gòu),就沒(méi)有辦法知道程序的運(yùn)行環(huán)境。很多年前,還是8086的體系的結(jié)構(gòu),接著,就是80386的保護(hù)模式。到目前多核體系結(jié)構(gòu),對(duì)于編寫程序,要求發(fā)揮多核CPU的性能,就需要了解怎么樣合理地分配CPU資源了。或許,你還可以控制那個(gè)CPU進(jìn)行渲染的操作,那個(gè)CPU進(jìn)行網(wǎng)絡(luò)通迅。如果到四核的CPU,又要需要多少個(gè)CPU進(jìn)行數(shù)據(jù)庫(kù)的查詢工作呢?
6.Windows編程:目前90%的游戲運(yùn)行環(huán)境就是Windows,如果不了解Windows,就無(wú)從下手了。比如Windows的消息處理過(guò)程,事件響應(yīng),還有Windows的網(wǎng)絡(luò)通迅過(guò)程,這些都是需要了解的。還有Windows提供的API,更加要熟練運(yùn)用了。
7.DirectX:對(duì)于每個(gè)游戲開(kāi)發(fā)者,都是必備常識(shí)。
軟件工程:現(xiàn)在的游戲開(kāi)發(fā),都不是一個(gè)人就可以開(kāi)發(fā)完成的。一定是一個(gè)團(tuán)隊(duì),相互之間的協(xié)作,就成為了需要解決的問(wèn)題。比如每個(gè)人寫的一部份的程序庫(kù),是怎么樣連接在一起,都是軟件工程的問(wèn)題,怎么樣安排進(jìn)度,都是需要使用甘特圖來(lái)說(shuō)明,以及怎么樣進(jìn)行測(cè)試,也是測(cè)試人員配合進(jìn)行的。 現(xiàn)在的游戲都進(jìn)行入了3D的時(shí)代,那么你從哪里開(kāi)始呢,最快的方法,就是下載DX SDK,然后打開(kāi)一個(gè)空的工程,看看DX給你創(chuàng)建了什么文件,以及這些源程序作什么用的。接著試著創(chuàng)建一個(gè)三角形顯示出來(lái)看看,試著改變它的顏色,試著讓它轉(zhuǎn)動(dòng)起來(lái),最后創(chuàng)建兩個(gè)三角形,計(jì)算一下這兩個(gè)三角形會(huì)不會(huì)相交呢?會(huì)不會(huì)碰撞呢?
在以上的分享關(guān)于這個(gè)問(wèn)題的解答都是個(gè)人的意見(jiàn)與建議,我希望我分享的這個(gè)問(wèn)題的解答能夠幫助到大家。
在這里同時(shí)也希望大家能夠喜歡我的分享,大家如果有更好的關(guān)于這個(gè)問(wèn)題的解答,還望分享評(píng)論出來(lái)共同討論這話題。
我最后在這里,祝大家每天開(kāi)開(kāi)心心工作快快樂(lè)樂(lè)生活,健康生活每一天,家和萬(wàn)事興,年年發(fā)大財(cái),生意興隆,謝謝!
以上就是關(guān)于自學(xué)游戲需要學(xué)什么編程和學(xué)習(xí)游戲開(kāi)發(fā)的學(xué)習(xí)路線大概是怎樣的的相關(guān)問(wèn)題解答,希望對(duì)你有所幫助。