注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)游戲設(shè)計(jì)Windows游戲編程大師技巧(第2版)

Windows游戲編程大師技巧(第2版)

Windows游戲編程大師技巧(第2版)

定 價(jià):¥108.00

作 者: (美) André LaMothe 著,沙鷹 譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 多媒體

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787115292483 出版時(shí)間: 2012-11-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 734 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  \Dead or alive, you're coming with me.\—Robocop(電影《機(jī)械戰(zhàn)警》)物換星移,仿佛已經(jīng)是很久以前,我寫(xiě)了一本名為《WINDOWS游戲編程大師技巧》的書(shū)。對(duì)于我來(lái)說(shuō),這本書(shū)提供了一個(gè)絕好的機(jī)會(huì),讓我能夠?qū)崿F(xiàn)去創(chuàng)造某些東西的夙愿——那就是去寫(xiě)出一本能夠教會(huì)讀者如何制作游戲的書(shū)?,F(xiàn)在,已經(jīng)又過(guò)去了幾年,我相信我現(xiàn)在更有經(jīng)驗(yàn),也更聰明了些,并且在這幾年里,我的確又學(xué)會(huì)了很多游戲制作的竅門(mén),哈哈。這本書(shū),將會(huì)續(xù)寫(xiě)和彌補(bǔ)上一本書(shū)所沒(méi)有涉及的內(nèi)容。游戲編程的每一個(gè)關(guān)鍵主題都將涵蓋其中。我將以我所學(xué),傾囊相授。當(dāng)然,通常我不會(huì)假設(shè)讀者已經(jīng)是一個(gè)編程大師,或者已經(jīng)知道如何制作游戲。這本書(shū)將適合高級(jí)游戲編程人員閱讀;同時(shí),初學(xué)者也同樣適用。雖然如此,本書(shū)將以較快的節(jié)奏深化內(nèi)容,所以,不可掉以輕心?,F(xiàn)今,可能是躋身游戲行業(yè)的人們,有史以來(lái)所經(jīng)歷的最酷的時(shí)代。我是說(shuō),我們現(xiàn)在可以用所擁有的高科技去創(chuàng)造以假亂真的游戲世界!想像一下,未來(lái)的游戲,將會(huì)是何面貌?但是,所有這些高新技術(shù)并非輕易就能掌握,艱辛的努力必不可少。近來(lái),游戲制作所需要掌握的技能已明顯提高。但是,如果你正閱讀這段文字,或許如我所料,你就是那些樂(lè)于迎接挑戰(zhàn)的人中的一員。我要說(shuō),你來(lái)對(duì)了地方,作出了正確的選擇,因?yàn)楫?dāng)你掌握了本書(shū)內(nèi)容,你將能夠制作在電腦上運(yùn)行的全3D,有紋理映射的,具有專(zhuān)業(yè)水平的光照效果的視頻游戲。此外,你還將懂得蘊(yùn)涵于游戲之中的人工智能、物理建模、游戲算法和2D/3D圖形學(xué)的基本原理。同時(shí),你將能夠在現(xiàn)在和將來(lái)運(yùn)用3D硬件。你將學(xué)到什么通過(guò)本書(shū)你將學(xué)到數(shù)以TB計(jì)的信息!我決心要往你的大腦里面塞入如此之多的信息以至于可能會(huì)有些信息溢出來(lái)。認(rèn)真地說(shuō),本書(shū)覆蓋了全部必要的元素,來(lái)創(chuàng)建基于Windows9X/NT/XP/2000平臺(tái)的PC游戲:? Win32編程? DirectX基礎(chǔ)知識(shí)? 2D圖形和算法? 游戲編程技術(shù)和數(shù)據(jù)結(jié)構(gòu)? 多線(xiàn)程編程? 人工智能? 物理建模? 使用3D加速硬件設(shè)備(見(jiàn)配套光盤(pán))除了這些,還有更多其它的內(nèi)容……本書(shū)主要討論游戲編程。光盤(pán)上帶有兩套完整的在線(xiàn)電子版書(shū)籍,涉及Direct3D直接模式和General 3DGraphic。應(yīng)當(dāng)具備的基礎(chǔ)知識(shí)本書(shū)假定你可以編程。如果你還不懂如何編寫(xiě)C語(yǔ)言程序,那么閱讀本書(shū)的某些部分可能會(huì)使你感到相當(dāng)困惑。會(huì)讓C語(yǔ)言程序員感到心神不安的是,本書(shū)中又有一定的范例程序是用C++寫(xiě)的。不過(guò)別擔(dān)心,在我要做任何古怪的事情以前,我將提醒你?;蛟S,如果你需要關(guān)于C++程序設(shè)計(jì)的速成課程,本書(shū)的附錄D可作為一份C++入門(mén)讀本來(lái)使用。基本上本書(shū)只在用到DirectX的場(chǎng)合里才使用C++。然而,我還是決定要在本書(shū)中稍微多用一些C++。因?yàn)樵谟螒蚓幊讨杏腥绱酥嗟氖虑榭捎妹嫦驅(qū)ο蟮姆椒▉?lái)概括,若是硬要把它們?cè)O(shè)計(jì)成C風(fēng)格的結(jié)構(gòu)那簡(jiǎn)直是褻瀆了它們。我的底線(xiàn)是:如果你能用C編程,很好。如果你能夠用C和C++編程,那就太好了,閱讀本書(shū)對(duì)你來(lái)說(shuō)完全不成問(wèn)題。眾所周知,計(jì)算機(jī)程序是由邏輯和數(shù)學(xué)組成。而3D視頻游戲很強(qiáng)調(diào)數(shù)學(xué)部分!3D圖形學(xué)里的內(nèi)容幾乎全部涉及數(shù)學(xué)。幸運(yùn)的是那是有趣的數(shù)學(xué)(的確,數(shù)學(xué)本身可以很有趣)。只要了解一些基本的代數(shù)和幾何知識(shí)就可以了。我還將教你關(guān)于矢量和矩陣的知識(shí)。只要會(huì)做加、減、乘、除運(yùn)算,就可以理解這里90%以上的內(nèi)容,而不一定要親自進(jìn)行推導(dǎo)。畢竟,只要能夠應(yīng)用文章中的代碼,那就夠了。上面所列舉的就是所有你應(yīng)當(dāng)具備的基礎(chǔ)知識(shí)。當(dāng)然,你最好告訴所有的朋友,在大約兩年之內(nèi)他們都將看不到你,因?yàn)樵谶@段時(shí)間中,你將非常忙碌。但是在你理解制作游戲程序后,就可以盡情享受了!本書(shū)的組織《Windows游戲編程大師技巧,第二版》共分為四大部分,計(jì)15章和6個(gè)附錄。第一部分 Windows編程基礎(chǔ)第一章 無(wú)盡之旅第二章 Windows編程模型第三章 高級(jí)Windows編程第四章 Windows GDI、控件和突發(fā)奇想第二部分 DirectX和2D基礎(chǔ)第五章 DirectX基礎(chǔ)和令人生畏的COM第六章 首次接觸:DirectDraw第七章 高級(jí)DirectDraw和位圖圖形第八章 矢量光柵化及2D轉(zhuǎn)換第九章 利用DirectInput和力反饋進(jìn)行輸入第十章 用DirectSound和DirectMusic演奏樂(lè)曲第三部分 核心游戲編程第十一章 算法、數(shù)據(jù)結(jié)構(gòu)、內(nèi)存管理及多線(xiàn)程第十二章 人工智能在游戲中的運(yùn)用第十三章 基本物理建模第十四章綜合運(yùn)用第四部分 附錄附錄A CD上的內(nèi)容附錄B 安裝DirectX和使用C/C++編譯器附錄C 三角函數(shù)和矢量附錄D C++基礎(chǔ)附錄E 游戲編程資源附錄F ASCII表安裝本書(shū)的配套光盤(pán)本書(shū)的配套光盤(pán)包含本書(shū)所有程序源碼、可執(zhí)行文件、示例程序、美術(shù)素材、3D建模工具、音效,和補(bǔ)充的技術(shù)文章。目錄結(jié)構(gòu)如下:CD-DRIVE:\\T3DGAMER1\\SOURCE\\ T3DCHAP01\\ T3DCHAP02\\.. T3DCHAP14\\ T3DCHAP15\\APPLICATIONS\\ARTWORK\\BITMAPS\\MODELS\\SOUND\\ WAVES\\ MIDI\\DIRECTX\\GAMES\\ARTICLES\\ONLINEBOOKS\\ENGINES\\每一個(gè)主要目錄下含有所需要的具體數(shù)據(jù)。下面是更詳細(xì)的分類(lèi):T3DGAMER1——含有所有其他目錄的根目錄。請(qǐng)首先閱讀一下README.TXT文件以便了解任何有關(guān)本書(shū)付印之后才作的改動(dòng)。SOURCE——含有本書(shū)所有的按章節(jié)排列的源代碼目錄。只要將整個(gè)SOURCE\\目錄全部復(fù)制到硬盤(pán)上,就可以從硬盤(pán)上運(yùn)行。DEMOS——含有許多公司授權(quán)我放在本書(shū)配套光盤(pán)里的演示版軟件。ARTWORK——包含可以在你的程序中免費(fèi)使用的公開(kāi)的美術(shù)素材。SOUND——包含可以在你的程序中免費(fèi)使用的公開(kāi)的音效和音樂(lè)素材。DIRECTX——包含最新版本的DirectX SDK。GAMES——包含大量我覺(jué)得非常不錯(cuò)的2D和3D的共享游戲軟件。ARTICLES——含有游戲編程領(lǐng)域中的大師們撰寫(xiě)的可給人啟迪的文章。ONLINEBOOKS——含有一些在線(xiàn)電子版書(shū)籍,涉及Direct3D直接模式和General 3D Graphic。ENGINES——含有幾種試用版本的3D引擎。本書(shū)的配套光盤(pán)由于包含許多不同類(lèi)型的程序和數(shù)據(jù),因而沒(méi)有通用安裝程序。你需要自己安裝。但是,在大多數(shù)情況下,只要將SOURCE\\目錄復(fù)制到硬盤(pán)上,然后在里面運(yùn)行就可以了。對(duì)于其他程序和數(shù)據(jù),當(dāng)你需要時(shí)安裝就可以了。安裝DirectX本書(shū)的配套光盤(pán)內(nèi)你唯一必須安裝的重要部份是DirectX的SDK和運(yùn)行時(shí)文件(RuntimeFile)。安裝程序位于DIRECTX\\目錄,與解釋最新改動(dòng)的README.TXT 文件在一起。注意你至少要安裝DirectX 8.0SDK,如果你能全面的利用這些光盤(pán)就更好。如果你不確定系統(tǒng)里是否有最新的文件,請(qǐng)運(yùn)行安裝程序,系統(tǒng)會(huì)提示你。編譯本書(shū)的程序我在Microsoft Visual C++ 5.0/6.0的環(huán)境下編寫(xiě)了本書(shū)所含的程序代碼。多數(shù)情況下這些程序能以任一個(gè)與Win32兼容的編譯器來(lái)編譯通過(guò)。然而,我還是推薦Microsoft VC++,因?yàn)橛盟鬟@類(lèi)工作最有效率。如果你對(duì)你的編譯器的集成開(kāi)發(fā)環(huán)境(IDE)還不熟悉,編譯Windows程序的時(shí)候你一準(zhǔn)會(huì)遇到大麻煩。所以請(qǐng)盡管花些時(shí)間來(lái)熟悉和使用你的編譯器。你至少要懂得如何編譯一個(gè)”HelloWorld”的控制臺(tái)(console)程序或相似的小程序,然后你才能投入地繼續(xù)編譯其他程序。要編譯生成Windows Win32 .EXE程序,應(yīng)當(dāng)將你的應(yīng)用程序工程的目標(biāo)程序設(shè)定為Win32.EXE再進(jìn)行編譯。但是要?jiǎng)?chuàng)建DirectX程序的話(huà),必須在工程中包含DirectX輸入庫(kù)。你可能認(rèn)為只要將DirectX庫(kù)添加到你的頭文件包含路徑(Includepath)中就可以了,但那樣不行。為了避免麻煩,將DirectX的眾多.LIB庫(kù)文件手動(dòng)包含到工程中或者是工作空間(Workspace)中。在安裝的DirectXSDK主目錄下的LIB\\目錄下可以找到.LIB文件。這樣就不會(huì)導(dǎo)致任何連接錯(cuò)誤。大部分情況下,應(yīng)當(dāng)還需要下面這些庫(kù):DDRAW.LIB DirectDraw輸入庫(kù)DINPUT.LIB DirectInput輸入庫(kù)DINPUT8.LIB DirectInput8輸入庫(kù)DSOUND.LIB DirectSound輸入庫(kù)D3DIM.LIB Direct3D直接模式(或立即模式)輸入庫(kù)DXGUID.LIB DirectX GUID庫(kù)WINMM.LIB Windows多媒體擴(kuò)展庫(kù)對(duì)于上述文件,我們將在具體學(xué)習(xí)時(shí)再詳細(xì)介紹,但是當(dāng)連接程序報(bào)錯(cuò)說(shuō)“未知的符號(hào)(UnresolvedSymbol)”時(shí)應(yīng)記起這些庫(kù)。我不希望收到初學(xué)程序員任何關(guān)于這問(wèn)題的電子郵件。除了DirectX .LIB文件之外,還要在標(biāo)題搜索路徑中包含DirectX.H頭文件,這一點(diǎn)同樣要牢記在心。還要確認(rèn)將DirectXSDK目錄放在搜索路徑列表的第一位,因?yàn)樵S多C++編譯器自己帶有舊版本的DirectX,編譯器可能會(huì)在自己的INCLUDE\\目錄下找到舊版本的頭文件,而使用這些頭文件是錯(cuò)誤的。正確的位置是DirectXSDK的include目錄,即于DirectX SDK安裝目錄下的INCLUDE\\子目錄。最后,如果使用Borland產(chǎn)品,要確認(rèn)使用DirectX .LIB文件的Borland版本。該文件位于DirectXSDK安裝目錄下的Borland\\目錄。關(guān)于第二版《Windows游戲編程大師技巧》的此次修訂更新了第一版中的內(nèi)容。更新是多方面的,諸如清除拼寫(xiě)和技術(shù)錯(cuò)誤,并且加入新的內(nèi)容,使得可用DirectX的最新版本來(lái)配合編譯本書(shū)所帶的程序代碼(在這一版的DirectX里微軟公司改編并移除了DirectDraw,真不知道他們是怎么想的?。_@新版書(shū)包括關(guān)于16位RGB 高彩模式的更多細(xì)節(jié),將在DirectX 8.0下通過(guò)編譯,還有一個(gè)新章節(jié)專(zhuān)門(mén)討論文本解析(textparsing),此外貫穿全書(shū)更有新增的解釋??傊@是《Windows游戲編程大師技巧》的一個(gè)更加清楚,更加完全的版本。本書(shū)主要討論游戲程序設(shè)計(jì);因此,涉及的DirectX僅限于讓讀者充分理解游戲編程中的各個(gè)主題。一般情況下,我的原則是讓事情盡可能簡(jiǎn)單。DirectDraw和Direct3D的合并對(duì)3D應(yīng)用程序來(lái)講是好事,但是對(duì)2D游戲和教學(xué)來(lái)說(shuō)就有點(diǎn)過(guò)于強(qiáng)大和復(fù)雜了。因此,我在未發(fā)生改變的地方使用DirectX8.0,同時(shí)仍然使用DirectDraw7.0來(lái)簡(jiǎn)化說(shuō)明。畢竟,DirectX只是一些技術(shù),而人們總是得為特定應(yīng)用程序挑選合適的技術(shù)來(lái)用。

