HOME 首頁(yè)
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營(yíng)
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    游戲編程教學(xué)(代碼編程教學(xué)入門)

    發(fā)布時(shí)間:2023-03-18 12:02:13     稿源: 創(chuàng)意嶺    閱讀: 42        問(wèn)大家

    大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于游戲編程教學(xué)的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。

    開(kāi)始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫(xiě)出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端

    官網(wǎng):https://ai.de1919.com

    本文目錄:

    游戲編程教學(xué)(代碼編程教學(xué)入門)

    一、做單機(jī)游戲需要學(xué)什么

    問(wèn)題一:想制作單機(jī)游戲應(yīng)該學(xué)習(xí)什么 首先得由底層程序開(kāi)發(fā)人員來(lái)編寫(xiě)底層程序,這些人員一般都是和數(shù)字打交道,很枯燥,但是就屬這些人員的技術(shù)能力強(qiáng),因?yàn)樗麄兪琼?xiàng)目的基礎(chǔ),他們負(fù)責(zé)研發(fā)一個(gè)游戲引擎,用來(lái)統(tǒng)籌規(guī)劃以后制作出來(lái)的人物,音效,腳本之類的游戲的各個(gè)部分.這個(gè)是非常重要的...... 底層程序編寫(xiě)的同時(shí),美工人員就要開(kāi)始根據(jù)策劃人的游戲風(fēng)格,來(lái)創(chuàng)建游戲的任務(wù)了,大到主角和城堡,小到初級(jí)怪和武器上的小飾品,都要一一畫(huà)出2D草圖,然后還要不斷的交到主制作人那里去不停修改,直到全部通過(guò)審查之后,交由3D建模師來(lái)構(gòu)建3D模型.這里包括了人物和場(chǎng)景,也是一項(xiàng)相當(dāng)浩大的工程....... 人物模型和場(chǎng)景模型全部建立完成之后,就襖開(kāi)始根據(jù)游戲的劇本來(lái)編寫(xiě)游戲程序了,還得制作各個(gè)人物的各個(gè)動(dòng)作,已經(jīng)人物在各個(gè)場(chǎng)景中的各個(gè)鏡頭的分鏡頭劇本,這也相當(dāng)復(fù)雜.視角不能讓玩家觀起來(lái)有頭暈和不適的樣子,還要突出場(chǎng)景的漂亮和人物的魄力........ 關(guān)于人物動(dòng)作的錄制,現(xiàn)在大公司基本都采用動(dòng)作捕獲技術(shù),這樣的好處就是人物的動(dòng)作都非常真實(shí),因?yàn)槎际钦?qǐng)的專業(yè)演員來(lái)描繪的,不會(huì)給人生硬的感覺(jué).... 游戲畫(huà)面制作的同時(shí),各種音效和背景音樂(lè)也要同時(shí)開(kāi)始錄制,根據(jù)不同的情節(jié),不同的場(chǎng)景,表現(xiàn)各種情緒的音樂(lè)也要非常豐富才可以........ 在制作過(guò)程中,還要搭建游戲龐大的數(shù)據(jù)庫(kù),包括HP啊,攻擊力啊,道具數(shù)值等等等等.......非常非常復(fù)雜的...... 折騰了兩三年,差不多已經(jīng)完成了,之后就要開(kāi)始請(qǐng)測(cè)試人員對(duì)游戲進(jìn)行測(cè)試,沒(méi)問(wèn)題的話就交審批了,審批通過(guò)之后,再經(jīng)歷一段廣告宣傳攻勢(shì),最后等一個(gè)吉日,就發(fā)售了~~~~~~~~~ 至于仁兄問(wèn)的軟件........各個(gè)公司都不一樣,一般3D建模大多數(shù)都用3DS,速度比較快,MAYA也用的比較多,一般人物建模都用MAYA,建筑物和場(chǎng)景都用3DS,畫(huà)2D草圖一般都是手繪,然后掃進(jìn)電腦里之后,用Photo Shop和Painter來(lái)上色和加工....別的軟件就比較自由了,用什么的都有,好多大型公司用的都是公司內(nèi)部自主開(kāi)發(fā)的引擎和軟件......詳細(xì)的游戲開(kāi)發(fā)套件,根據(jù)游戲的類型不同而不同

    問(wèn)題二:做單機(jī)游戲需要學(xué)習(xí)什么 單機(jī)啊....還大型...

    C++ ,C#,photoshop,或許吧...然后....呃.不過(guò)你自己最好還是用.RPG maker xp.... 那個(gè)就是給你們這種人用的....

    問(wèn)題三:如果我現(xiàn)在要做一個(gè)大型的單機(jī)電腦游戲 有哪些需要注意學(xué)習(xí)的 必不可少的 做大型單機(jī)游戲 要美工 建模 數(shù)據(jù)導(dǎo)入等等,一個(gè)人不可能完成。還有資金問(wèn)題,仙劍奇?zhèn)b傳國(guó)產(chǎn)單機(jī)游戲耗資600萬(wàn)以上,國(guó)外的GAT5 看門狗什么的這些游戲都是5 6億人民幣!

    問(wèn)題四:一般單機(jī)游戲制作人要學(xué)什么專業(yè)要所有學(xué)嗎? 獨(dú)立游戲制作人確實(shí)要學(xué)很多東西的

    編程是必須的,美術(shù)不一定要很好,但美術(shù)要用到的軟件要學(xué)會(huì),不然你想描繪一個(gè)人物用什么來(lái)描。

    如果是選擇專業(yè)的話,最好選擇動(dòng)畫(huà)類的專業(yè),或者與編程有關(guān)的專業(yè),如果你只是想做監(jiān)制之類的,編程和美術(shù)會(huì)請(qǐng)人來(lái)搞,就要去學(xué)一下策劃類的專業(yè)了

    問(wèn)題五:做單機(jī)游戲需要學(xué)c語(yǔ)言嗎? 建議選一個(gè)成熟的游戲引擎入手,比如虛幻 寒霜 什么的,Unity也可以,但是不用C。

    做程序?qū)W什么都不浪費(fèi)時(shí)間,早晚會(huì)用到。

    問(wèn)題六:請(qǐng)問(wèn)做游戲需要學(xué)習(xí)什么軟件了解哪些知識(shí) 不談別的,最低要求你的會(huì)美工,沒(méi)有構(gòu)思何談?dòng)螒?,這是最基本的,剩下的相關(guān)知識(shí),編程語(yǔ)言 推薦 C/C++ 英語(yǔ),策劃,程序,測(cè)試,要是沒(méi)有相關(guān)的知識(shí)積累,想做游戲,可以說(shuō)是千難萬(wàn)難,直接用軟件的話,,你是做不出來(lái)的,因?yàn)橛泻芏鄸|西,是要你想出來(lái),做出來(lái),在添加到軟件里,光靠軟件是沒(méi)用的,在軟件上也學(xué)不到什么的, 建議你先去選擇一門語(yǔ)言 會(huì)一些基礎(chǔ)的東西之后 然后 你就可以 通過(guò) 編程語(yǔ)言繪制一些人物圖啊 怪物的圖啊 ,再通過(guò)編程語(yǔ)言控制 那些人物圖片 或者怪物圖片 行走啊 站立啊 。 基本的就是先學(xué)VB編程的工具,以及PHOTOSHOP等圖片處理。不過(guò)要是現(xiàn)在這方面發(fā)展還是建議你去學(xué)一些正規(guī)學(xué)院學(xué)一些專業(yè)知識(shí)。

    問(wèn)題七:想從事游戲開(kāi)發(fā),現(xiàn)在需要學(xué)什么 建議學(xué)XNA吧,微軟出的未來(lái)游戲開(kāi)發(fā)框架,用C#開(kāi)發(fā),適合你的

    學(xué)C++做游戲比較難,自學(xué)能堅(jiān)持下來(lái)的不多,畢竟要學(xué)的知識(shí)太多,而且C++本身就是一門相對(duì)比較難以掌握的語(yǔ)言

    不能說(shuō)C++是王道吧,感覺(jué)現(xiàn)在C++除了在比較低層的開(kāi)發(fā)上處于老大哥的償位,其它一些中高層的應(yīng)用都在減少,不過(guò),C++的效率確實(shí)不是另我高級(jí)語(yǔ)言能比的,但在電腦性能高速發(fā)展的現(xiàn)今,我認(rèn)為C#的性能完全可以開(kāi)發(fā)出不錯(cuò)的游戲

    我也在研究XNA,相對(duì)來(lái)說(shuō)真的把游戲開(kāi)發(fā)困難度降低了很多

    問(wèn)題八:學(xué)游戲開(kāi)發(fā)要學(xué)些什么? 跟樓主說(shuō)一下常用的游戲編輯軟件吧:

    3dsMAX:大多數(shù)游戲開(kāi)發(fā)公司美工使用,效率較高,可以獨(dú)立制作游戲中所有美術(shù)相關(guān)資源。

    MAYA:跟3dsMAX差不多的軟件,因個(gè)人喜好而定, MAYA在制作動(dòng)作的方面較MAX稍差,不過(guò)在很多方面這兩款軟件都是可以兼容的。

    Maya和3dmax的區(qū)別:

    MAX 優(yōu)勢(shì)在于模型和插件 ,有豐富的模型庫(kù),快速的建模方式和優(yōu)良的渲染插件及較快的渲染速度,能夠在游戲模型、建筑巡游、廣告效果圖等領(lǐng)域廣泛使用。 MAYA 優(yōu)勢(shì)在于動(dòng)畫(huà)及其特效,在模型方面與MAX 無(wú)太大差異,但建模速度較慢。MAYA的動(dòng)畫(huà)塊較MAX有顯著優(yōu)勢(shì),現(xiàn)階段的動(dòng)畫(huà)電影及長(zhǎng)片動(dòng)畫(huà)都是用 MAYA來(lái)制作完成,并且《變形金剛》《蜘蛛俠》 這類科幻電影的 動(dòng)畫(huà)及特效也是有MAYA來(lái)制作完成,所以MAYA的側(cè)重點(diǎn)在于動(dòng)畫(huà)電影的制作。

    Photoshop與Panter:配合MAX或MAYA來(lái)繪制各種模型需要用的貼圖。

    ZBrush:美工制作超高模用的,然后可以生成法線貼圖,在MAYA或MAX中使用。

    Deeppaint3D:可以直接打開(kāi)3維模型文件,在上面繪制貼圖。

    C++:程序使用,用來(lái)實(shí)現(xiàn)游戲中的各種功能,調(diào)試BUG等。

    Alienbrain:文件管理軟件。游戲團(tuán)隊(duì)不是一個(gè)兩個(gè)人在工作,一大群人的工作成果怎樣才能有效的管理并使用?這時(shí)就需要一款文件管理軟件

    問(wèn)題九:制作游戲應(yīng)該學(xué)什么編程語(yǔ)言 企業(yè)級(jí)的游戲開(kāi)發(fā)的話,一般C++多一些,大型游戲要求足夠高的運(yùn)行效率,而JAVA,C#在這一方面是短項(xiàng),而用C的話又沒(méi)有類,所以C++開(kāi)發(fā)的游戲比較多,如果是想進(jìn)游戲公司的話,多學(xué)學(xué)C++。

    但是如果是個(gè)人開(kāi)發(fā)小型游戲的話,建議用C#,小型游戲不需要考慮效率問(wèn)題,C#足以應(yīng)付,微軟有個(gè)東西叫XNA,專為業(yè)余的程序員開(kāi)發(fā)小型游戲而設(shè)計(jì),上手簡(jiǎn)單,微軟提供了大量的類庫(kù),用起來(lái)很便捷。

    如果是開(kāi)發(fā)android的游戲的話,沒(méi)得選,只能用JAVA。

    貌似也有用delphi開(kāi)發(fā)的游戲,不過(guò)聽(tīng)說(shuō)不是主流。

    其實(shí)語(yǔ)言不是重點(diǎn),任何語(yǔ)言都可以做游戲,只是各個(gè)語(yǔ)言各有特點(diǎn),根據(jù)需求的不同選擇最適合的語(yǔ)言。關(guān)鍵在于算法要理解,理解程序的構(gòu)架,研究透算法,才是最重要的。

    學(xué)習(xí)的時(shí)候建議以C++來(lái)學(xué)習(xí),用JAVA或者C#的話學(xué)不到指針,用C的話學(xué)不到面向?qū)ο蟮乃枷?。不過(guò)如果沒(méi)有任何語(yǔ)言基礎(chǔ)的話,建議還是從C學(xué)起,先學(xué)會(huì)最基礎(chǔ)的東西再學(xué)C++。VB現(xiàn)在已經(jīng)很少用了,實(shí)在沒(méi)學(xué)的必要。

    推薦教材《Visual C++游戲編程基礎(chǔ)》

    如果只是想做個(gè)小的東西玩玩的話,有很多方便的軟件,比如《RPG maker》,用這些東西不需要什么編程的基礎(chǔ)就能做一些小的東西,玩玩足以。

    純粹手打,求采納。

    問(wèn)題十:做游戲應(yīng)該學(xué)什么專業(yè) 游戲設(shè)計(jì)是設(shè)計(jì)游戲內(nèi)容和規(guī)則的一個(gè)過(guò)程,創(chuàng)建能激起玩家通關(guān)熱情的目標(biāo),以及玩家在追求這些目標(biāo)時(shí)做出的有意義的決定需遵循的規(guī)則。這個(gè)術(shù)語(yǔ)同時(shí)也可以表示游戲?qū)嶋H設(shè)計(jì)中的具體實(shí)現(xiàn)和描述設(shè)計(jì)細(xì)節(jié)的文檔。游戲設(shè)計(jì)者常常專攻于某一種特定的游戲類型,例如桌面游戲、卡片游戲或者視頻游戲等。盡管這些游戲類型看上去很不一樣,可是它們卻共同擁有很多潛在的概念上或者邏輯上的相似性。

    游戲設(shè)計(jì)方法的作用從本質(zhì)上來(lái)說(shuō)是用一系列的約束來(lái)指導(dǎo)游戲作品的創(chuàng)作。這些約束因被設(shè)計(jì)的游戲的類型不同而有所不同。約束的種類有很多,例如:

    技術(shù)上的約束

    產(chǎn)品的約束

    特定用戶群的約束

    民族方面的約束

    政治上的約束

    與其他設(shè)計(jì)學(xué)科的交互

    一些類型的游戲設(shè)計(jì)綜合了其他多種設(shè)計(jì)科目。用視頻游戲舉例來(lái)說(shuō),需要借助以下學(xué)科的知識(shí):

    游戲機(jī)制

    視覺(jué)藝術(shù)

    設(shè)計(jì)方法

    游戲策劃也可稱為創(chuàng)意策劃,創(chuàng)意分為兩種:原創(chuàng)性創(chuàng)意和綜合性創(chuàng)意,但人們通常把前一種稱為創(chuàng)意,把后一種稱為“抄”,這其實(shí)是一個(gè)誤區(qū),兩者沒(méi)有高下之分。

    在自然科學(xué)領(lǐng)域,原創(chuàng)性創(chuàng)意出現(xiàn)率比較高一些,很多發(fā)明和發(fā)現(xiàn)都屬于原創(chuàng)性創(chuàng)意,但是,也有不少發(fā)明和發(fā)現(xiàn)是站在巨人肩膀上捅破了一層窗戶紙,并非原創(chuàng)性創(chuàng)意而是綜合性創(chuàng)意。

    綜合性創(chuàng)意其實(shí)是一個(gè)選擇――融和的過(guò)程。首先是選擇,去模仿借鑒其他游戲。而融合的過(guò)程,為我所用,渾然天成方為上品。要做到從其他游戲中拿來(lái)的設(shè)計(jì),放在我的游戲中比它原來(lái)的游戲更合適,更恰當(dāng)。要做到所有的選擇能夠有機(jī)結(jié)合為一個(gè)整體,增一分則多,減一分則少,這才是綜合性創(chuàng)意的精髓。

    想學(xué)游戲制作,可以到dogame游戲兵工廠教育培訓(xùn)中心看看,他們就是專業(yè)教授這個(gè)的

    學(xué)校網(wǎng)站上有很多這方面的信息,還有免費(fèi)的游戲制作教學(xué)視頻,樓主可以多去看看,對(duì)學(xué)習(xí)肯定會(huì)很有幫助的。

    此方向可以參考的專業(yè)就是計(jì)算機(jī)科學(xué)與軟件工程這兩個(gè)。

    但是開(kāi)發(fā)軟件游戲并不是你想象的那樣有趣,你需要十足的耐心和過(guò)硬的素質(zhì)。大學(xué)中你需要學(xué)習(xí)各種算法,各種編程語(yǔ)言。如果你不是對(duì)這個(gè)方向特別感興趣,建議不要輕易選擇,因?yàn)檫@個(gè)行業(yè)真正出彩的也就是幾家公司,大部分畢業(yè)生都是程序員,做各種軟件調(diào)試工作。你需要耐得住寂寞。

    二、一般游戲編程用什么語(yǔ)言和軟件

    下面是游戲開(kāi)發(fā)十大編程語(yǔ)言的列表。

    1、C類#

    C語(yǔ)言現(xiàn)在被廣泛應(yīng)用于許多游戲引擎中,是最流行的游戲開(kāi)發(fā)語(yǔ)言之一。它有一個(gè)XNA框架、一套微軟工具和運(yùn)行時(shí)環(huán)境,使它特別適合Xbox或windows上的游戲。如果你想使用monogame在幾乎任何平臺(tái)上發(fā)布游戲,這是一種很好的語(yǔ)言。

    2、C類++

    C++是一種面向?qū)ο蟮恼Z(yǔ)言,被認(rèn)為是最難學(xué)習(xí)的語(yǔ)言之一,但它是游戲開(kāi)發(fā)人員的重要語(yǔ)言。它允許對(duì)硬件和圖形進(jìn)程進(jìn)行更直接的控制,這對(duì)行業(yè)很重要,是一些流行游戲引擎的流行語(yǔ)言。它還提供了對(duì)參數(shù)和內(nèi)存管理的大量控制,從而提高了游戲的性能和用戶體驗(yàn)。

    3、Java

    Java使用與C++相同的面向?qū)ο笤瓌t,但提供了更廣泛的系統(tǒng)。Java代碼通常在Java虛擬機(jī)(JVM)上運(yùn)行,并轉(zhuǎn)換為可在任何系統(tǒng)上執(zhí)行的通用字節(jié)碼。因此,Java是為數(shù)不多的能夠讓開(kāi)發(fā)人員為任何給定系統(tǒng)開(kāi)發(fā)游戲的游戲編程語(yǔ)言之一。它是最好的游戲編程語(yǔ)言之一。

    4、JavaScript

    JavaScript是最流行的游戲編程語(yǔ)言之一,尤其是作為一種在線交互語(yǔ)言。使用JavaScript,可以更容易地將代碼與傳統(tǒng)的網(wǎng)絡(luò)技術(shù)(如HTML和CSS)集成,從而導(dǎo)致越來(lái)越多的跨平臺(tái)移動(dòng)游戲。

    5、HTML5

    HTML5已經(jīng)成為互聯(lián)網(wǎng)上最常見(jiàn)的游戲編程語(yǔ)言之一。你今天玩的大多數(shù)手機(jī)游戲都使用這種標(biāo)記語(yǔ)言。使用JavaScript很容易創(chuàng)建復(fù)雜的基于web的游戲。該語(yǔ)言簡(jiǎn)單易學(xué),不一定需要學(xué)習(xí)復(fù)雜的算法編程知識(shí),因此成為游戲開(kāi)發(fā)者的熱門選擇。

    6、SQL語(yǔ)言

    SQL被玩家用來(lái)訪問(wèn)后端帳戶并在服務(wù)器上執(zhí)行其他操作。有新的語(yǔ)言,庫(kù),框架,特別是AR,VR,圖形,物理和游戲。

    7、Python

    Python是另一種提供OOP方法的語(yǔ)言,是游戲開(kāi)發(fā)人員使用的最易于使用的通用編程語(yǔ)言之一。它有一個(gè)pyGame框架,允許程序員快速開(kāi)發(fā)游戲原型。

    8、Rust

    鐵銹被吹捧為C的繼承者之一。它主要被Mozilla基金會(huì)用作系統(tǒng)編程語(yǔ)言。它具有面向?qū)ο蟮矫嫦驍?shù)據(jù)的方法,有助于游戲開(kāi)發(fā)。

    9、UnrealScript

    Unrealscript是unreal引擎的本機(jī)腳本語(yǔ)言。它結(jié)合了面向?qū)ο?、多重繼承和功能豐富的游戲等復(fù)雜功能。該語(yǔ)言支持所有主要的游戲平臺(tái),如微軟Windows、MacOS、Linux、steamos、Android和PlaystationVR。

    10、Lua

    由于語(yǔ)言結(jié)構(gòu)和語(yǔ)法簡(jiǎn)單,Lua正成為游戲界最流行的語(yǔ)言之一。它是一種多平臺(tái)腳本語(yǔ)言,許多現(xiàn)代游戲引擎都使用Lua作為主要的游戲設(shè)計(jì)編程語(yǔ)言。

    三、從事游戲開(kāi)發(fā)(程序)工作,要學(xué)哪些知識(shí)

    首先,C++肯定要好了。

    C語(yǔ)言程序設(shè)計(jì)

    http://book.jqcq.com/product/472414.html

    語(yǔ)言是國(guó)內(nèi)外廣泛使用的計(jì)算機(jī)語(yǔ)言,是計(jì)算機(jī)應(yīng)用人員應(yīng)掌握的一種程序設(shè)計(jì)工具。本書(shū)全面系統(tǒng)地介紹了C語(yǔ)言編程技術(shù)及其相關(guān)理論,是一本能使讀者全面掌握c語(yǔ)言編程技術(shù)的好教程。根據(jù)需要,作者除了深入淺出地介紹了C語(yǔ)言的傳統(tǒng)編程方法,還別具匠心地介紹了c語(yǔ)言的繪圖功能和一些應(yīng)用開(kāi)發(fā)實(shí)例。本書(shū)內(nèi)容新穎、結(jié)構(gòu)合 ...

    C++編程風(fēng)格

    http://book.jqcq.com/product/620299.html

    編程相關(guān)的內(nèi)容,例如增加代碼的可讀性、可維護(hù)性、可擴(kuò)展性以及執(zhí)行效率等的方法。本書(shū)的示例代碼都是從實(shí)際程序中抽取出來(lái)的,融人了作者的實(shí)際開(kāi)發(fā)經(jīng)驗(yàn)。講解如何正確地編寫(xiě)代碼以及避開(kāi)一些常見(jiàn)的誤區(qū)和陷阱,并給出了許多實(shí)用的編程規(guī)則,可快速提升讀者的C++編程功力。本書(shū)描述平實(shí),示例豐富,適合有一定編程� ...

    C++編程思想第2卷:實(shí)用編程技術(shù)

    http://book.jqcq.com/product/413352.html

    編程技術(shù)和最佳的實(shí)踐方法,深入探究了異常處理方法和異常安全設(shè)計(jì);介紹C++的字符串、輸入輸出流、STL算法、容器和模板的現(xiàn)代用法,包括模板元編程;解釋多重繼承問(wèn)題的難點(diǎn),展示RTTI的實(shí)際使用,描述了典型的設(shè)計(jì)模式及其實(shí)現(xiàn),特別介紹被認(rèn)為是標(biāo)準(zhǔn)C++下一版特征之一的多線程處理編程技術(shù),并提供了最新的研究成果� ...

    學(xué)好C++后,就要掌握數(shù)據(jù)結(jié)構(gòu)和算法的知識(shí),還是STL。

    數(shù)據(jù)結(jié)構(gòu)與 STL(英文版) 數(shù)據(jù)結(jié)構(gòu)與 STL(英文版)

    http://book.jqcq.com/product/412778.html

    數(shù)據(jù)結(jié)構(gòu)及其實(shí)現(xiàn)的基礎(chǔ)知識(shí)。書(shū)中引導(dǎo)學(xué)生通過(guò)對(duì)方法接口、示例和應(yīng)用的學(xué)習(xí),逐漸理解和掌握如何高效地使用數(shù)據(jù)結(jié)構(gòu)。適合課堂教學(xué)和自學(xué)參考。 本書(shū)特色 大多數(shù)數(shù)據(jù)結(jié)構(gòu)用STL(標(biāo)準(zhǔn)模板庫(kù))提供,并詳細(xì)

    數(shù)據(jù)結(jié)構(gòu) C++語(yǔ)言描述(英文影印版) 數(shù)據(jù)結(jié)構(gòu) C++語(yǔ)言描述(英文影印版)

    http://book.jqcq.com/product/306107.html

    數(shù)據(jù)結(jié)構(gòu)。內(nèi)容從數(shù)據(jù)結(jié)構(gòu)的基本原理到面向?qū)ο蟪绦蛟O(shè)計(jì)的方法。書(shū)內(nèi)使用適應(yīng)面極廣的C++語(yǔ)言。全書(shū)14章分別為:1.緒論;2.基本數(shù)據(jù)類型;3.抽象數(shù)據(jù)類型與類;4.集合類;5.棧與隊(duì)列;6.抽象運(yùn)算符;7.類屬數(shù)據(jù)類型;8.類與動(dòng)態(tài)存儲(chǔ);9.鏈表;10.遞歸;11.樹(shù);12.繼承與抽象類;13.先進(jìn)的非線性結(jié)構(gòu);14.構(gòu)建集合。書(shū)后 ...

    泛型編程與STL

    http://book.jqcq.com/product/332062.html

    編程與STL》闡述了泛型編程的中心思想:concepts、modeling、refinement,并為你展示這些思想如何導(dǎo)出STL的基礎(chǔ)概念:iterators、containers、function objects。循此路線,你可以把STL想像為一個(gè)由來(lái)的完整優(yōu)勢(shì)……

    掌握多線程編程是必須的。

    C和C++實(shí)務(wù)精選:C++面向?qū)ο蠖嗑€程編程

    http://book.jqcq.com/product/351898.html

    . 多線程架構(gòu)與增量多線程編程技術(shù)。第1章介紹了用于構(gòu)建面向?qū)ο蟪绦虻牟煌愋虲++組件,以及如何使用這些組件來(lái)構(gòu)建多線程架構(gòu)。第2、3、4章簡(jiǎn)要介紹進(jìn)程、線程、多任務(wù)處理、多線程化、規(guī)劃以及線程優(yōu)先權(quán)的概念。第5章討論講程間和線程間通信。第6章講座線程與進(jìn)程同步與合作。第6章詳細(xì)講座臨界區(qū)、死鎖、數(shù)據(jù)競(jìng)爭(zhēng)以 ..

    這些掌握了后,開(kāi)始掌握通行技術(shù)。首先是網(wǎng)絡(luò)協(xié)議:

    《TCP/IP 基礎(chǔ)(第7版)》

    http://book.jqcq.com/product/399379.html

    TCP/IP的體系結(jié)構(gòu)和主要應(yīng)用程序。全書(shū)分為8章,分別介紹TCP/IP體系結(jié)構(gòu)與尋址,TCP/IP應(yīng)用程序,TCP/IP尋址與子網(wǎng), TCP/IP協(xié)議,TCP/IP服務(wù),TCP/IP路由選擇, TCP/IP應(yīng)用程序原理,以及TCP/IP網(wǎng)絡(luò)故障診斷。本書(shū)是國(guó)家網(wǎng)絡(luò)技術(shù)水平考試的指定參考教材,適合網(wǎng)絡(luò)技術(shù)人員和網(wǎng)絡(luò)管理人員閱讀,也可供大中專院校相 ...

    TCP/IP詳解?卷Ⅰ:協(xié)議

    http://book.jqcq.com/product/404145.html

    TCP/IP解析》中的第1卷,主要講述TCP/IP協(xié)議方面的內(nèi)容。與其他的TCP/IP書(shū)藉的最大不同在于,本書(shū)不僅僅講述了RFCS的標(biāo)準(zhǔn)協(xié)議,而且結(jié)合大量實(shí)例講述了TCP/IP協(xié)議包的定義原因及在各種不同的操作系統(tǒng)中(如Sunos4.1.3、Soloris2.2、 AIX3.2.2)的應(yīng)用與工作方式,這樣可以以動(dòng)態(tài)方式講述TCP/IP的知識(shí),使讀者可以輕松掌� ...

    TCP/IP詳解卷三:TCP事務(wù)協(xié)議 HTTP NNTP和UNIX域協(xié)議

    http://book.jqcq.com/product/310116.html

    TCP/IP詳解系列”的延續(xù)。主要內(nèi)容包括:TCP事務(wù)協(xié)議,即T/TCP,這是對(duì)TCP的擴(kuò)展,使客戶-服務(wù)器事務(wù)更快、更高效和更可靠; TCP/IP應(yīng)用,主要是HTTP和NNTP;UNIX域協(xié)議,這些協(xié)議提供了進(jìn)程之間通信的一種手段。當(dāng)客戶與服務(wù)器進(jìn)程在同一臺(tái)主機(jī)上時(shí),UNIX域協(xié)議通常要比TCP/IP快一倍。本書(shū)同樣采用了大量的實(shí)例和實(shí)現(xiàn)細(xì) ...

    然后掌握各種平臺(tái)下SOCKET的編程技術(shù)。

    TCP/IP協(xié)議及網(wǎng)絡(luò)編程技術(shù)

    http://book.jqcq.com/product/580242.html

    本書(shū)是一本關(guān)于TCP/IP協(xié)議原理編程技術(shù)的教材,由兩部分組成:第1部分系統(tǒng)地介紹了TCP/IP協(xié)議族的體系結(jié)構(gòu),并分別介紹了IP層、傳輸層和應(yīng)用層中各種協(xié)議的具體原理和工作機(jī)制;第2部分介紹了基于socket編程接口的網(wǎng)絡(luò)編程技術(shù),重點(diǎn)講述了客戶端和服務(wù)器端編程應(yīng)注意的問(wèn)題、可用的模式和技術(shù)。作為一本TCP/IP協(xié)議理 ...

    Winsock 2網(wǎng)絡(luò)編程實(shí)用教程 Winsock 2網(wǎng)絡(luò)編程實(shí)用教程

    http://book.jqcq.com/product/374343.html

    Winsock,即基于Windows的套接字,是專門為網(wǎng)絡(luò)開(kāi)發(fā)人員開(kāi)發(fā)網(wǎng)絡(luò)應(yīng)用程序設(shè)計(jì)的編程接口。由于現(xiàn)今網(wǎng)絡(luò)應(yīng)用的普及,使成為了IT發(fā)展的重要分支之一。本書(shū)的出版正是順應(yīng)了這種需求。本書(shū)簡(jiǎn)潔而專業(yè)地介紹了Winsock的基本概念和操作方式,指導(dǎo)程序員如何利用現(xiàn)有的主流開(kāi)發(fā)工具進(jìn)行最流行的Windows網(wǎng)絡(luò)應(yīng)用的開(kāi)發(fā)。同時(shí),本書(shū) ...

    Windows網(wǎng)絡(luò)編程

    http://book.jqcq.com/product/401079.html

    Microsoft公司的Visual C++平臺(tái)不僅具有很強(qiáng)的網(wǎng)絡(luò)程序處理能力,而且還能提供多種編程風(fēng)格。與Visual C++捆綁的MFC提供了大量封裝良好的網(wǎng)絡(luò)類,如Winsock、WinInet、ActiveX、DCOM和ATL等,提高了用戶在利用Visual C++進(jìn)行網(wǎng)絡(luò)開(kāi)發(fā)時(shí)的效率。本書(shū)主要特色在于對(duì)技術(shù)細(xì)節(jié)做了深入的介紹,探討了大量網(wǎng)絡(luò)專用函數(shù)以及MFC ..

    LINUX網(wǎng)絡(luò)編程

    http://book.jqcq.com/product/105718.html

    本書(shū)詳盡而細(xì)致地介紹了在Linux操作系統(tǒng)下進(jìn)行網(wǎng)絡(luò)編程所需要的各種知識(shí),從基本的進(jìn)程控制、通信到Berkeley套接字都有講解。書(shū)中還穿插了大量的實(shí)例程序,并配以說(shuō)明,更加方便讀者的學(xué)習(xí)和理解。本書(shū)內(nèi)容的精心安排,簡(jiǎn)潔的措辭,豐富的實(shí)例可以使初學(xué)者迅速地掌握Linux網(wǎng)絡(luò)編程的技術(shù)。同時(shí),Linux的高級(jí)程序員也可以從� ...

    這寫(xiě)掌握完以后,開(kāi)始學(xué)寫(xiě)LINUX下的服務(wù)器編程。

    Linux 程序設(shè)計(jì)權(quán)威指南(附光盤(pán)) Linux 程序設(shè)計(jì)權(quán)威指南(附光盤(pán))

    http://book.jqcq.com/product/314783.html

    本書(shū)是“Linux與自由軟件資源叢書(shū)”之一。目前Linux系統(tǒng)已很普及,但是介紹在Linux上進(jìn)行開(kāi)發(fā)的書(shū)籍并不多,本書(shū)的Linux上進(jìn)行應(yīng)用開(kāi)發(fā)提供了詳細(xì)的參考資料。內(nèi)容包括Linux開(kāi)發(fā)環(huán)境、Linux編程的入門知識(shí)、系統(tǒng)和網(wǎng)絡(luò)編程、多線程程序設(shè)計(jì)、控制臺(tái)編程、X Window系統(tǒng)編程、國(guó)際化編程知識(shí)等。本書(shū)內(nèi)容豐富、實(shí)用性強(qiáng),附帶 ...

    Red HatLINUX 核心技術(shù)精解第二版(附盤(pán))

    http://book.jqcq.com/product/311825.html

    Linux是一個(gè)性能可以與商業(yè)x86 UNIX操作系統(tǒng)相提并論的32位操作系統(tǒng).本書(shū)全面介紹了Linux的安裝和使用技術(shù),包括Linux的安裝和配置,Linux的運(yùn)行,在Linux中使用各種外設(shè),以及Linux的其他內(nèi)容,如用SLIP和PPP撥號(hào)上網(wǎng),將Linux用作Internet主機(jī),在Linux上運(yùn)行WWW,商務(wù)的運(yùn)作,開(kāi)發(fā)軟件及X編程等.

    而GCC是你必須掌握的編譯器,VC也不例外。

    GCC技術(shù)參考大全

    http://book.jqcq.com/product/378731.html

    GCC(GNU編譯程序集合)是目前最重要、應(yīng)用最廣的開(kāi)放源代碼軟件。在本書(shū)中,專家Arthur Griffith提供了大量關(guān)于這種開(kāi)源軟件的信息,教您學(xué)會(huì)使用GCC為幾乎所有的平臺(tái)和語(yǔ)言開(kāi)發(fā)及部署各類軟件。本書(shū)分為3個(gè)部分。第1部分,“自由軟件編譯程序”,介紹了編譯程序的一些基礎(chǔ)知識(shí),以及一些可以用來(lái)下載和安裝編譯程序的指 ...

    C++面向?qū)ο蟪绦蛟O(shè)計(jì)題解與上機(jī)指導(dǎo)

    http://book.jqcq.com/product/584574.html

    GCC在DOS/Windows平臺(tái)上的版本DJGPP(以及與之配合使用的集成軟件開(kāi)發(fā)環(huán)境RHIDE);上機(jī)實(shí)驗(yàn)內(nèi)容與安排,這部分提出了上機(jī)實(shí)驗(yàn)的指導(dǎo)思想和上機(jī)實(shí)驗(yàn)的內(nèi)容與安排,供教學(xué)參考。隨本書(shū)贈(zèng)送的光盤(pán)中包括《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》一書(shū)中的全部例題程序,各章習(xí)題解答的程序以及 DOS/Windows環(huán)境下的GCC版本(DJGPP及其配套 ...

    掌握了這些東西是不夠的,你還必須學(xué)會(huì)服務(wù)器方面游戲邏輯的編寫(xiě),因而要掌握腳本語(yǔ)言的使用,在這方面,一般使用LUA,PYTHON和RUBY來(lái)寫(xiě)。

    學(xué)習(xí)Python:第2版(影印版)

    http://book.jqcq.com/product/851923.html

    Python是流行、開(kāi)源、面向?qū)ο蟮木幊陶Z(yǔ)言,既可以用于編寫(xiě)單機(jī)運(yùn)行的程序也可以編寫(xiě)腳本程序,具有可移植、強(qiáng)大、易用等特點(diǎn)。跟隨專業(yè)教師學(xué)習(xí)是最快捷的掌握此語(yǔ)言的方式。新版的《學(xué)習(xí)Python))把你帶到Mark Lutz和David Ascher面前,他們是著名的Python專家和培訓(xùn)師,他們的用語(yǔ)親切、組織良好的文章已經(jīng)指導(dǎo)了許多編程� ...

    Programming Ruby中文版(第2版)

    http://book.jqcq.com/product/543520.html

    Ruby是一種跨平臺(tái)、面向?qū)ο蟮膭?dòng)態(tài)類型編程語(yǔ)言。Ruby體現(xiàn)了表達(dá)的一致性和簡(jiǎn)單性,它不僅是一門編程語(yǔ)言,更是表達(dá)想法的一種簡(jiǎn)練方式。它不僅受到廣大程序員的歡迎,無(wú)數(shù)的軟件大師亦為其傾倒。Programming Ruby是關(guān)于Ruby語(yǔ)言的一本權(quán)威著作,也被稱為PickAxe Book(鎬頭書(shū),由封面上的工具得名)。本書(shū)是它的第2版,其� ...

    我使用PYTHON,這些掌握后,數(shù)據(jù)庫(kù)方面是要有的。

    在LIUNX下一般使用MYSQL和postgresql來(lái)作為數(shù)據(jù)庫(kù):

    MySQL 5權(quán)威指南(第3版)

    http://book.jqcq.com/product/431843.html

    本書(shū)全面深入地介紹了MySQL的功能,主要內(nèi)容包括MySQL、PHP、Apache、Perl等組件的安裝與功能簡(jiǎn)介,mysql等一些重要系統(tǒng)管理工具和用戶操作界面的使用,MySQL數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的基礎(chǔ)知識(shí)與用不同語(yǔ)言設(shè)計(jì)MySQL數(shù)據(jù)庫(kù)的過(guò)程,以及SQL語(yǔ)法、工具、選項(xiàng)、API應(yīng)用指南,最大限度地幫助讀者更快地學(xué)習(xí)和掌握MySQL數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)� ...

    好這些知識(shí)有了后,可以看一些網(wǎng)絡(luò)游戲服務(wù)器是如何編寫(xiě)的,但這方面的書(shū)籍很少,即使出版的也是閃閃咄咄的。不過(guò),我還是找到一本,非常的不錯(cuò)。詳細(xì)地講解了游戲的邏輯的實(shí)現(xiàn)。

    MUD游戲編程(配光盤(pán)) MUD游戲編程(配光盤(pán))

    http://book.jqcq.com/product/584461.html

    本書(shū)從網(wǎng)絡(luò)基本知識(shí)入手,全面闡述了如何開(kāi)發(fā)純文字MUD游戲。并通過(guò)構(gòu)建SimpleMUD和BetterMUD這兩個(gè)MUD,重點(diǎn)講述了如何實(shí)現(xiàn)MUD。本書(shū)分為4大部分。第1部分介紹了計(jì)算機(jī)網(wǎng)絡(luò)的基本知識(shí)、Winsock/Berkeley Sockets API以及多線程的概念;展示了本書(shū)所用的基本庫(kù)BasicLib中的所有類和函數(shù);創(chuàng)建了一個(gè)套接字庫(kù)SocketLib;介 ...

    最后介紹相關(guān)網(wǎng)站:

    一個(gè)開(kāi)源的網(wǎng)絡(luò)游戲,你可以從中看出游戲服務(wù)器的編寫(xiě)方法:

    http://themanaworld.org

    游戲開(kāi)發(fā)交流:

    http://www.gameres.com

    其它,你可以搜索這些關(guān)鍵字: RAKNET,OPENTNL。

    希望有用!

    以上是服務(wù)器的,如果是客戶端的話,就更多了。

    四、我想學(xué)編程

    編程

    這是每個(gè)游戲編程FAQ里都有的問(wèn)題。這個(gè)問(wèn)題每星期都會(huì)在游戲開(kāi)發(fā)論壇上被問(wèn)上好幾次。這是個(gè)很好的問(wèn)題,但是,沒(méi)人能給出簡(jiǎn)單的答案。在某些應(yīng)用程序中,總有一些計(jì)算機(jī)語(yǔ)言優(yōu)于其他語(yǔ)言。下面是幾種用于編寫(xiě)游戲的主要編程語(yǔ)言的介紹及其優(yōu)缺點(diǎn)。希望這篇文章能幫助你做出決定。

    1、C語(yǔ)言

    如果說(shuō)FORTRAN和COBOL是第一代高級(jí)編譯語(yǔ)言,那么C語(yǔ)言就是它們的孫子輩。C語(yǔ)言是Dennis Ritchie在七十年代創(chuàng)建的,它功能更強(qiáng)大且與ALGOL保持更連續(xù)的繼承性,而ALGOL則是COBOL和FORTRAN的結(jié)構(gòu)化繼承者。C語(yǔ)言被設(shè)計(jì)成一個(gè)比它的前輩更精巧、更簡(jiǎn)單的版本,它適于編寫(xiě)系統(tǒng)級(jí)的程序,比如操作系統(tǒng)。在此之前,操作系統(tǒng)是使用匯編語(yǔ)言編寫(xiě)的,而且不可移植。C語(yǔ)言是第一個(gè)使得系統(tǒng)級(jí)代碼移植成為可能的編程語(yǔ)言。

    C語(yǔ)言支持結(jié)構(gòu)化編程,也就是說(shuō)C的程序被編寫(xiě)成一些分離的函數(shù)呼叫(調(diào)用)的集合,這些呼叫是自上而下運(yùn)行,而不像一個(gè)單獨(dú)的集成塊的代碼使用GOTO語(yǔ)句控制流程。因此,C程序比起集成性的FORTRAN及COBOL的“空心粉式代碼”代碼要簡(jiǎn)單得多。事實(shí)上,C仍然具有GOTO語(yǔ)句,不過(guò)它的功能被限制了,僅當(dāng)結(jié)構(gòu)化方案非常復(fù)雜時(shí)才建議使用。

    正由于它的系統(tǒng)編程根源,將C和匯編語(yǔ)言進(jìn)行結(jié)合是相當(dāng)容易的。函數(shù)調(diào)用接口非常簡(jiǎn)單,而且匯編語(yǔ)言指令還能內(nèi)嵌到C代碼中,所以,不需要連接獨(dú)立的匯編模塊。

    優(yōu)點(diǎn):有益于編寫(xiě)小而快的程序。很容易與匯編語(yǔ)言結(jié)合。具有很高的標(biāo)準(zhǔn)化,因此其他平臺(tái)上的各版本非常相似。

    缺點(diǎn):不容易支持面向?qū)ο蠹夹g(shù)。語(yǔ)法有時(shí)會(huì)非常難以理解,并造成濫用。

    移植性:C語(yǔ)言的核心以及ANSI函數(shù)調(diào)用都具有移植性,但僅限于流程控制、內(nèi)存管理和簡(jiǎn)單的文件處理。其他的東西都跟平臺(tái)有關(guān)。比如說(shuō),為Windows和Mac開(kāi)發(fā)可移植的程序,用戶界面部分就需要用到與系統(tǒng)相關(guān)的函數(shù)調(diào)用。這一般意味著你必須寫(xiě)兩次用戶界面代碼,不過(guò)還好有一些庫(kù)可以減輕工作量。

    用C語(yǔ)言編寫(xiě)的游戲:非常非常多。

    資料:C語(yǔ)言的經(jīng)典著作是《The C Programming Language》,它經(jīng)過(guò)多次修改,已經(jīng)擴(kuò)展到最初的三倍大,但它仍然是介紹C的優(yōu)秀書(shū)本。一本極好的教程是《The Waite Group's C Primer Plus》。

    2、C++

    C++語(yǔ)言是具有面向?qū)ο筇匦缘腃語(yǔ)言的繼承者。面向?qū)ο缶幊?,或稱OOP是結(jié)構(gòu)化編程的下一步。OO程序由對(duì)象組成,其中的對(duì)象是數(shù)據(jù)和函數(shù)離散集合。有許多可用的對(duì)象庫(kù)存在,這使得編程簡(jiǎn)單得只需要將一些程序“建筑材料”堆在一起(至少理論上是這樣)。比如說(shuō),有很多的GUI和數(shù)據(jù)庫(kù)的庫(kù)實(shí)現(xiàn)為對(duì)象的集合。

    C++總是辯論的主題,尤其是在游戲開(kāi)發(fā)論壇里。有幾項(xiàng)C++的功能,比如虛擬函數(shù),為函數(shù)呼叫的決策制定增加了一個(gè)額外層次,批評(píng)家很快指出C++程序?qū)⒆兊帽认嗤δ艿腃程序來(lái)得大和慢。C++的擁護(hù)者則認(rèn)為,用C寫(xiě)出與虛擬函數(shù)等價(jià)的代碼同樣會(huì)增加開(kāi)支。這將是一個(gè)還在進(jìn)行,而且不可能很快得出結(jié)論的爭(zhēng)論。

    我認(rèn)為,C++的額外開(kāi)支只是使用更好的語(yǔ)言的小付出。同樣的爭(zhēng)論發(fā)生在六十年代高級(jí)程序語(yǔ)言如COBOL和FORTRAN開(kāi)始取代匯編成為語(yǔ)言所選的時(shí)候。批評(píng)家正確的指出使用高級(jí)語(yǔ)言編寫(xiě)的程序天生就比手寫(xiě)的匯編語(yǔ)言來(lái)得慢,而且必然如此。而高級(jí)語(yǔ)言支持者認(rèn)為這么點(diǎn)小小的性能損失是值得的,因?yàn)镃OBOL和FORTRAN程序更容易編寫(xiě)和維護(hù)。

    優(yōu)點(diǎn):組織大型程序時(shí)比C語(yǔ)言好得多。很好的支持面向?qū)ο髾C(jī)制。通用數(shù)據(jù)結(jié)構(gòu),如鏈表和可增長(zhǎng)的陣列組成的庫(kù)減輕了由于處理低層細(xì)節(jié)的負(fù)擔(dān)。

    缺點(diǎn):非常大而復(fù)雜。與C語(yǔ)言一樣存在語(yǔ)法濫用問(wèn)題。比C慢。大多數(shù)編譯器沒(méi)有把整個(gè)語(yǔ)言正確的實(shí)現(xiàn)。

    移植性:比C語(yǔ)言好多了,但依然不是很樂(lè)觀。因?yàn)樗哂信cC語(yǔ)言相同的缺點(diǎn),大多數(shù)可移植性用戶界面庫(kù)都使用C++對(duì)象實(shí)現(xiàn)。

    使用C++編寫(xiě)的游戲:非常非常多。大多數(shù)的商業(yè)游戲是使用C或C++編寫(xiě)的。

    資料:最新版的《The C++ Programming Language》非常好。作為教程,有兩個(gè)陣營(yíng),一個(gè)假定你知道C,另外一個(gè)假定你不知道。到目前為止,最好的C++教程是《Who's Afraid of C++》,如果你已經(jīng)熟知C,那么試一下《Teach Yourself C++》。

    3、我該學(xué)習(xí)C++或是該從C開(kāi)始

    我不喜歡這種說(shuō)法,但它是繼“我該使用哪門語(yǔ)言”之后最經(jīng)常被問(wèn)及的問(wèn)題。很不幸,不存在標(biāo)準(zhǔn)答案。你可以自學(xué)C并使用它來(lái)寫(xiě)程序,從而節(jié)省一大堆的時(shí)間,不過(guò)使用這種方法有兩個(gè)弊端:

    你將錯(cuò)過(guò)那些面向?qū)ο蟮闹R(shí),因?yàn)樗赡茉谀愕挠螒蛑惺沟脭?shù)據(jù)建模更有效率的東西。

    最大的商業(yè)游戲,包括第一人稱射擊游戲很多并沒(méi)有使用C++。但是,這些程序的作者即使使用老的C的格式,他們通常堅(jiān)持使用面向?qū)ο缶幊碳夹g(shù)。如果你只想學(xué)C,至少要自學(xué)OO(面向?qū)ο螅┚幊碳夹g(shù)。OO是仿真(游戲)的完美方法,如果你不學(xué)習(xí)OO,你將不得不“辛苦”的工作。

    4、匯編語(yǔ)言

    顯然,匯編是第一個(gè)計(jì)算機(jī)語(yǔ)言。匯編語(yǔ)言實(shí)際上是你計(jì)算機(jī)處理器實(shí)際運(yùn)行的指令的命令形式表示法。這意味著你將與處理器的底層打交道,比如寄存器和堆棧。如果你要找的是類英語(yǔ)且有相關(guān)的自我說(shuō)明的語(yǔ)言,這不是你想要的。

    確切的說(shuō),任何你能在其他語(yǔ)言里做到的事情,匯編都能做,只是不那么簡(jiǎn)單 — 這是當(dāng)然,就像說(shuō)你既可以開(kāi)車到某個(gè)地方,也可以走路去,只是難易之分。話雖不錯(cuò),但是新技術(shù)讓東西變得更易于使用。

    總的來(lái)說(shuō),匯編語(yǔ)言不會(huì)在游戲中單獨(dú)應(yīng)用。游戲使用匯編主要是使用它那些能提高性能的零零碎碎的部分。比如說(shuō),毀滅戰(zhàn)士整體使用C來(lái)編寫(xiě),有幾段繪圖程序使用匯編。這些程序每秒鐘要調(diào)用數(shù)千次,因此,盡可能的簡(jiǎn)潔將有助于提高游戲的性能。而從C里調(diào)用匯編寫(xiě)的函數(shù)是相當(dāng)簡(jiǎn)單的,因此同時(shí)使用兩種語(yǔ)言不成問(wèn)題。

    特別注意:語(yǔ)言的名字叫“匯編”。把匯編語(yǔ)言翻譯成真實(shí)的機(jī)器碼的工具叫“匯編程序”。把這門語(yǔ)言叫做“匯編程序”這種用詞不當(dāng)相當(dāng)普遍,因此,請(qǐng)從這門語(yǔ)言的正確稱呼作為起點(diǎn)出發(fā)。

    優(yōu)點(diǎn):最小、最快的語(yǔ)言。匯編高手能編寫(xiě)出比任何其他語(yǔ)言能實(shí)現(xiàn)的快得多的程序。你將是利用處理器最新功能的第一人,因?yàn)槟隳苤苯邮褂盟鼈儭?/p>

    缺點(diǎn):難學(xué)、語(yǔ)法晦澀、堅(jiān)持效率,造成大量額外代碼 — 不適于心臟虛弱者。

    移植性:接近零。因?yàn)檫@門語(yǔ)言是為一種單獨(dú)的處理器設(shè)計(jì)的,根本沒(méi)移植性可言。如果使用了某個(gè)特殊處理器的擴(kuò)展功能,你的代碼甚至無(wú)法移植到其他同類型的處理器上(比如,AMD的3DNow指令是無(wú)法移植到其它奔騰系列的處理器上的)。

    使用匯編編寫(xiě)的游戲:我不知道有什么商業(yè)游戲是完全用匯編開(kāi)發(fā)的。不過(guò)有些游戲使用匯編完成多數(shù)對(duì)時(shí)間要求苛刻的部分。

    資料:如果你正在找一門匯編語(yǔ)言的文檔,你主要要找芯片的文檔。網(wǎng)絡(luò)上如Intel、AMD、Motorola等有一些關(guān)于它們的處理器的資料。對(duì)于書(shū)籍而言,《Assembly Language: Step-By-Step》是很值得學(xué)習(xí)的。

    5、Pascal語(yǔ)言

    Pascal語(yǔ)言是由Nicolas Wirth在七十年代早期設(shè)計(jì)的,因?yàn)樗麑?duì)于FORTRAN和COBOL沒(méi)有強(qiáng)制訓(xùn)練學(xué)生的結(jié)構(gòu)化編程感到很失望,“空心粉式代碼”變成了規(guī)范,而當(dāng)時(shí)的語(yǔ)言又不反對(duì)它。Pascal被設(shè)計(jì)來(lái)強(qiáng)行使用結(jié)構(gòu)化編程。最初的Pascal被嚴(yán)格設(shè)計(jì)成教學(xué)之用,最終,大量的擁護(hù)者促使它闖入了商業(yè)編程中。當(dāng)Borland發(fā)布IBM PC上的 Turbo Pascal時(shí),Pascal輝煌一時(shí)。集成的編輯器,閃電般的編譯器加上低廉的價(jià)格使之變得不可抵抗,Pascal編程了為MS-DOS編寫(xiě)小程序的首選語(yǔ)言。

    然而時(shí)日不久,C編譯器變得更快,并具有優(yōu)秀的內(nèi)置編輯器和調(diào)試器。Pascal在1990年Windows開(kāi)始流行時(shí)走到了盡頭,Borland放棄了Pascal而把目光轉(zhuǎn)向了為Windows 編寫(xiě)程序的C++。Turbo Pascal很快被人遺忘。

    最后,在1996年,Borland發(fā)布了它的“Visual Basic殺手”— Delphi。它是一種快速的帶華麗用戶界面的 Pascal編譯器。由于不懈努力,它很快贏得了一大群愛(ài)好者。

    基本上,Pascal比C簡(jiǎn)單。雖然語(yǔ)法類似,它缺乏很多C有的簡(jiǎn)潔操作符。這既是好事又是壞事。雖然很難寫(xiě)出難以理解的“聰明”代碼,它同時(shí)也使得一些低級(jí)操作,如位操作變得困難起來(lái)。

    優(yōu)點(diǎn):易學(xué)、平臺(tái)相關(guān)的運(yùn)行(Delphi)非常好。

    缺點(diǎn):“世界潮流”面向?qū)ο蟮腜ascal繼承者(Modula、Oberon)尚未成功。語(yǔ)言標(biāo)準(zhǔn)不被編譯器開(kāi)發(fā)者認(rèn)同。專利權(quán)。

    移植性:很差。語(yǔ)言的功能由于平臺(tái)的轉(zhuǎn)變而轉(zhuǎn)變,沒(méi)有移植性工具包來(lái)處理平臺(tái)相關(guān)的功能。

    使用Pascal編寫(xiě)的游戲:幾個(gè)。DirectX的Delphi組件使得游戲場(chǎng)所變大了。

    資料:查找跟Delphi有關(guān)的資料,請(qǐng)?jiān)L問(wèn):Inprise Delphi page。

    6、Visual Basic

    哈,BASIC?;氐桨耸甏氖鲿r(shí)代,它是程序初學(xué)者的第一個(gè)語(yǔ)言。最初的BASIC形式,雖然易于學(xué)習(xí),卻是可怕的無(wú)組織化,它義無(wú)反顧的使用了GOTO充斥的“空心粉式代碼”。當(dāng)回憶起B(yǎng)ASIC的行號(hào)和GOSUB命令,沒(méi)有幾個(gè)人能止住眼角的淚水。

    快速前進(jìn)到九十年代早期,雖然不是蘋(píng)果公司所希望的巨人,HyperCard仍然是一個(gè)在Windows下無(wú)法比擬的吸引人的小型編程環(huán)境。Windows下的HyperCard克隆品如ToolBook又慢又笨又昂貴。為了與HyperCard一決高下,微軟取得了一個(gè)小巧的名為Thunder編程環(huán)境的許可權(quán),并把它作為Visual Basci 1.0發(fā)布,其用戶界面在當(dāng)時(shí)非常具有新意。這門語(yǔ)言雖然還叫做Basic(不再是全部大寫(xiě)),但更加結(jié)構(gòu)化了,行號(hào)也被去除。實(shí)際上,這門語(yǔ)言與那些內(nèi)置于TRS-80、Apple II及Atari里的舊的ROM BASIC相比,更像是帶Basic風(fēng)格動(dòng)詞的Pascal。

    經(jīng)過(guò)六個(gè)版本,Visual Basic變得非常漂亮。用戶界面發(fā)生了許多變化,但依然保留著“把代碼關(guān)聯(lián)到用戶界面”的主旨。這使得它在與即時(shí)編譯結(jié)合時(shí)變成了一個(gè)快速原型的優(yōu)異環(huán)境。

    優(yōu)點(diǎn):整潔的編輯環(huán)境。易學(xué)、即時(shí)編譯導(dǎo)致簡(jiǎn)單、迅速的原型。大量可用的插件。雖然有第三方的DirectX插件,DirectX 7已準(zhǔn)備提供Visual Basic的支持。

    缺點(diǎn):程序很大,而且運(yùn)行時(shí)需要幾個(gè)巨大的運(yùn)行時(shí)動(dòng)態(tài)連接庫(kù)。雖然表單型和對(duì)話框型的程序很容易完成,要編寫(xiě)好的圖形程序卻比較難。調(diào)用Windows的API程序非常笨拙,因?yàn)閂B的數(shù)據(jù)結(jié)構(gòu)沒(méi)能很好的映射到C中。有OO功能,但卻不是完全的面向?qū)ο?。專利?quán)。

    移植性:非常差。因?yàn)閂isual Basic是微軟的產(chǎn)品,你自然就被局限在他們實(shí)現(xiàn)它的平臺(tái)上。也就是說(shuō),你能得到的選擇是:Windows,Windows或Widnows。當(dāng)然,有一些工具能將VB程序轉(zhuǎn)變成Java。

    使用Visual Basic編寫(xiě)的游戲:一些。有很多使用VB編寫(xiě)的共享游戲,還有一些是商業(yè)性的。

    資料:微軟的VB頁(yè)面有一些信息。

    7、Java

    Java是由Sun最初設(shè)計(jì)用于嵌入程序的可移植性“小C++”。在網(wǎng)頁(yè)上運(yùn)行小程序的想法著實(shí)吸引了不少人的目光,于是,這門語(yǔ)言迅速崛起。事實(shí)證明,Java不僅僅適于在網(wǎng)頁(yè)上內(nèi)嵌動(dòng)畫(huà) — 它是一門極好的完全的軟件編程的小語(yǔ)言?!疤摂M機(jī)”機(jī)制、垃圾回收以及沒(méi)有指針等使它很容易實(shí)現(xiàn)不易崩潰且不會(huì)泄漏資源的可靠程序。

    雖然不是C++的正式續(xù)篇,Java從C++ 中借用了大量的語(yǔ)法。它丟棄了很多C++的復(fù)雜功能,從而形成一門緊湊而易學(xué)的語(yǔ)言。不像C++,Java強(qiáng)制面向?qū)ο缶幊?,要在Java里寫(xiě)非面向?qū)ο蟮某绦蚓拖褚赑ascal里寫(xiě)“空心粉式代碼”一樣困難。

    優(yōu)點(diǎn):二進(jìn)制碼可移植到其他平臺(tái)。程序可以在網(wǎng)頁(yè)中運(yùn)行。內(nèi)含的類庫(kù)非常標(biāo)準(zhǔn)且極其健壯。自動(dòng)分配合垃圾回收避免程序中資源泄漏。網(wǎng)上數(shù)量巨大的代碼例程。

    缺點(diǎn):使用一個(gè)“虛擬機(jī)”來(lái)運(yùn)行可移植的字節(jié)碼而非本地機(jī)器碼,程序?qū)⒈日嬲幾g器慢。有很多技術(shù)(例如“即時(shí)”編譯器)很大的提高了Java的速度,不過(guò)速度永遠(yuǎn)比不過(guò)機(jī)器碼方案。早期的功能,如AWT沒(méi)經(jīng)過(guò)慎重考慮,雖然被正式廢除,但為了保持向后兼容不得不保留。越高級(jí)的技術(shù),造成處理低級(jí)的機(jī)器功能越困難,Sun為這門語(yǔ)言增加新的“受祝?!惫δ艿乃俣葘?shí)在太慢。

    移植性:最好的,但仍未達(dá)到它本應(yīng)達(dá)到的水平。低級(jí)代碼具有非常高的可移植性,但是,很多UI及新功能在某些平臺(tái)上不穩(wěn)定。

    使用Java編寫(xiě)的游戲:網(wǎng)頁(yè)上有大量小的Applet,但僅有一些是商業(yè)性的。有幾個(gè)商業(yè)游戲使用Java作為內(nèi)部腳本語(yǔ)言。

    資料:Sun的官方Java頁(yè)面有一些好的信息。IBM也有一個(gè)非常好的Java頁(yè)面。JavaLobby是一個(gè)關(guān)于Java新聞的最好去處。

    8、創(chuàng)作工具

    上面所提及的編程語(yǔ)言涵蓋了大多數(shù)的商業(yè)游戲。但是也有一個(gè)例外,這個(gè)大游戲由于它的缺席而變得突出。

    “神秘島”。沒(méi)錯(cuò),賣得最好的商業(yè)游戲不是使用以上任何一門語(yǔ)言編的,雖然有人說(shuō)“神秘島”99%是使用 3D建模工具制作的,其根本的編程邏輯是在HyperCard里完成的。

    多數(shù)創(chuàng)作工具有點(diǎn)像Visual Basic,只是它們工作在更高的層次上。大多數(shù)工具使用一些拖拉式的流程圖來(lái)模擬流程控制。很多內(nèi)置解釋的程序語(yǔ)言,但是這些語(yǔ)言都無(wú)法像上面所說(shuō)的單獨(dú)的語(yǔ)言那樣健壯。

    優(yōu)點(diǎn):快速原型 — 如果你的游戲符合工具制作的主旨,你或許能使你的游戲跑得比使用其他語(yǔ)言快。在很多情況下,你可以創(chuàng)造一個(gè)不需要任何代碼的簡(jiǎn)單游戲。使用插件程序,如Shockware及IconAuthor播放器,你可以在網(wǎng)頁(yè)上發(fā)布很多創(chuàng)作工具生成的程序。

    缺點(diǎn):專利權(quán),至于將增加什么功能,你將受到工具制造者的支配。你必須考慮這些工具是否能滿足你游戲的需要,因?yàn)橛泻芏嗍虑槭悄切﹦?chuàng)作工具無(wú)法完成的。某些工具會(huì)產(chǎn)生臃腫得可怕的程序。

    移植性:因?yàn)閯?chuàng)作工具是具有專利權(quán)的,你的移植性以他們提供的功能息息相關(guān)。有些系統(tǒng),如Director可以在幾種平臺(tái)上創(chuàng)作和運(yùn)行,有些工具則在某一平臺(tái)上創(chuàng)作,在多種平臺(tái)上運(yùn)行,還有的是僅能在單一平臺(tái)上創(chuàng)作和運(yùn)行。

    使用創(chuàng)作工具編寫(xiě)的游戲:“神秘島”和其他一些同類型的探險(xiǎn)游戲。所有的Shockwave游戲都在網(wǎng)絡(luò)上。

    資料:Director、HyperCard、SuperCard、IconAuthor、Authorware。

    9、易語(yǔ)言

    ★全中文支持,無(wú)需跨越英語(yǔ)門檻。★全可視化編程,支持所見(jiàn)即所得程序界面設(shè)計(jì)和程序流程編碼?!镏形恼Z(yǔ)句快速錄入。提供多種內(nèi)嵌專用輸入法,徹底解決中文語(yǔ)句輸入速度慢的問(wèn)題。★代碼即文檔。自動(dòng)規(guī)范強(qiáng)制代碼格式轉(zhuǎn)換,任何人編寫(xiě)的任何程序源代碼格式均統(tǒng)一?!飬?shù)引導(dǎo)技術(shù),方便程序語(yǔ)句參數(shù)錄入?!餆o(wú)定義類關(guān)鍵字。所有程序定義部分均采用表格填表方式,用戶無(wú)需記憶此類關(guān)鍵字及其使用格式?!锩罡袷浇y(tǒng)一。所有程序語(yǔ)句調(diào)用格式完全一致。★語(yǔ)法格式自動(dòng)檢查。自動(dòng)檢查并提示所輸入語(yǔ)句的語(yǔ)法格式是否正確,且可自動(dòng)添加各類名稱?!锶烫崾九c幫助。鼠標(biāo)停留立即顯示相關(guān)項(xiàng)目提示。編程時(shí)提示語(yǔ)法格式,調(diào)試時(shí)提示變量當(dāng)前內(nèi)容,隨時(shí)按下F1鍵可得到與當(dāng)前主題相關(guān)詳細(xì)幫助等?!锩Q自動(dòng)管理。用戶修改任一名稱定義,其它所有包含該名稱的程序代碼均自動(dòng)修正。★集成化開(kāi)發(fā)環(huán)境。集界面設(shè)計(jì)、代碼編寫(xiě)、調(diào)試分析、編譯打包等于一體?!飳W(xué)習(xí)資源豐富。詳細(xì)的幫助文件、數(shù)十兆的知識(shí)庫(kù)、數(shù)萬(wàn)用戶的網(wǎng)上論壇、教材已出版發(fā)行……

    10、結(jié)論

    你可能希望得到一個(gè)關(guān)于“我該使用哪種語(yǔ)言”這個(gè)問(wèn)題的更標(biāo)準(zhǔn)的結(jié)論。非常不幸,沒(méi)有一個(gè)對(duì)所有應(yīng)用程序都最佳的解決方案。C適于快而小的程序,但不支持面向?qū)ο蟮木幊?。C++完全支持面向?qū)ο?,但是非常?fù)雜。Visual Basic與Delphi易學(xué),但不可移植且有專利權(quán)。Java有很多簡(jiǎn)潔的功能,但是慢。創(chuàng)作工具可以以最快的速度產(chǎn)生你的程序,但是僅對(duì)某一些類型的程序起作用。最好的方法是決定你要寫(xiě)什么樣的游戲,并選擇對(duì)你的游戲支持最好的語(yǔ)言?!霸囉萌臁钡淖龇ǔ蔀楣I(yè)標(biāo)準(zhǔn)是件好事情。

    以上就是關(guān)于游戲編程教學(xué)相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。


    推薦閱讀:

    什么游戲可以賺錢真實(shí)可靠

    游戲策劃一般是什么專業(yè)(游戲策劃一般是什么專業(yè)的)

    app免費(fèi)游戲排行榜(app免費(fèi)游戲排行榜)

    gpt谷丙轉(zhuǎn)氨酶正常值(gpt谷丙轉(zhuǎn)氨酶臨床意義)

    小組logo設(shè)計(jì)及寓意