注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)游戲設(shè)計(jì)Cocos2d-x游戲開發(fā)之旅

Cocos2d-x游戲開發(fā)之旅

Cocos2d-x游戲開發(fā)之旅

定 價(jià):¥69.00

作 者: 鐘迪龍
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 計(jì)算機(jī)/網(wǎng)絡(luò) 圖形圖像 多媒體 游戲開發(fā)/多媒體/課件設(shè)計(jì)

ISBN: 9787121211362 出版時(shí)間: 2013-08-01 包裝: 平裝
開本: 16開 頁數(shù): 488 字?jǐn)?shù):  

內(nèi)容簡介

  《Cocos2d-x游戲開發(fā)之旅》主要講解了Cocos2d-x游戲圖形引擎的使用方法,對(duì)常用的API使用方式以及重要的函數(shù)進(jìn)行了深入的分析,并通過詳細(xì)的游戲?qū)嵗齺斫榻BCocos2d-x在實(shí)際開發(fā)中的應(yīng)用,書中還大量穿插了在實(shí)際的手機(jī)游戲開發(fā)過程中遇到的問題以及解決方案。

作者簡介

暫缺《Cocos2d-x游戲開發(fā)之旅》作者簡介

圖書目錄

第1章 開學(xué)典禮 / 1
1.1 出場(chǎng)人物介紹 / 1
1.2 入學(xué)要求——本書適合人群 / 2
1.3 這內(nèi)容有點(diǎn)糟糕——本書風(fēng)格 / 2
1.4 你需要這些技能——學(xué)Cocos2d-x需要什么知識(shí) / 3
1.5 我們?yōu)槭裁匆獙W(xué)Cocos2d-x / 4
1.6 先給我們的代碼找個(gè)溫馨的家——環(huán)境搭建 / 4
1.6.1 紫色風(fēng)暴之VS2010 / 4
1.6.2 我的Cocos2d-x版本 / 5
1.6.3 看看前輩們的畢業(yè)設(shè)計(jì)——運(yùn)行官方Demo / 6
1.7 廣告時(shí)間——提供一些學(xué)習(xí)資源 / 8
第2章 不離不棄的HelloWorld / 10
2.1 簡單到無法想象——直接運(yùn)行HelloCpp項(xiàng)目 / 10
2.2 新建Cocos2d-x項(xiàng)目遇到的麻煩——成功新建一個(gè)HelloWorld / 12
2.2.1 創(chuàng)建Cocos2d-x項(xiàng)目 / 12
2.2.2 解決編譯報(bào)錯(cuò)的方案1——直接復(fù)制源文件 / 14
2.2.3 解決編譯報(bào)錯(cuò)的方案2——修改項(xiàng)目配置 / 17
2.3 HelloWorld,沒有想象中的簡單——簡單解析HelloWorld / 19
2.3.1 HelloWorld是如何顯示到窗口的 / 19
2.3.2 場(chǎng)景其實(shí)不是真正的場(chǎng)景 / 20
2.4 實(shí)例來了 / 23
第3章 我們來學(xué)習(xí)怎么爬行 / 29
3.1 環(huán)游世界——場(chǎng)景 / 29
3.2 一切的主宰——導(dǎo)演 / 30
3.2.1 加載第一個(gè)場(chǎng)景 / 30
3.2.2 簡單的切換場(chǎng)景 / 30
3.2.3 包含特效的切換場(chǎng)景 / 32
3.2.4 贈(zèng)送的——推進(jìn)和彈出場(chǎng)景 / 34
3.3 你走你的,我走我的——層 / 36
3.4 比對(duì)象還要可愛的對(duì)象——精靈來了 / 37
3.5 我得下命令——菜單 / 38
3.6 當(dāng)個(gè)背包客——節(jié)點(diǎn) / 40
第4章 我們來學(xué)習(xí)怎么走路 / 43
4.1 吉他獨(dú)奏《天空之城》——播放聲音 / 43
4.2 控件篇1——我最愛的九妹和按鈕事件 / 44
4.2.1 你好,九妹——可拉伸圖片 / 44
4.2.2 解決使用extensions庫時(shí)編譯報(bào)錯(cuò)的問題 / 46
4.2.3 九妹和按鈕搭配 / 48
4.2.4 豐富多彩的按鈕事件 / 49
4.2.5 啰嗦一下——CCControlButton特別的小功能 / 51
4.3 控件篇2——我不是DJ之圓形音量按鈕 / 51
4.3.1 圓形音量按鈕 / 51
4.4 控件篇3——我要戰(zhàn)斗之血量條 / 54
4.4.1 又是一個(gè)音量控制按鈕 / 54
4.4.2 我要的血量條 / 55
4.5 動(dòng)作篇1——簡簡單單的運(yùn)動(dòng) / 56
4.5.1 你想去哪,你想走多遠(yuǎn)——CCMoveTo和CCMoveBy / 56
4.5.2 我要減肥——CCScaleTo和CCScaleBy / 58
4.5.3 卡牌翻轉(zhuǎn)特效——用CCScaleTo就可以實(shí)現(xiàn) / 61
4.5.4 閃亮登場(chǎng)——CCBlink / 62
4.6 動(dòng)作講解2——更復(fù)雜的運(yùn)動(dòng) / 63
4.6.1 我要你按照我的路線走——CCBezierTo和CCBezierBy / 63
4.6.2 我沒讓你停,重復(fù)動(dòng)作——CCRepeatForever / 66
4.6.3 動(dòng)作一起做,一邊走一邊轉(zhuǎn)一邊跳——CCSequence / 67
4.7 動(dòng)作講解3——?jiǎng)幼鞅O(jiān)聽 / 69
4.7.1 小若,到家了告訴我一聲——?jiǎng)幼鹘Y(jié)束監(jiān)聽 / 69
4.7.2 動(dòng)作家族族譜 / 70
4.8 屏幕觸摸事件 / 72
4.8.1 屏幕事件初探 / 72
4.8.2 復(fù)數(shù)形式的函數(shù)——每個(gè)CCLayer都能獲取屏幕事件 / 75
4.8.3 單數(shù)形式的函數(shù)——截?cái)嗍录?,一個(gè)CCLayer的壟斷 / 77
第5章 是時(shí)候跑起來了——《LittleRunner》 / 80
5.1 這是一個(gè)什么游戲 / 80
5.2 找個(gè)主角回來——?jiǎng)?chuàng)建主角精靈 / 81
5.2.1 創(chuàng)建篩選器 / 81
5.2.2 創(chuàng)建實(shí)體基類 / 82
5.2.3 創(chuàng)建主角類 / 83
5.2.4 創(chuàng)建游戲場(chǎng)景 / 84
5.2.5 修改游戲窗口大小 / 87
5.3 其實(shí)她不想跑——?jiǎng)?chuàng)建無限滾動(dòng)地圖 / 87
5.3.1 每一幀都可以操作——scheduleUpdate初探 / 87
5.3.2 翻滾吧,地圖——地圖無限滾動(dòng) / 89
5.4 開心的時(shí)候——讓主角跳起來 / 91
5.4.1 CCControlButton的應(yīng)用——?jiǎng)?chuàng)建跳躍按鈕 / 91
5.4.2 CCJumpBy的應(yīng)用——給主角添加跳躍動(dòng)作 / 93
5.5 金錢誘惑——加入怪物 / 95
5.5.1 怪物誕生 / 95
5.5.2 怪物巢穴——?jiǎng)?chuàng)建怪物管理器 / 97
5.5.3 貪婪的主角——怪物碰撞檢測(cè) / 99
5.5.4 疼了就退后——增加主角受傷時(shí)的動(dòng)作 / 103
5.6 監(jiān)控一切——?jiǎng)?chuàng)建分?jǐn)?shù)標(biāo)簽、血量條等屬性對(duì)象 / 105
第6章 精靈來了第二季 / 109
6.1 一大波精靈來襲——大量精靈單獨(dú)繪制的缺陷 / 109
6.2 把相同的精靈裝上車——使用CCSpriteBatchNode優(yōu)化繪制 / 110
6.2.1 一次渲染——CCSpriteBatchNode的特別之處 / 110
6.2.2 什么是紋理——CCTexture簡單解說 / 112
6.3 遇到不同的精靈怎么辦——TexturePacker工具使用 / 114
6.3.1 同一張圖片,同一個(gè)紋理 / 114
6.3.2 將多張圖片打包到一起 / 115
6.3.3 加載打包后的圖片 / 117
6.4 是動(dòng)畫,不是動(dòng)作——CCAnimation / 118
6.4.1 用打包前的圖片創(chuàng)建動(dòng)畫 / 118
6.4.2 用打包后的圖片創(chuàng)建動(dòng)畫 / 121
6.4.3 額外贈(zèng)送——?jiǎng)赢媱?chuàng)建輔助類 / 123
第7章 游戲?qū)嵗杜芘芘堋?/ 127
7.1 更豐富的世界——使用Tiled地圖 / 127
7.1.1 世界誕生——?jiǎng)?chuàng)建跑步場(chǎng)景 / 127
7.1.2 Tiled地圖來了——使用Tiled Map Editor創(chuàng)建地圖文件 / 129
7.1.3 你報(bào)錯(cuò)了嗎——Tiled Editor常見路徑錯(cuò)誤 / 130
7.2 嘿,培養(yǎng)新人——?jiǎng)?chuàng)建新的主角 / 131
7.2.1 主角誕生——?jiǎng)?chuàng)建實(shí)體類和主角類 / 131
7.2.2 固定主角出生點(diǎn)——對(duì)象層的使用 / 134
7.2.3 讓主角跑——添加主角動(dòng)畫 / 136
7.3 更智能的主角——添加角色控制器 / 137
7.3.1 創(chuàng)建控制器基類 / 137
7.3.2 帶著它就能跑——主角移動(dòng)控制器 / 138
7.3.3 焦點(diǎn)是主角——讓地圖隨著主角滾動(dòng) / 141
7.4 更多的內(nèi)容 / 144
7.4.1 讓主角上下移動(dòng)——三方移動(dòng)控制器 / 144
7.4.2 添加障礙物——Tiled障礙層的使用 / 148
7.4.3 添加能吃的物品以及勝利條件 / 153
第8章 用多線程做定時(shí)器?你瘋了——schedule很強(qiáng)大 / 158
8.1 我愛單線程——schedule介紹 / 158
8.2 每一幀都有我——scheduleUpdate和update / 158
8.3 定時(shí)器可以這么做——schedule和回調(diào)函數(shù) / 160
8.3.1 不調(diào)用update函數(shù),調(diào)用自己的函數(shù) / 160
8.3.2 真正的定時(shí)器 / 162
8.4 讓一切都停下來——unSchedule / 162
8.5 觸發(fā)器可以這么做——scheduleOnce和回調(diào)函數(shù) / 164
8.6 額外贈(zèng)送,我總是很關(guān)注我暗戀的女孩——觀察者模式 / 165
8.6.1 你喜歡誰?我?guī)湍懔粢狻^察者模式掃盲 / 165
8.6.2 Cocos2d-x提供的觀察者模式工具類——CCNotificationCenter / 166
8.6.3 addObserver和postNotification函數(shù)傳遞數(shù)據(jù)的區(qū)別 / 170
8.6.4 額外贈(zèng)送——自己實(shí)現(xiàn)簡單的觀察者 / 172
第9章 野外生存訓(xùn)練 / 177
9.1 師父走了,你怎么辦——學(xué)會(huì)查看官方Demo / 177
9.2 遲早都要學(xué)會(huì)——學(xué)習(xí)查看Demo源代碼 / 178
9.3 別忘了開源——學(xué)習(xí)查看Cocos2d-x源代碼 / 179
9.3.1 為什么addObserver和postNotification不能同時(shí)傳遞數(shù)據(jù) / 179
9.4 物競天擇,沒用的就要被淘汰——retain和release / 183
9.4.1 為什么會(huì)有retain / 183
9.4.2 真正的兇手autoRelease / 183
9.4.3 看代碼實(shí)際點(diǎn) / 183
9.4.4 原理來了 / 186
9.4.5 實(shí)際情況 / 187
9.4.6 倒底什么時(shí)候要retain / 187
9.5 再傳授幾招 / 188
9.5.1 在調(diào)試項(xiàng)目時(shí),跟蹤并進(jìn)入Cocos2d-x的源碼 / 188
9.5.2 什么?你忘了保存記憶?我們一起十年了啊——保存數(shù)據(jù) / 189
9.6 我能擺脫編譯的噩夢(mèng)——讀取Csv配置文件 / 191
9.6.1 什么是Csv文件——Csv格式文件掃盲 / 191
9.6.2 如何創(chuàng)建一個(gè)Csv文件 / 192
9.6.3 預(yù)熱——編寫字符串工具類 / 193
9.6.4 輔助工具——編寫文本讀取工具類 / 196
9.6.5 進(jìn)入主題——編寫Csv文件讀取工具類 / 197
第10章 睡覺的時(shí)候不要吃東西——有限狀態(tài)機(jī) / 205
10.1 花5分鐘告訴你什么是有限狀態(tài)機(jī) / 205
10.1.1 簡單認(rèn)識(shí) / 205
10.1.2 一個(gè)很“好玩”的游戲 / 205
10.1.3 實(shí)現(xiàn)簡單有限狀態(tài)機(jī)的類 / 206
10.2 狀態(tài)模式之我很胖但我很強(qiáng) / 209
10.2.1 什么是狀態(tài)模式 / 209
10.2.2 用狀態(tài)模式實(shí)現(xiàn)有限狀態(tài)機(jī) / 211
10.3 真正的狀態(tài)機(jī)來了 / 216
10.3.1 創(chuàng)建狀態(tài)機(jī)類 / 216
10.3.2 被釋放的木頭類 / 218
10.4 事件驅(qū)動(dòng),你想象不到的強(qiáng)大 / 221
10.4.1 徹底拋棄update函數(shù)——新的狀態(tài)機(jī)類 / 221
10.4.2 更智能的狀態(tài)類 / 224
10.4.3 見證新的運(yùn)作情況 / 225
第11章 我比Csv更厲害——強(qiáng)大的Lua / 228
11.1 讓Lua和C++牽手 / 228
11.1.1 Lua的堆棧和全局表 / 228
11.1.2 Lua和C++的第一次通信 / 228
11.2 Demo講解之Lua和C++牽手 / 229
11.2.1 引入頭文件 / 230
11.2.2 開始使用 / 231
11.2.3 執(zhí)行Lua腳本 / 232
11.2.4 重置棧頂索引,將全局變量放到堆棧中 / 233
11.2.5 最后一步,C++取得字符串 / 233
11.3 簡單解析Lua的堆棧 / 234
11.4 來點(diǎn)高難度的,獲取Lua表結(jié)構(gòu)的數(shù)據(jù) / 235
11.4.1 什么是table / 235
11.4.2 獲取table變量 / 236
11.4.3 lua_gettable函數(shù) / 236
11.5 C++調(diào)用Lua函數(shù) / 239
11.6 Lua調(diào)用C++的函數(shù) / 240
第12章 額外奉獻(xiàn),狀態(tài)機(jī)代碼生成工具——SMC / 244
12.1 加快狀態(tài)機(jī)開發(fā)速度——SMC是什么 / 244
12.2 永遠(yuǎn)都從HelloWorld開始 / 245
12.2.1 這是令牌——sm配置文件 / 245
12.2.2 化令牌為力量——使用Smc.jar將配置文件轉(zhuǎn)換為代碼 / 246
12.2.3 一勞永逸——更方便的代碼轉(zhuǎn)換方式 / 247
12.2.4 整裝待發(fā)——導(dǎo)入所需文件到項(xiàng)目中 / 247
12.2.5 最后的最后——編寫主體類 / 248
12.2.6 簡單解析原理 / 249
12.3 實(shí)例之SMC版木頭寫代碼 / 252
12.3.1 木頭的邏輯 / 252
12.3.2 編寫劇本——sm配置文件 / 253
12.3.3 主角誕生——編寫Mutou主體類 / 255
12.3.4 導(dǎo)演開拍——編寫觸發(fā)狀態(tài)切換的功能 / 259
第13章 自力更生——自己寫一個(gè)UI模塊 / 264
13.1 剛開始必須要輕松一下——UI模塊思路簡介 / 264
13.1.1 它能為我們做些什么——UI模塊包含的功能 / 264
13.1.2 一覽眾山小——UI模塊設(shè)計(jì)思路圖 / 265
13.2 XML文件和屬性模塊 / 266
13.2.1 一切的源頭——UI的XML配置文件 / 266
13.2.2 知識(shí)補(bǔ)充1——TinyXML介紹 / 268
13.2.3 知識(shí)補(bǔ)充2——TinyXML的HelloWorld / 268
13.2.4 知識(shí)補(bǔ)充3——用TinyXML讀取UI模塊的XML配置文件 / 272
13.2.5 封裝,我們要記住封裝——XML標(biāo)簽節(jié)點(diǎn)對(duì)象 / 276
13.2.6 我負(fù)責(zé)保存,你負(fù)責(zé)修飾——XML標(biāo)簽節(jié)點(diǎn)屬性設(shè)置器 / 283
13.3 嘗點(diǎn)甜頭——?jiǎng)?chuàng)建控件 / 286
13.4 主角來了——組件 / 288
13.4.1 控件基類——MMBase / 289
13.4.2 普通窗口控件——MMNormalWin / 290
13.4.3 標(biāo)簽控件——MMLabel / 291
13.4.4 甜點(diǎn)來了——測(cè)試新的控件類 / 293
13.5 控件管理模塊 / 296
13.5.1 我是老大——MMWinManager控件管理器 / 296
13.5.2 我是先鋒——MMWinSystem控件系統(tǒng) / 300
13.5.3 我是前臺(tái)——MMWinDesktop控件頂層桌面 / 304
13.6 控件工廠 / 305
13.6.1 抽象工廠之MMWinBaseFactory / 305
13.6.2 控件工廠之MMWinFactory / 306
13.6.3 裝飾工廠之MMWinProperityFactory / 307
13.6.4 最后的事情——運(yùn)行項(xiàng)目 / 310
13.7 更完整的UI模塊 / 311
第14章 傾情奉獻(xiàn)——因?yàn)橥祽卸Q生的《卡牌塔防》游戲(上篇) / 313
14.1 開篇——最后的游戲?qū)嵗?/ 313
14.1.1 為什么是塔防游戲 / 313
14.1.2 《卡牌塔防》功能簡介——我們能學(xué)到哪些知識(shí) / 313
14.2 啟程——關(guān)卡編輯器 / 315
14.2.1 一個(gè)英雄一個(gè)坑——炮臺(tái)坐標(biāo)編輯器 / 315
14.2.2 按照我給的路徑走——怪物坐標(biāo)編輯器 / 335
14.2.3 添加更多方便的操作 / 343
14.3 磨刀不誤砍柴工——預(yù)備知識(shí) / 350
14.3.1 導(dǎo)演的助手——場(chǎng)景管理器 / 350
14.3.2 數(shù)據(jù)讀取模塊 / 353
14.3.3 全局參數(shù) / 354
14.3.4 請(qǐng)說英文好嗎?不,說中文——I18N工具類 / 356
14.3.5 導(dǎo)入U(xiǎn)I模塊和TinyXml模塊 / 360
第15章 傾情奉獻(xiàn)——因?yàn)橥祽卸Q生的《卡牌塔防》游戲(下篇) / 363
15.1 英雄誕生 / 363
15.1.1 創(chuàng)建關(guān)卡場(chǎng)景 / 363
15.1.2 地圖層 / 364
15.1.3 實(shí)體基類 / 367
15.1.4 英雄管理器1——炮臺(tái)對(duì)象 / 370
15.1.5 英雄管理器2——英雄對(duì)象 / 375
15.1.6 英雄管理器3——炮臺(tái)和英雄的關(guān)系 / 379
15.1.7 英雄管理器4——加入創(chuàng)建英雄的功能 / 380
15.2 怪物來襲 / 382
15.2.1 怪物管理器 / 382
15.2.2 移動(dòng)控制器1——控制器基類 / 388
15.2.3 移動(dòng)控制器2——移動(dòng)控制器基類 / 389
15.2.4 移動(dòng)控制器3——按指定坐標(biāo)列表移動(dòng) / 391
15.2.5 怪物來了 / 395
15.3 英雄進(jìn)攻 / 399
15.3.1 英雄的一次攻擊流程 / 399
15.3.2 在Hero里獲取怪物列表 / 400
15.3.3 查找并鎖定攻擊目標(biāo) / 403
15.3.4 英雄的攻擊 / 404
15.3.5 子彈管理器1——子彈類 / 407
15.3.6 子彈管理器2——子彈管理器 / 410
15.3.7 子彈管理器3——英雄開始發(fā)射子彈 / 414
15.4 華麗的裝飾 / 415
15.4.1 怪物血量條 / 415
15.4.2 炮臺(tái)操作按鈕——英雄華麗升級(jí) / 419
15.4.3 怪物起點(diǎn)和終點(diǎn)魔法臺(tái) / 423
第16章 傾情奉獻(xiàn)——因?yàn)橥祽卸Q生的《卡牌塔防》游戲(終結(jié)篇) / 427
16.1 關(guān)卡信息UI / 427
16.1.1 利用自定義UI模塊制作關(guān)卡信息面板 / 427
16.1.2 關(guān)卡信息數(shù)據(jù)刷新——CCNotificationCenter的應(yīng)用 / 432
16.1.3 怪物數(shù)量刷新 / 437
16.1.4 怪物安息——怪物死亡后塔魂數(shù)量刷新 / 438
16.1.5 堡壘安息——怪物到達(dá)堡壘后扣除魔力值 / 439
16.1.6 打怪升級(jí)——英雄升級(jí)扣除塔魂 / 443
16.2 謝幕 / 444
16.2.1 關(guān)卡選擇——根據(jù)關(guān)卡數(shù)加載游戲 / 445
16.2.2 勝利條件判斷 / 448
16.2.3 失敗條件判斷 / 452
16.3 移植游戲到Android平臺(tái) / 452
16.3.1 傻瓜式的Android環(huán)境搭建1——準(zhǔn)備工作 / 453
16.3.2 傻瓜式的Android環(huán)境搭建2——解壓和安裝 / 454
16.3.3 傻瓜式的Android環(huán)境搭建3——測(cè)試一下吧 / 457
16.3.4 不需要Cygwin——生成并導(dǎo)入Android項(xiàng)目 / 458
16.3.5 怎么編譯C++文件——?jiǎng)?chuàng)建Builder / 459
16.3.6 開始編譯——Android.mk文件 / 464
第17章 額外的一些東西 / 468
17.1 常見錯(cuò)誤及解決方案 / 468
17.1.1 調(diào)用可變參數(shù)函數(shù)時(shí),總是莫名報(bào)錯(cuò) / 468
17.1.2 無法解析的外部符號(hào)(或命令) / 468
17.1.3 Android移植編譯報(bào)錯(cuò)——undefined reference to / 469
17.1.4 使用了TinyXML后,移植到Android中運(yùn)行報(bào)錯(cuò) / 469
17.1.5 CCLabelTTF變成了一個(gè)黑塊——多線程引起的Bug / 470
17.2 最后的內(nèi)容 / 470
17.2.1 不管游戲多快,一幀就是一幀,我們能做很多事情 / 470
17.2.2 給讀者的驚喜——丁小若寄語 / 471
17.2.3 請(qǐng)?zhí)峁┠愕囊庖娨约澳惆l(fā)現(xiàn)的Bug / 471

本目錄推薦

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