作者簡(jiǎn)介

  \Dead or alive, you're coming with me.\—Robocop(電影《機(jī)械戰(zhàn)警》)物換星移,仿佛已經(jīng)是很久以前,我寫(xiě)了一本名為《WINDOWS游戲編程大師技巧》的書(shū)。對(duì)于我來(lái)說(shuō),這本書(shū)提供了一個(gè)絕好的機(jī)會(huì),讓我能夠?qū)崿F(xiàn)去創(chuàng)造某些東西的夙愿——那就是去寫(xiě)出一本能夠教會(huì)讀者如何制作游戲的書(shū)。現(xiàn)在,已經(jīng)又過(guò)去了幾年,我相信我現(xiàn)在更有經(jīng)驗(yàn),也更聰明了些,并且在這幾年里,我的確又學(xué)會(huì)了很多游戲制作的竅門(mén),哈哈。這本書(shū),將會(huì)續(xù)寫(xiě)和彌補(bǔ)上一本書(shū)所沒(méi)有涉及的內(nèi)容。游戲編程的每一個(gè)關(guān)鍵主題都將涵蓋其中。我將以我所學(xué),傾囊相授。當(dāng)然,通常我不會(huì)假設(shè)讀者已經(jīng)是一個(gè)編程大師,或者已經(jīng)知道如何制作游戲。這本書(shū)將適合高級(jí)游戲編程人員閱讀;同時(shí),初學(xué)者也同樣適用。雖然如此,本書(shū)將以較快的節(jié)奏深化內(nèi)容,所以,不可掉以輕心。現(xiàn)今,可能是躋身游戲行業(yè)的人們,有史以來(lái)所經(jīng)歷的最酷的時(shí)代。我是說(shuō),我們現(xiàn)在可以用所擁有的高科技去創(chuàng)造以假亂真的游戲世界!想像一下,未來(lái)的游戲,將會(huì)是何面貌?但是,所有這些高新技術(shù)并非輕易就能掌握,艱辛的努力必不可少。近來(lái),游戲制作所需要掌握的技能已明顯提高。但是,如果你正閱讀這段文字,或許如我所料,你就是那些樂(lè)于迎接挑戰(zhàn)的人中的一員。我要說(shuō),你來(lái)對(duì)了地方,作出了正確的選擇,因?yàn)楫?dāng)你掌握了本書(shū)內(nèi)容,你將能夠制作在電腦上運(yùn)行的全3D,有紋理映射的,具有專(zhuān)業(yè)水平的光照效果的視頻游戲。此外,你還將懂得蘊(yùn)涵于游戲之中的人工智能、物理建模、游戲算法和2D/3D圖形學(xué)的基本原理。同時(shí),你將能夠在現(xiàn)在和將來(lái)運(yùn)用3D硬件。你將學(xué)到什么通過(guò)本書(shū)你將學(xué)到數(shù)以TB計(jì)的信息!我決心要往你的大腦里面塞入如此之多的信息以至于可能會(huì)有些信息溢出來(lái)。認(rèn)真地說(shuō),本書(shū)覆蓋了全部必要的元素,來(lái)創(chuàng)建基于Windows9X/NT/XP/2000平臺(tái)的PC游戲:? Win32編程? DirectX基礎(chǔ)知識(shí)? 2D圖形和算法? 游戲編程技術(shù)和數(shù)據(jù)結(jié)構(gòu)? 多線(xiàn)程編程? 人工智能? 物理建模? 使用3D加速硬件設(shè)備(見(jiàn)配套光盤(pán))除了這些,還有更多其它的內(nèi)容……本書(shū)主要討論游戲編程。光盤(pán)上帶有兩套完整的在線(xiàn)電子版書(shū)籍,涉及Direct3D直接模式和General 3DGraphic。應(yīng)當(dāng)具備的基礎(chǔ)知識(shí)本書(shū)假定你可以編程。如果你還不懂如何編寫(xiě)C語(yǔ)言程序,那么閱讀本書(shū)的某些部分可能會(huì)使你感到相當(dāng)困惑。會(huì)讓C語(yǔ)言程序員感到心神不安的是,本書(shū)中又有一定的范例程序是用C++寫(xiě)的。不過(guò)別擔(dān)心,在我要做任何古怪的事情以前,我將提醒你?;蛟S,如果你需要關(guān)于C++程序設(shè)計(jì)的速成課程,本書(shū)的附錄D可作為一份C++入門(mén)讀本來(lái)使用?;旧媳緯?shū)只在用到DirectX的場(chǎng)合里才使用C++。然而,我還是決定要在本書(shū)中稍微多用一些C++。因?yàn)樵谟螒蚓幊讨杏腥绱酥嗟氖虑榭捎妹嫦驅(qū)ο蟮姆椒▉?lái)概括,若是硬要把它們?cè)O(shè)計(jì)成C風(fēng)格的結(jié)構(gòu)那簡(jiǎn)直是褻瀆了它們。我的底線(xiàn)是:如果你能用C編程,很好。如果你能夠用C和C++編程,那就太好了,閱讀本書(shū)對(duì)你來(lái)說(shuō)完全不成問(wèn)題。眾所周知,計(jì)算機(jī)程序是由邏輯和數(shù)學(xué)組成。而3D視頻游戲很強(qiáng)調(diào)數(shù)學(xué)部分!3D圖形學(xué)里的內(nèi)容幾乎全部涉及數(shù)學(xué)。幸運(yùn)的是那是有趣的數(shù)學(xué)(的確,數(shù)學(xué)本身可以很有趣)。只要了解一些基本的代數(shù)和幾何知識(shí)就可以了。我還將教你關(guān)于矢量和矩陣的知識(shí)。只要會(huì)做加、減、乘、除運(yùn)算,就可以理解這里90%以上的內(nèi)容,而不一定要親自進(jìn)行推導(dǎo)。畢竟,只要能夠應(yīng)用文章中的代碼,那就夠了。上面所列舉的就是所有你應(yīng)當(dāng)具備的基礎(chǔ)知識(shí)。當(dāng)然,你最好告訴所有的朋友,在大約兩年之內(nèi)他們都將看不到你,因?yàn)樵谶@段時(shí)間中,你將非常忙碌。但是在你理解制作游戲程序后,就可以盡情享受了!本書(shū)的組織《Windows游戲編程大師技巧,第二版》共分為四大部分,計(jì)15章和6個(gè)附錄。第一部分 Windows編程基礎(chǔ)第一章 無(wú)盡之旅第二章 Windows編程模型第三章 高級(jí)Windows編程第四章 Windows GDI、控件和突發(fā)奇想第二部分 DirectX和2D基礎(chǔ)第五章 DirectX基礎(chǔ)和令人生畏的COM第六章 首次接觸:DirectDraw第七章 高級(jí)DirectDraw和位圖圖形第八章 矢量光柵化及2D轉(zhuǎn)換第九章 利用DirectInput和力反饋進(jìn)行輸入第十章 用DirectSound和DirectMusic演奏樂(lè)曲第三部分 核心游戲編程第十一章 算法、數(shù)據(jù)結(jié)構(gòu)、內(nèi)存管理及多線(xiàn)程第十二章 人工智能在游戲中的運(yùn)用第十三章 基本物理建模第十四章綜合運(yùn)用第四部分 附錄附錄A CD上的內(nèi)容附錄B 安裝DirectX和使用C/C++編譯器附錄C 三角函數(shù)和矢量附錄D C++基礎(chǔ)附錄E 游戲編程資源附錄F ASCII表安裝本書(shū)的配套光盤(pán)本書(shū)的配套光盤(pán)包含本書(shū)所有程序源碼、可執(zhí)行文件、示例程序、美術(shù)素材、3D建模工具、音效,和補(bǔ)充的技術(shù)文章。目錄結(jié)構(gòu)如下:CD-DRIVE:\\T3DGAMER1\\SOURCE\\ T3DCHAP01\\ T3DCHAP02\\.. T3DCHAP14\\ T3DCHAP15\\APPLICATIONS\\ARTWORK\\BITMAPS\\MODELS\\SOUND\\ WAVES\\ MIDI\\DIRECTX\\GAMES\\ARTICLES\\ONLINEBOOKS\\ENGINES\\每一個(gè)主要目錄下含有所需要的具體數(shù)據(jù)。下面是更詳細(xì)的分類(lèi):T3DGAMER1——含有所有其他目錄的根目錄。請(qǐng)首先閱讀一下README.TXT文件以便了解任何有關(guān)本書(shū)付印之后才作的改動(dòng)。SOURCE——含有本書(shū)所有的按章節(jié)排列的源代碼目錄。只要將整個(gè)SOURCE\\目錄全部復(fù)制到硬盤(pán)上,就可以從硬盤(pán)上運(yùn)行。DEMOS——含有許多公司授權(quán)我放在本書(shū)配套光盤(pán)里的演示版軟件。ARTWORK——包含可以在你的程序中免費(fèi)使用的公開(kāi)的美術(shù)素材。SOUND——包含可以在你的程序中免費(fèi)使用的公開(kāi)的音效和音樂(lè)素材。DIRECTX——包含最新版本的DirectX SDK。GAMES——包含大量我覺(jué)得非常不錯(cuò)的2D和3D的共享游戲軟件。ARTICLES——含有游戲編程領(lǐng)域中的大師們撰寫(xiě)的可給人啟迪的文章。ONLINEBOOKS——含有一些在線(xiàn)電子版書(shū)籍,涉及Direct3D直接模式和General 3D Graphic。ENGINES——含有幾種試用版本的3D引擎。本書(shū)的配套光盤(pán)由于包含許多不同類(lèi)型的程序和數(shù)據(jù),因而沒(méi)有通用安裝程序。你需要自己安裝。但是,在大多數(shù)情況下,只要將SOURCE\\目錄復(fù)制到硬盤(pán)上,然后在里面運(yùn)行就可以了。對(duì)于其他程序和數(shù)據(jù),當(dāng)你需要時(shí)安裝就可以了。安裝DirectX本書(shū)的配套光盤(pán)內(nèi)你唯一必須安裝的重要部份是DirectX的SDK和運(yùn)行時(shí)文件(RuntimeFile)。安裝程序位于DIRECTX\\目錄,與解釋最新改動(dòng)的README.TXT 文件在一起。注意你至少要安裝DirectX 8.0SDK,如果你能全面的利用這些光盤(pán)就更好。如果你不確定系統(tǒng)里是否有最新的文件,請(qǐng)運(yùn)行安裝程序,系統(tǒng)會(huì)提示你。編譯本書(shū)的程序我在Microsoft Visual C++ 5.0/6.0的環(huán)境下編寫(xiě)了本書(shū)所含的程序代碼。多數(shù)情況下這些程序能以任一個(gè)與Win32兼容的編譯器來(lái)編譯通過(guò)。然而,我還是推薦Microsoft VC++,因?yàn)橛盟鬟@類(lèi)工作最有效率。如果你對(duì)你的編譯器的集成開(kāi)發(fā)環(huán)境(IDE)還不熟悉,編譯Windows程序的時(shí)候你一準(zhǔn)會(huì)遇到大麻煩。所以請(qǐng)盡管花些時(shí)間來(lái)熟悉和使用你的編譯器。你至少要懂得如何編譯一個(gè)”HelloWorld”的控制臺(tái)(console)程序或相似的小程序,然后你才能投入地繼續(xù)編譯其他程序。要編譯生成Windows Win32 .EXE程序,應(yīng)當(dāng)將你的應(yīng)用程序工程的目標(biāo)程序設(shè)定為Win32.EXE再進(jìn)行編譯。但是要?jiǎng)?chuàng)建DirectX程序的話(huà),必須在工程中包含DirectX輸入庫(kù)。你可能認(rèn)為只要將DirectX庫(kù)添加到你的頭文件包含路徑(Includepath)中就可以了,但那樣不行。為了避免麻煩,將DirectX的眾多.LIB庫(kù)文件手動(dòng)包含到工程中或者是工作空間(Workspace)中。在安裝的DirectXSDK主目錄下的LIB\\目錄下可以找到.LIB文件。這樣就不會(huì)導(dǎo)致任何連接錯(cuò)誤。大部分情況下,應(yīng)當(dāng)還需要下面這些庫(kù):DDRAW.LIB DirectDraw輸入庫(kù)DINPUT.LIB DirectInput輸入庫(kù)DINPUT8.LIB DirectInput8輸入庫(kù)DSOUND.LIB DirectSound輸入庫(kù)D3DIM.LIB Direct3D直接模式(或立即模式)輸入庫(kù)DXGUID.LIB DirectX GUID庫(kù)WINMM.LIB Windows多媒體擴(kuò)展庫(kù)對(duì)于上述文件,我們將在具體學(xué)習(xí)時(shí)再詳細(xì)介紹,但是當(dāng)連接程序報(bào)錯(cuò)說(shuō)“未知的符號(hào)(UnresolvedSymbol)”時(shí)應(yīng)記起這些庫(kù)。我不希望收到初學(xué)程序員任何關(guān)于這問(wèn)題的電子郵件。除了DirectX .LIB文件之外,還要在標(biāo)題搜索路徑中包含DirectX.H頭文件,這一點(diǎn)同樣要牢記在心。還要確認(rèn)將DirectXSDK目錄放在搜索路徑列表的第一位,因?yàn)樵S多C++編譯器自己帶有舊版本的DirectX,編譯器可能會(huì)在自己的INCLUDE\\目錄下找到舊版本的頭文件,而使用這些頭文件是錯(cuò)誤的。正確的位置是DirectXSDK的include目錄,即于DirectX SDK安裝目錄下的INCLUDE\\子目錄。最后,如果使用Borland產(chǎn)品,要確認(rèn)使用DirectX .LIB文件的Borland版本。該文件位于DirectXSDK安裝目錄下的Borland\\目錄。關(guān)于第二版《Windows游戲編程大師技巧》的此次修訂更新了第一版中的內(nèi)容。更新是多方面的,諸如清除拼寫(xiě)和技術(shù)錯(cuò)誤,并且加入新的內(nèi)容,使得可用DirectX的最新版本來(lái)配合編譯本書(shū)所帶的程序代碼(在這一版的DirectX里微軟公司改編并移除了DirectDraw,真不知道他們是怎么想的!)。這新版書(shū)包括關(guān)于16位RGB 高彩模式的更多細(xì)節(jié),將在DirectX 8.0下通過(guò)編譯,還有一個(gè)新章節(jié)專(zhuān)門(mén)討論文本解析(textparsing),此外貫穿全書(shū)更有新增的解釋。總之,這是《Windows游戲編程大師技巧》的一個(gè)更加清楚,更加完全的版本。本書(shū)主要討論游戲程序設(shè)計(jì);因此,涉及的DirectX僅限于讓讀者充分理解游戲編程中的各個(gè)主題。一般情況下,我的原則是讓事情盡可能簡(jiǎn)單。DirectDraw和Direct3D的合并對(duì)3D應(yīng)用程序來(lái)講是好事,但是對(duì)2D游戲和教學(xué)來(lái)說(shuō)就有點(diǎn)過(guò)于強(qiáng)大和復(fù)雜了。因此,我在未發(fā)生改變的地方使用DirectX8.0,同時(shí)仍然使用DirectDraw7.0來(lái)簡(jiǎn)化說(shuō)明。畢竟,DirectX只是一些技術(shù),而人們總是得為特定應(yīng)用程序挑選合適的技術(shù)來(lái)用。

圖書(shū)目錄

第一部分 Windows編程基礎(chǔ)
第1章 學(xué)海無(wú)涯
1.1 歷史一瞥
1.2 設(shè)計(jì)游戲
1.3 游戲類(lèi)型
1.4 集思廣益
1.5 設(shè)計(jì)文檔和情節(jié)串聯(lián)圖板
1.6 使游戲具有趣味性
1.7 游戲的構(gòu)成
1.8 常規(guī)游戲編程指導(dǎo)規(guī)范
1.9 使用工具
1.10 從準(zhǔn)備到完成——使用編譯器
1.11 示例:FreakOut
1.12 小結(jié)
第2章 Windows編程模型
2.1 Windows的起源
2.1.1 早期版本的Windows
2.1.2 Windows 3.x
2.1.3 Windows 95
2.1.4 Windows 98
2.1.5 Windows ME
2.1.6 Windows XP
2.1.7 Windows NT/2000
2.1.8 Windows 基本架構(gòu):Win9X/NT
2.2 多任務(wù)和多線(xiàn)程
2.2.1 獲取線(xiàn)程的信息
2.2.2 事件模型
2.3 按照微軟風(fēng)格編程:匈牙利符號(hào)表示法
2.3.1 變量的命名
2.3.2 函數(shù)的命名
2.3.3 類(lèi)型和常量的命名
2.3.4 類(lèi)的命名
2.3.5 參數(shù)的命名
2.4 世界上最簡(jiǎn)單的Windows程序
2.4.1 總是從WinMain()開(kāi)始
2.4.2 程序剖析
2.4.3 選擇一個(gè)信息框
2.5 現(xiàn)實(shí)中的Windows應(yīng)用程序
2.6 Windows類(lèi)
2.7 注冊(cè)Windows類(lèi)
2.8 創(chuàng)建窗口
2.9 事件處理程序
2.10 主事件循環(huán)
2.11 產(chǎn)生一個(gè)實(shí)時(shí)事件循環(huán)
2.12 打開(kāi)多個(gè)窗口
2.13 小結(jié)
第3章 高級(jí)Windows編程
3.1 使用資源
3.1.1 整合資源
3.1.2 使用圖標(biāo)資源
3.1.3 使用光標(biāo)資源
3.1.4 創(chuàng)建字符串表資源
3.1.5 使用.WAV聲音資源
3.1.6 使用編譯器創(chuàng)建.RC文件
3.2 使用菜單
3.2.1 創(chuàng)建菜單
3.2.2 裝載菜單
3.2.3 響應(yīng)菜單事件消息
3.3 GDI(圖形設(shè)備接口)簡(jiǎn)介
3.3.1 重拾WM_PAINT信息
3.3.2 視頻顯示基礎(chǔ)和色彩(Video Display Basics and Color)
3.3.3 RGB和調(diào)色板模式
3.3.4 基本文本顯示
3.4 處理重要事件
3.4.1 Windows操作
3.4.2 處理鍵盤(pán)事件
3.4.3 處理鼠標(biāo)事件
3.5 自行發(fā)送消息
3.6 小結(jié)
第4章 Windows GDI、控件和靈感
4.1 高級(jí)GDI繪圖
4.1.1 掀開(kāi)圖形設(shè)備描述表的蓋頭來(lái)
4.1.2 顏色、畫(huà)筆和畫(huà)刷
4.1.3 使用畫(huà)筆
4.1.4 使用畫(huà)刷
4.2 點(diǎn)、線(xiàn)、平面多邊形和圓
4.2.1 繪制點(diǎn)
4.2.2 繪制線(xiàn)段
4.2.3 繪制矩形
4.2.4 繪制圓
4.2.5 繪制多邊形
4.3 深入文本和字體
4.4 定時(shí)高于一切
4.4.1 WM_TIMER消息
4.4.2 低層定時(shí)操作
4.5 使用控件
4.5.1 按鈕
4.5.2 向子控件發(fā)送消息
4.6 獲取信息
4.7 T3D游戲控制臺(tái)程序
4.8 小結(jié)
第二部分 DirectX和2D基礎(chǔ)
第5章 DirectX基礎(chǔ)知識(shí)和令人生畏的COM
5.1 DirectX基礎(chǔ)
5.1.1 HEL和HAL
5.1.2 更多的DirectX基礎(chǔ)類(lèi)
5.2 COM:是微軟的杰作,還是魔鬼的杰作
5.2.1 COM對(duì)象究竟是什么
5.2.2 接口標(biāo)識(shí)符和GUID的詳細(xì)內(nèi)容
5.2.3 創(chuàng)建一個(gè)類(lèi)COM對(duì)象
5.2.4 COM的簡(jiǎn)要回顧
5.2.5 可運(yùn)行的COM程序
5.3 應(yīng)用DirectX COM對(duì)象
5.3.1 COM和函數(shù)指針
5.3.2 創(chuàng)建和使用DirectX界面
5.3.3 接口查詢(xún)
5.4 COM的前景
5.5 小結(jié)
第6章 初次邂逅DirectDraw
6.1 DirectDraw的接口
6.1.1 接口的特性
6.1.2 組合使用接口
6.2 創(chuàng)建DirectDraw對(duì)象
6.2.1 對(duì)DirectDraw進(jìn)行錯(cuò)誤處理
6.2.2 順便提一下接口
6.3 與Windows協(xié)作
6.4 設(shè)置模式
6.5 色彩的奧秘
6.6 創(chuàng)建顯示表面
6.6.1 創(chuàng)建一個(gè)主顯示表面
6.6.2 關(guān)聯(lián)調(diào)色板
6.6.3 繪制像素
6.6.4 清理資源
6.7 小結(jié)
第7章 高級(jí)DirectDraw和位圖圖形
7.1 使用高彩模式
7.1.1 16位高彩模式
7.1.2 獲取像素格式
7.1.3 24/32位真彩色模式
7.2 雙緩沖
7.3 表面動(dòng)態(tài)
7.4 頁(yè)面切換
7.5 顯存塊移動(dòng)單元(Blitter)
7.5.1 使用Blitter進(jìn)行內(nèi)存填充
7.5.2 從一個(gè)表面向另一個(gè)表面復(fù)制位圖
7.6 基礎(chǔ)裁剪知識(shí)
7.6.1 將像素按視口裁剪
7.6.2 位圖裁剪技巧
7.6.3 使用IDirectDrawClipper進(jìn)行DirectDraw裁剪
7.7 使用位圖
7.7.1 載入.BMP文件
7.7.2 使用位圖
7.7.3 載入8位位圖
7.7.4 載入16位位圖
7.7.5 載入24位位圖
7.7.6 總結(jié)位圖
7.8 離屏表面
7.8.1 創(chuàng)建離屏表面
7.8.2 在離屏表面上進(jìn)行Blitting
7.8.3 設(shè)置Blitter
7.8.4 色彩鍵
7.8.5 源色彩鍵
7.8.6 目標(biāo)色彩鍵
7.8.7 使用Blitter(終于?。?br />7.9 位圖的旋轉(zhuǎn)和縮放
7.10 離散采樣理論
7.11 色彩效果
7.11.1 256色模式下的色彩動(dòng)畫(huà)
7.11.2 256色模式下的色彩旋轉(zhuǎn)
7.11.3 使用RGB模式的技巧
7.12 手動(dòng)色彩變換及查詢(xún)表
7.13 新的DirectX色彩和Gamma控制接口
7.14 將GDI和DirectX聯(lián)用
7.15 DirectDraw的廬山真面目
7.15.1 主DirectDraw對(duì)象
7.15.2 關(guān)于表面
7.15.3 使用調(diào)色板
7.16 在窗口模式下使用DirectDraw
7.17 小結(jié)
第8章 矢量光柵化及2D變換
8.1 繪制線(xiàn)條
8.1.1 Bresenham算法
8.1.2 算法的速度優(yōu)化
8.2 基本2D圖形裁剪
8.2.1 利用點(diǎn)斜式計(jì)算兩條直線(xiàn)的交點(diǎn)
8.2.2 利用一般式計(jì)算兩條直線(xiàn)的交點(diǎn)
8.2.3 利用矩陣式計(jì)算兩條直線(xiàn)的交點(diǎn)
8.2.4 裁剪直線(xiàn)
8.2.5 Cohen-Sutherland算法
8.3 線(xiàn)框多邊形
8.3.1 多邊形數(shù)據(jù)結(jié)構(gòu)
8.3.2 多邊形的繪制及裁剪
8.4 2D平面里的變換
8.4.1 平移
8.4.2 旋轉(zhuǎn)
8.4.3 縮放
8.5 矩陣引論
8.5.1 單位矩陣
8.5.2 矩陣加法
8.5.3 矩陣乘法
8.5.4 使用矩陣進(jìn)行變換
8.6 平移
8.7 縮放
8.8 旋轉(zhuǎn)
8.9 填充實(shí)心多邊形
8.9.1 三角形和四邊形類(lèi)型
8.9.2 繪制三角形和四邊形
8.9.3 三角形解構(gòu)詳述
8.9.4 四邊形光柵化的一般性討論
8.9.5 多邊形的三角化
8.10 多邊形碰撞檢測(cè)
8.10.1 接近度、邊界球/圓
8.10.2 邊界盒
8.10.3 點(diǎn)包含
8.11 深入定時(shí)和同步
8.12 卷軸和搖鏡頭
8.12.1 頁(yè)面卷軸引擎
8.12.2 均勻平鋪(Tile)顯示引擎
8.12.3 稀疏位圖平鋪顯示引擎
8.13 偽3D等軸測(cè)引擎
8.13.1 方法1:基于單元,全二維
8.13.2 方法2:基于全屏,具有一些二維或三維的碰撞網(wǎng)絡(luò)
8.13.3 方法3:采用全三維數(shù)學(xué)運(yùn)算,使用一個(gè)固定的相機(jī)視角
8.14 T3DLIB1函數(shù)庫(kù)
8.14.1 引擎架構(gòu)
8.14.2 新的游戲編程控制臺(tái)程序
8.14.3 基本定義
8.14.4 可用的宏
8.14.5 數(shù)據(jù)類(lèi)型和結(jié)構(gòu)
8.14.6 全局定義
8.14.7 DirectDraw接口
8.14.8 2D多邊形函數(shù)
8.14.9 2D基本圖元函數(shù)
8.14.10 數(shù)學(xué)和誤差函數(shù)
8.14.11 位圖函數(shù)
8.14.12 調(diào)色板函數(shù)
8.14.13 實(shí)用工具函數(shù)
8.15 BOB引擎
8.16 小結(jié)
第9章 DirectInput輸入和力反饋
9.1 輸入循環(huán)
9.2 DirectInput序曲
9.2.1 DirectInput組件
9.2.2 設(shè)置DirectInput的一般步驟
9.2.3 數(shù)據(jù)采集模式
9.2.4 創(chuàng)建主DirectInput對(duì)象
9.2.5 101鍵盤(pán)
9.2.6 讀數(shù)據(jù)過(guò)程中的問(wèn)題:重獲取
9.2.7 捕捉鼠標(biāo)
9.2.8 使用游戲桿
9.2.9 將輸入消息化
9.3 力反饋
9.3.1 力反饋的物理原理
9.3.2 設(shè)置力反饋
9.3.3 力反饋演示程序
9.4 編寫(xiě)一個(gè)廣泛適用的輸入系統(tǒng):T3DLIB2.CPP
9.5 小結(jié)
第10章 用DirectSound和DirectMusic演奏樂(lè)曲
10.1 在PC上對(duì)聲音編程
10.2 從此有了聲音…
10.3 數(shù)碼聲音與MIDI比較——音質(zhì)好且存儲(chǔ)省
10.3.1 數(shù)碼聲音——從“位”開(kāi)始
10.3.2 合成聲音與MIDI
10.3.3 MIDI概述
10.4 發(fā)聲硬件
10.4.1 波表合成
10.4.2 波導(dǎo)合成
10.5 數(shù)碼錄音:設(shè)備和技術(shù)
10.5.1 錄制聲音
10.5.2 處理聲音
10.6 DirectSound中的麥克風(fēng)
10.7 初始化DirectSound
10.7.1 理解協(xié)作等級(jí)
10.7.2 設(shè)定協(xié)作等級(jí)
10.8 主聲音緩沖區(qū)與輔助聲音緩沖區(qū)
10.8.1 使用輔助緩沖區(qū)
10.8.2 創(chuàng)建輔助聲音緩沖區(qū)
10.8.3 把數(shù)據(jù)寫(xiě)入輔助聲音緩沖區(qū)
10.9 渲染聲音
10.9.1 播放聲音
10.9.2 停止播放
10.9.3 控制音量
10.9.4 調(diào)整頻率
10.9.5 調(diào)整聲道平衡
10.10 用DirectSound反饋信息
10.11 從磁盤(pán)中讀取聲音數(shù)據(jù)
10.11.1 .WAV文件格式
10.11.2 讀取.WAV文件
10.12 DirectMusic:偉大的試驗(yàn)
10.13 DirectMusic的體系結(jié)構(gòu)
10.14 初始化DirectMusic
10.14.1 初始化COM
10.14.2 創(chuàng)建一個(gè)演奏對(duì)象
10.14.3 給演奏對(duì)象增加端口
10.15 加載一個(gè)MIDI段
10.15.1 創(chuàng)建一個(gè)加載程序
10.15.2 加載MIDI文件
10.16 操作MIDI段
10.16.1 播放一個(gè)MIDI段
10.16.2 停止一個(gè)MIDI段
10.16.3 檢查MIDI段的狀態(tài)
10.16.4 釋放一個(gè)MIDI段
10.16.5 關(guān)閉DirectMusic
10.16.6 一些DirectMusic的實(shí)例
10.17 T3DLIB3聲音和樂(lè)曲庫(kù)
10.17.1 頭文件
10.17.2 類(lèi)型
10.17.3 全局變量
10.17.4 DirectSound API封裝
10.17.5 DirectMusic API封裝
10.18 小結(jié)
第三部分 核心游戲編程
第11章 算法、數(shù)據(jù)結(jié)構(gòu)、 內(nèi)存管理和多線(xiàn)程
11.1 數(shù)據(jù)結(jié)構(gòu)
11.1.1 靜態(tài)結(jié)構(gòu)和數(shù)組
11.1.2 鏈表
11.2 算法分析
11.3 遞歸
11.4 樹(shù)結(jié)構(gòu)
11.4.1 建立二分查找樹(shù)(BST)
11.4.2 搜索BST
11.5 優(yōu)化理論
11.5.1 運(yùn)用你的頭腦
11.5.2 數(shù)學(xué)技巧
11.5.3 定點(diǎn)運(yùn)算
11.5.4 循環(huán)體展開(kāi)
11.5.5 查找表
11.5.6 匯編語(yǔ)言
11.6 制作演示
11.6.1 預(yù)先記錄的演示
11.6.2 由人工智能控制的演示
11.7 保存游戲的手段
11.8 實(shí)現(xiàn)多人游戲
11.8.1 輪流
11.8.2 分屏
11.9 多線(xiàn)程編程技術(shù)
11.9.1 多線(xiàn)程編程的術(shù)語(yǔ)
11.9.2 為何要在游戲中使用線(xiàn)程
11.9.3 取得一個(gè)線(xiàn)程
11.9.4 線(xiàn)程間的消息傳遞
11.9.5 等待合適時(shí)機(jī)
11.9.6 多線(xiàn)程和DirectX
11.9.7 高級(jí)多線(xiàn)程編程
10.10 小結(jié)
第12章 人工智能
12.1 人工智能初步
12.2 確定性AI算法
12.2.1 隨機(jī)運(yùn)動(dòng)
12.2.2 跟蹤算法
12.2.3 反跟蹤:閃避算法
12.3 模式以及基本控制腳本的編寫(xiě)
12.3.1 基本模式
12.3.2 具備條件邏輯處理的模式
12.4 行為狀態(tài)系統(tǒng)建模
12.4.1 基本狀態(tài)機(jī)
12.4.2 加入更多表現(xiàn)個(gè)性的行為
12.5 用軟件對(duì)記憶和學(xué)習(xí)進(jìn)行建模
12.6 計(jì)劃樹(shù)和決策樹(shù)
12.6.1 計(jì)劃編程
12.6.2 實(shí)現(xiàn)真正的計(jì)劃生成器
12.7 尋路
12.7.1 試探法(Trial and Error)
12.7.2 輪廓跟蹤
12.7.3 碰撞規(guī)避跟蹤
12.7.4 路點(diǎn)尋路
12.7.5 一個(gè)賽車(chē)?yán)?br />12.7.6 可靠的尋路
12.8 高級(jí)AI腳本
12.8.1 設(shè)計(jì)腳本語(yǔ)言
12.8.2 使用C/C++編譯器
12.9 人工神經(jīng)網(wǎng)絡(luò)
12.10 遺傳算法
12.11 模糊邏輯
12.11.1 普通集合論
12.11.2 模糊集合理論
12.11.3 模糊語(yǔ)言變量及其規(guī)則
12.11.4 模糊流形與成員關(guān)系
12.11.5 模糊關(guān)聯(lián)矩陣
12.11.6 用模糊化的輸入處理FAM
12.11.7 暖融融
12.12 為游戲創(chuàng)造真正的AI
12.13 小結(jié)
第13章 基本物理建模
13.1 基本物理學(xué)定律
13.1.1 質(zhì)量(m)
13.1.2 時(shí)間(t)
13.1.3 位置(s)
13.1.4 速率(v)
13.1.5 加速度(a)
13.1.6 力(F)
13.1.7 多維空間中的力
13.1.8 動(dòng)量(P)
13.2 線(xiàn)性動(dòng)量的物理性質(zhì):守恒與傳遞
13.3 模擬萬(wàn)有引力效果
13.3.1 模擬重力井
13.3.2 模擬炮彈彈道
13.4 討厭的摩擦力
13.4.1 摩擦基本概念
13.4.2 斜面上的摩擦力(高級(jí))
13.5 基本的特殊碰撞反應(yīng)
13.5.1 簡(jiǎn)單的x,y反彈物理
13.5.2 計(jì)算任意方向上的平面碰撞反應(yīng)
13.5.3 矢量反射示例
13.5.4 線(xiàn)段的交點(diǎn)
13.6 實(shí)際2D物體間的精確碰撞響應(yīng)(高級(jí))
13.7 解決n-t坐標(biāo)系統(tǒng)
13.8 簡(jiǎn)單運(yùn)動(dòng)學(xué)
13.8.1 求解正向運(yùn)動(dòng)學(xué)問(wèn)題
13.8.2 解決反向運(yùn)動(dòng)學(xué)問(wèn)題
13.9 粒子系統(tǒng)
13.9.1 每顆粒子都需要的東西
13.9.2 設(shè)計(jì)粒子引擎
13.9.3 粒子引擎軟件
13.9.4 產(chǎn)生初始條件
13.9.5 整合微粒系統(tǒng)
13.10 創(chuàng)建游戲的物理模型
13.10.1 物理建模的數(shù)據(jù)結(jié)構(gòu)
13.10.2 基于幀的模擬與基于時(shí)間的模擬
13.11 小結(jié)
第14章 文字時(shí)代
14.1 什么是文字游戲
14.2 文字游戲如何工作
14.3 從外部世界獲得輸入
14.4 語(yǔ)言分析和解析
14.4.1 詞法分析
14.4.2 句法分析
14.4.3 語(yǔ)義分析
14.5 組成游戲世界
14.5.1 表示場(chǎng)景
14.5.2 放置物體
14.5.3 讓事情發(fā)生
14.5.4 自由移動(dòng)
14.5.5 物品系統(tǒng)
14.6 實(shí)現(xiàn)視覺(jué)、聽(tīng)覺(jué)和嗅覺(jué)
14.6.1 聽(tīng)覺(jué)
14.6.2 嗅覺(jué)
14.6.3 視覺(jué)
14.7 實(shí)時(shí)響應(yīng)
14.8 錯(cuò)誤處理
14.9 造訪(fǎng)Shadow Land
14.10 Shadow Land中使用的語(yǔ)言
14.11 編譯和運(yùn)行Shadow Land
14.12 小結(jié)
第15章 綜合運(yùn)用
15.1 Outpost的設(shè)計(jì)初稿
15.1.1 游戲背景
15.1.2 設(shè)計(jì)游戲玩法
15.2 用于編寫(xiě)游戲的工具
15.3 游戲場(chǎng)景:在太空中卷動(dòng)
15.4 玩家控制的飛船:鬼怪號(hào)
15.5 小行星帶
15.6 敵人
15.6.1 邊哨(Outpost)
15.6.2 捕食者太空雷
15.6.3 戰(zhàn)艦
15.7 “寶物”
15.8 HUD
15.9 粒子系統(tǒng)
15.10 玩游戲
15.11 編譯Outpost
15.12 結(jié)束語(yǔ)
第四部分 附錄
附錄A 光盤(pán)內(nèi)容簡(jiǎn)介
附錄B 安裝DirectX和使用C/C++編譯器
附錄C 數(shù)學(xué)和三角學(xué)回顧
附錄D C++入門(mén)
附錄E 游戲編程資源
附錄F ASCII表

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)