-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Cocos2D-X權威指南(第2版)

( 簡體 字)
作者:滿碩泉 著類別:1. -> 程式設計 -> 手機程式 -> Cocos2d
譯者:
出版社:機械工業出版社Cocos2D-X權威指南(第2版) 3dWoo書號: 39602
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:9/1/2014
頁數:415
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787111477143
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

寫這本書

從2011年開始,移動游戲開發引擎Cocos2D-X憑借其開源、易用和簡單的特點逐步成為開發者開發二維手機游戲的首選。截止2013年年底,國內45個月收入超千萬的游戲中,有30個是基于Cocos2D-X開發,占67%。中國區蘋果暢銷榜前10名游戲中,平均7個是基于Cocos2D-X開發;安卓360市場下載榜前10名游戲中,平均5個基于Cocos2D-X開發。在中國手游引擎領域,Cocos2D-X引擎以70%的占有率和過硬的技術支撐占據著絕對高地。除了開發功能上具備多維度外,在使用角色和用途上Cocos2D-X也在不斷向其他領域滲透。小米電視的UI采用Cocos2D-X開發,新東方線上教育平臺的應用采用Cocos2D-HTML5開發。除了在國內,Cocos2D-X在日韓也有廣泛的應用,Google?Play韓國區暢銷榜前15名游戲中,有9款游戲都是基于Cocos2D-X開發的。擊敗蘋果應用商店,在日本區霸占榜首一年半之久游戲的《Monster Strike》也是由Cocos2D-X開發,另外在該榜單上前五名的游戲有3款采用Cocos2D-X開發,這是Cocos2d-X游戲再次在一個移動游戲重要區域拿下總榜第一。

相比起Cocos2D-X的“兄長”Cocos2D-iPhone,Cocos2D-X憑借其跨平臺的特性受到更多開發者的歡迎,所以從2013年開始,Cocos2D家族由Cocos2D-iPhone和Cocos2D-X的聯合發布逐步將重心轉移到Cocos2D-X上來。在2013年9月底的CocoaChina秋季開發者大會中,Cocos2D-X創始人王哲宣布了Cocos2D-X的3.0計劃,并且Cocos2D第一開發者Ricardo Quesada正式加盟觸控科技,將主導Cocos2D-X的3.0版本開發,這正式預示著Cocos2D-X取代Cocos2D-iPhone成為Cocos2D最重要的分支,另外Cocos2D的最重要編輯器也由之前的CocosBuilder變成了之前由觸控科技團隊主導開發的CocoStudio,相比于之前1.0版本到2.0版本的進化,這次進化更有跨時代的價值。Cocos2D引擎家族進入“3.0”時代。

相比于2.0版本,這次對于引擎的改動和優化是前所未有的,大體上就是全面引入C++風格、去除Objective-C風格,而對代碼的重新審核和重構確保了引擎在效率上的顯著提升,同時加入全新的渲染系統、全新的事件分發和注冊方式,并對于之前保守批評的UI控件進行了全面的重寫。另外還完善了開發工具,比如新建項目的命令行方式和Lua代碼編輯器等,可以說這次的版本提升不論從廣度和深度上,都有了較大的提升。

本書第1版上市以來,受到讀者的廣泛好評,但是由于這次引擎的較大幅度改進,已經不能滿足讀者的需要,另外一些讀者希望學習腳本等方面的內容,正是因為這些反饋和需求,我才有了編寫本書第2版的想法,這一版不僅針對引擎更新,同時對原有內容和實例進行了擴充,希望繼續成為廣大Cocos2D-X使用者的入門圖書和工作中的案頭參考書。

讀者對象

Cocos2D-X初級及中級開發者,了解C++語言和游戲開發的讀者;

沒有接觸過Cocos2D-X,但有過Cocos2D其他版本開發經驗的開發者;

沒有Cocos2D-X和C++開發經驗,但是有C、Java等語言開發經驗的游戲程序員;

相關項目的策劃及管理人員;

游戲開發愛好者;

開設相關課程的大專院校。

如何閱讀本書

本書分為三大部分:

第一部分為基礎篇(第1∼10章),首先介紹了Cocos2D-X的下載與安裝,以及交叉編譯環境的搭建,然后重點講解了Cocos2D-X中的核心類、貼圖類、動作、動畫、特效、文字和字體、事件處理、地圖、聲音以及物理引擎的使用,這部分結合Cocos2D-X自帶的tests實例進行講解,目的是讓讀者全面掌握Cocos2D-X的基礎理論和基本使用。

第二部分為高級篇(第11∼16章),介紹了Cocos2D-X中的腳本引擎,常用算法在Cocos2D-X中的實現,粒子系統,著色器的使用和相關編輯器,在基礎上進一步介紹引擎相關的內容,目的是讓讀者更加全面地了解Cocos2D-X的使用。

第三部分為實戰篇(第17∼20章),采用Cocos2D-X分別開發了一款縱版設計游戲、橫板動作游戲、物理類游戲和消除類游戲,旨在讓讀者深入了解Cocos2D-X的基礎知識在游戲開發中的實戰使用,而且兩種游戲分別代表了橫板卷軸和縱版卷軸,可以讓開發者深入了解不同類型的游戲的開發思想。

如果你是一名對Cocos2D-X有一定了解的開發者,可以從第3章開始閱讀,而如果你是一個Cocos2D-X的初學者,請從第1章開始閱讀。

第2版與第1版的區別

Cocos2D-X引擎基礎內容根據3.0版本重新編寫。更新已有內容,添加新增功能,比如UI控件和全新渲染系統,等等。

添加Cocos2D-X腳本相關內容。從語言特點到在引擎中的使用,再到注意事項,全面學習Cocos2D-X腳本綁定。

添加Shader等引擎高級特性。

完善游戲實例,實例個數由原來的兩個變成四個,并且四個實例分別采用不同知識點。

介紹CocosBuilder和CocoStudio兩大編輯器。

具體章節調整如下:

第1章:原版第1章,內容更新,更新了Cocos2D-X的使用數據,主要是后半部分。

第2章:原版第2章,內容更新,新版本安裝做了很大調整,新增了一些工具。

第3章、第4章:原版第3章,優化圖片內存部分放到第4章。

第5章:原版第4章,新添加Flash轉換一節,其他節更新了最新的API接口。

第6章:原版第5章,更新了最新的API接口。

第7章:原版第6章,新版本變化很大,內容做了很大改變,添加了UI控件的介紹。

第8章:原版第7章,更新為最新版本,添加最新功能,即8.1.4節介紹的地形功能。

第9章:原版第8章,更新API接口。

第10章:原版第10章,最后添加物理精靈介紹。

第11章、第12章:為新增加的章,講述Cocos2D-X中的腳本語言Lua和JavaScript的應用。

第13章:原版14章,更新代碼,其他不變。

第14章:原版13章,更新接口和編輯器版本,最后添加新的編輯器介紹。

第15章:為新添章節,介紹著色器的應用。

第16章:原版第9章,改動較大,主要針對編輯器部分。

第17章:原版11章,采用JS綁定重寫編寫。

第18章:原版12章,代碼有更新。

第19,20章:為新增加的章,新增兩個實用的案例開發,并給出詳細解析。

勘誤和支持

除封面署名外,參與本書的還有實例中部分游戲的美術人員:其中第17和19章游戲實例的美術人員許鵬(新浪微博地址:http://weibo.com/ashjackt),第18和20章游戲實例的美術人員李祖一(新浪微博地址:http://weibo.com/u/1893797647)。由于作者的水平有限,編寫時間倉促,書中難免會出現一些錯誤或者不準確的地方,懇請讀者批評指正。為了方便與大家交流,我申請了相關的QQ討論群(群號:240533393,驗證信息為:2dx3.0hzbook),大家有問題可以在群中提出,我也會及時解答并且在群中更新書中的錯誤。書中的全部源文件可以從華章網站下載,我也會將相應的功能更新及時更正出來。如果你有更多的寶貴意見,也歡迎發送郵件至郵箱manshuoquan@sina.cn,期待能夠得到你們的真摯反饋。

致謝

首先感謝Cocos2D以及Cocos2D-X的開發團隊,感謝他們為廣大游戲開發者開發出一款如此優秀的游戲引擎。

感謝我的老東家天津猛?科技有限公司,感謝對我的鍛煉和栽培,使我從對游戲開發由“好奇”變成“愛好”,感謝公司中我的老師和好戰友們,感謝他們和我并肩作戰的日子,我在他們身上學到的東西讓我對游戲開發有更深的認識和熱愛,另外感謝我目前的公司凱奇谷(北京)信息技術有限公司和我的同事們對于本書的支持。

感謝天津大學以及我的老師和同學們,尤其是我的編程啟蒙老師羅凱先生。

感謝CSDN網站上每一位閱讀我文章的網友,是你們給了我信心,讓我一直寫下去。

感謝本書第1版的讀者的支持與鼓勵,正是因為你們的支持,才有了第2版的問世。

感謝我的好朋友許鵬和李祖一,他們為本書同樣付出了汗水和努力,感謝他們富有創意的游戲美術設計。

感謝機械工業出版社華章公司的首席策劃編輯楊福川和編輯高婧雅,感謝他們在這一段時間中始終支持我的寫作,引導我能順利完成全部書稿。可以說沒有他們的幫助和支持,我不會有勇氣寫這本書。

感謝我的爺爺和奶奶,他們是我人生的啟蒙老師,盡管他們已經離開這個世界,但是我依然能感受到他們對我的支持和愛。

最后感謝我的父母,他們不僅含辛茹苦把我撫養長大,還教給我很多做人的道理,為了他們我要更加努力。

謹以此書獻給我最親愛的家人,以及眾多熱愛游戲開發和Cocos2D-X的朋友們!



滿碩泉(bill_man)于天津
內容簡介:

第1版是公認的最適合系統學習Cocos2D-X的著作,廣受讀者好評,是該領域的權威暢銷書。第2版根據Cocos2D-X 3.x全面重寫,不僅根據最新技術進行了升級,而且對知識點和案例也進行了大幅補充,還對原有內容和寫作方式進行了優化。內容更加全面,更加系統地講解了Cocos2D-X最新的功能特性、使用方法、技術要點、開發技巧、高級知識、最佳實踐以及性能優化;實戰性更強,不僅每個知識點都輔之以便于理解的小案例,而且通過精心設計的4款游戲案例完美呈現了Cocos2D-X游戲設計與開發的完整過程,極富啟發性。更為重要的是,本書將游戲開發人員應該掌握的游戲開發思想也融入其中。
全書共20章,分為三個部分。基礎篇(第1~10章),首先系統介紹了Cocos2D-X的核心概念、主要功能,在Windows、Android、iOS等平臺下的安裝、配置、交叉編譯環境的搭建,以及它的調試和多語言混編;然后重點講解了Cocos2D-X的功能特性、使用方法、技術要點,包括Cocos2D-X中的核心類、圖片渲染類、動作、動畫、特效、菜單項、文本渲染系統、事件處理機制、UI控件、瓦片地圖集、聲音、存儲、網絡以及物理引擎等內容。高級篇(第11∼16章),介紹了Cocos2D-X中的腳本語言、常用算法的實現、粒子系統與著色器的使用,以及CocoStudio等相關的編輯器等。實戰篇(第17∼20章),通過4個案例全過程講解了如何采用Cocos2D-X開發縱版射擊游戲、橫版動作游戲、物理類游戲和消除類游戲,旨在讓讀者深入了解Cocos2D-X的基礎知識在游戲開發實戰中的應用,而且4個案例不僅包含橫版卷軸和縱版卷軸,還分別采用了C++、JavaScript和Lua三種不同的開發語言。同時,本書可以讓開發者深入了解不同類型游戲的開發思想以及Cocos2D-X涉及的不同開發語言。



Cocos2D-X是全球最受歡迎的2D游戲開發引擎之一,在中國有超過70%的市場份額。在中國、韓國、日本等國家的移動游戲排行榜上,使用Cocos2D-X開發的游戲不僅占據了大部分席位,而且都摘得了頭牌,可謂成績斐然!Cocos2D-X 3.0是Cocos2D-X的一個里程碑,它的改動和優化是前所未有的:全面引入C++風格,去除Objective-C風格,對代碼重新審核和重構,確保引擎在效率上顯著提升;加入全新渲染系統和全新事件分發與注冊方式;對于之前飽受詬病的UI控件也進行了全面重寫;開發工具也更加完善,Cocos2D-X的最重要編輯器也由CocosBuilder變成CocoStudio……這次“進化”有跨時代的價值,Cocos2D-X引擎家族進入3.0時代。
由于變化比較大,對于開發人員來講,有利有弊。一方面,可以擁有一款更強大、更趁手的工具;另一方面,需要重新了解和學習這個框架,因為之前掌握的很多知識和方法都不再適用了。為了應對這種情況,應讀者要求,我們根據最新的Cocos2D-X 3.x對本書進行了全面重寫,不僅技術最新,而且內容也更加豐富和完善。

第2版和第1版的重要區別如下:
Cocos2D-X引擎基礎內容根據3.0版本重新編寫。更新已有內容,添加新增功能,比如UI控件和全新渲染系統,等等。
添加Cocos2D-X腳本相關內容。從語言特點到在引擎中的使用,再到注意事項,全面學習Cocos2D-X腳本綁定。
增加對shader等引擎的高級特性講解。
完善游戲實例,實例個數由原來的2個變成4個,并且4個實例分別采用不同知識點。
新增對CocosBuilder和CocoStudio兩大編輯器的講解。
目錄:

前言

第一部分 基礎篇

第1章 認識Cocos2D-X / 2

1.1 什么是Cocos2D / 2

1.1.1 Cocos2D的特點 / 2

1.1.2 Cocos2D的主要功能 / 3

1.1.3 Cocos2D的應用 / 5

1.2 什么是Cocos2D-X / 6

1.2.1 Cocos2D-X的特點 / 6

1.2.2 Cocos2D-X的主要功能 / 6

1.2.3 “百花齊放”的輔助工具鏈 / 7

1.2.4 Cocos2D-X主導的3.0時代 / 8

1.2.5 Cocos2D-X的應用 / 9

1.3 Cocos2D-X與Cocos2D-iPhone的比較 / 10

1.4 本章小結 / 12

第2章 搭建跨平臺的開發環境 / 13

2.1 Cocos2D-X的安裝和配置 / 13

2.1.1 Cocos2D-X的運行編譯環境 / 13

2.1.2 需要安裝或配置的工具 / 14

2.2 Cocos2D-X代碼集成調試工具Cocos Code IDE / 15

2.2.1 安裝和配置 / 15

2.2.2 在Cocos Code IDE中調試代碼 / 15

2.3 搭建Windows開發環境 / 19

2.4 搭建Android開發環境 / 20

2.4.1 編譯和運行 / 21

2.4.2 Cocos2D-X的工程目錄介紹 / 25

2.5 搭建iOS開發環境 / 27

2.6 Cocos2D-X調試 / 28

2.6.1 Visual Studio的調試方法 / 28

2.6.2 Eclipse的調試方法 / 28

2.6.3 Xcode的調試方法 / 31

2.7 多語言混編Cocos2D-X / 35

2.7.1 在Cocos2D-X中調用Objective-C / 35

2.7.2 在Cocos2D-X中調用Java / 36

2.8 使用doxygen獲得Cocos2D-X的最新文檔 / 37

2.9 啟動文件和適配 / 39

2.10 本章小結 / 41

第3章 Cocos2D-X中的核心類 / 42

3.1 坐標系簡介 / 43

3.1.1 OpenGL坐標系 / 43

3.1.2 世界坐標系 / 43

3.1.3 節點坐標系 / 44

3.1.4 仿射變換 / 44

3.2 Cocos2D-X渲染 / 45

3.2.1 渲染樹 / 45

3.2.2 渲染原理 / 45

3.3 節點類 / 46

3.3.1 Node類的成員數據 / 47

3.3.2 Node類的函數 / 48

3.3.3 實戰:通過節點控制屏幕中的全體渲染對象 / 51

3.4 導演類 / 54

3.4.1 Director類的成員數據 / 54

3.4.2 Director類的函數 / 54

3.4.3 實戰:Director類的使用 / 56

3.5 場景類 / 57

3.5.1 如何新建一個場景 / 58

3.5.2 場景的切換 / 59

3.5.3 場景間切換的動畫 / 61

3.6 布景層類 / 63

3.6.1 Layer類的函數 / 64

3.6.2 顏色布景層類LayerColor / 65

3.6.3 菜單類Menu / 68

3.7 圖形繪制類 / 70

3.8 時間調度的使用 / 73

3.9 Ref類和內存管理 / 73

3.10 本章小結 / 74

第4章 Cocos2D-X中的圖片渲染類 / 75

4.1 精靈類 / 75

4.1.1 Sprite類的成員及函數 / 75

4.1.2 貼圖類Texture2D / 77

4.1.3 精靈批處理類SpriteBatchNode / 77

4.1.4 精靈幀類SpriteFrame / 79

4.1.5 精靈幀緩存類SpriteFrameCache / 80

4.1.6 九宮格精靈Scale9Sprite / 80

4.1.7 實戰:精靈類及其相關類的使用 / 81

4.2 裁剪節點類 / 88

4.3 圖片異步加載 / 91

4.4 Cocos2D-X中如何節約圖片空間 / 92

4.4.1 圖片打包器TexturePacker / 92

4.4.2 通過優化降低游戲尺寸的方法 / 95

4.5 本章小結 / 96

第5章 Cocos2D-X中的動作、特效與動畫 / 97

5.1 動作類 / 97

5.1.1 Action類的主要成員數據和函數 / 97

5.1.2 基本動作 / 98

5.1.3 攝像機動作類 / 108

5.1.4 基本樣條動作 / 110

5.1.5 緩沖動作 / 114

5.1.6 組合動作 / 117

5.1.7 跟隨動作 / 118

5.1.8 可調整速度動作 / 119

5.1.9 動作延時 / 120

5.1.10 改變動作執行對象 / 121

5.1.11 函數回調動作 / 121

5.1.12 過程動作 / 123

5.2 動作管理類 / 125

5.2.1 動作管理類的主要函數 / 126

5.2.2 動作管理類的使用 / 126

5.3 Cocos2D-X中的網格動作 / 127

5.3.1 Cocos2D-X中的網格 / 127

5.3.2 網格動作 / 127

5.3.3 清除網格 / 129

5.4 Cocos2D-X中的動畫 / 130

5.4.1 Cocos2D-X中與動畫相關的類 / 130

5.4.2 Cocos2D-X中的動畫實例 / 131

5.4.3 使用plist配置文件實現動畫 / 133

5.4.4 Flash動畫的轉換 / 135

5.5 本章小結 / 137

第6章 Cocos2D-X中的菜單項和文本渲染系統 / 138

6.1 菜單項 / 138

6.1.1 標簽菜單項 / 138

6.1.2 精靈菜單項 / 139

6.1.3 觸發器菜單項 / 140

6.1.4 菜單項的使用 / 140

6.2 文本渲染系統 / 141

6.2.1 LableAtlas類 / 142

6.2.2 LabelTTF類 / 143

6.2.3 LabelBMFont類 / 147

6.2.4 Label標簽類 / 151

6.2.5 FreeType字體庫 / 152

6.2.6 富文本類RichText / 153

6.3 本章小結 / 154

第7章 Cocos2D-X中的事件處理機制和UI控件 / 155

7.1 Cocos2D-X中的事件處理機制 / 155

7.2 Cocos2D-X中的觸屏事件 / 156

7.2.1 觸點類Touch / 156

7.2.2 單點觸摸函數 / 157

7.2.3 多點觸摸函數 / 157

7.2.4 加入單點觸摸 / 158

7.2.5 加入多點觸摸 / 159

7.2.6 實戰:主角隨手指移動 / 161

7.2.7 實戰:縮放 / 164

7.3 Cocos2D-X中的加速度傳感器事件 / 165

7.3.1 Acceleration結構體 / 165

7.3.2 實戰:加速度傳感器事件的使用 / 166

7.4 Cocos2D-X中的按鍵事件 / 167

7.5 UI控件 / 168

7.5.1 按鈕控件 / 169

7.5.2 選擇框 / 170

7.5.3 滾動列表 / 171

7.5.4 輸入框 / 172

7.6 本章小結 / 172

第8章 Cocos2D-X中的瓦片地圖集 / 173

8.1 瓦片地圖集及編輯器簡介 / 173

8.1.1 瓦片地圖的種類及用途 / 173

8.1.2 地圖編輯器Tiled / 174

8.1.3 用Tiled編輯地圖 / 175

8.1.4 設置地形 / 179

8.1.5 添加對象層 / 180

8.2 Cocos2D-X中和Tiled相關的類 / 181

8.2.1 Tiled數據文件 / 181

8.2.2 瓦片地圖集類TMXTiledMap / 182

8.2.3 地圖層類TMXLayer / 183

8.2.4 地圖精靈組類TMXObjectGroup / 184

8.3 Cocos2D-X中使用地圖和地圖相關類 / 184

8.3.1 新建地圖類并在地圖中顯示 / 184

8.3.2 普通視角地圖獲得對應位置圖素 / 185

8.3.3 45度角地圖獲得對應位置圖素 / 187

8.3.4 GID值的使用 / 188

8.3.5 地圖塊屬性的獲得 / 189

8.3.6 在地圖中加入精靈 / 190

8.3.7 精靈層的操作 / 192

8.4 本章小結 / 193

第9章 Cocos2D-X中的聲音、存儲和網絡 / 194

9.1 Cocos2D-X中的聲音 / 194

9.1.1 Cocos2D-X在不同平臺下支持的聲音 / 194

9.1.2 SimpleAudioEngine類的常用函數 / 195

9.1.3 實戰:SimpleAudioEngine類的使用 / 196

9.2 Cocos2D-X中的游戲存檔 / 197

9.2.1 UserDefault類的常用函數 / 197

9.2.2 實戰:UserDefault類的使用 / 198

9.3 Cocos2D-X中的網絡連接 / 200

9.3.1 cURL基礎知識 / 200

9.3.2 HttpClient類 / 203

9.3.3 Socket類 / 204

9.4 本章小結 / 205

第10章 Cocos2D-X中的物理引擎 / 206

10.1 物理引擎 / 206

10.1.1 物理引擎簡介 / 206

10.1.2 物理引擎的作用 / 206

10.1.3 認識Box2D和Chipmunk / 207

10.2 Cocos2D-X中的Box2D / 207

10.2.1 Box2D中的重要概念 / 207

10.2.2 Box2D的使用步驟 / 208

10.3 Cocos2D-X中的Chipmunk / 213

10.4 物理精靈類PhysicsSprite / 215

10.5 本章小結 / 216

第二部分 高級篇

第11章 Cocos2D-X中的腳本語言——Lua / 218

11.1 Lua基本介紹 / 218

11.1.1 Lua的變量及內置類型 / 219

11.1.2 Lua的操作符和控制結構 / 221

11.1.3 Lua中的全局函數 / 222

11.1.4 在Lua中實現面向對象 / 223

11.2 Lua與Cocos2D-X的結合 / 225

11.2.1 C++調用Lua / 225

11.2.2 Lua調用C++ / 226

11.3 Cocos2D-X的Lua相關框架 / 230

11.4 本章小結 / 231

第12章 Cocos2D-X中的腳本語言——JavaScript / 232

12.1 認識HTML5 / 232

12.2 JavaScript基本介紹 / 233

12.2.1 JavaScript的變量和內置類型 / 234

12.2.2 JavaScript的操作符和控制結構 / 236

12.2.3 在JavaScript中實現面向對象 / 237

12.3 搭建HTML5開發環境 / 238

12.4 Cocos2D-JS的HTML5運行原理 / 240

12.5 JavaScript與Cocos2D-X的結合 / 244

12.5.1 C++調用JavaScript / 245

12.5.2 JavaScript調用C++ / 246

12.6 本章小結 / 248

第13章 游戲中常用算法在Cocos2D-X中的實現 / 249

13.1 A星算法 / 249

13.1.1 啟發式搜索算法原理 / 249

13.1.2 什么是A星搜索 / 250

13.1.3 A星算法在Cocos2D-X中的實現 / 251

13.2 碰撞檢測算法 / 263

13.2.1 碰撞檢測的基本思想 / 264

13.2.2 碰撞檢測在Cocos2D-X中的實現 / 265

13.3 本章小結 / 271

第14章 粒子系統 / 272

14.1 什么是粒子系統 / 272

14.1.1 粒子系統的特點 / 273

14.1.2 粒子系統的構成 / 273

14.2 Cocos2D-X中的粒子系統 / 273

14.2.1 粒子批處理類ParticleBatchNode / 274

14.2.2 粒子系統基類ParticleSystem / 275

14.2.3 粒子系統子類ParticleSystemQuad / 276

14.2.4 ParticleSystem中的屬性介紹 / 278

14.3 在Cocos2D-X中使用粒子系統 / 279

14.3.1 新建一個粒子系統ParticleSystemQuad類 / 279

14.3.2 直接使用ParticleSystemQuad類的子類 / 281

14.3.3 使用粒子編輯器創建粒子系統 / 282

14.3.4 “清理”粒子系統 / 283

14.4 支持Cocos2D-X的粒子編輯器 / 283

14.4.1 Windows粒子編輯器Cocos2d Particle Editor / 283

14.4.2 粒子編輯器Particle Designer / 287

14.4.3 粒子編輯器V-Play / 293

14.5 實戰:使用編輯器設計下雨效果 / 294

14.6 本章小結 / 296

第15章 Cocos2D-X中的著色器 / 297

15.1 什么是著色器語言 / 297

15.2 著色器語言概覽 / 297

15.2.1 著色器語言的特點 / 298

15.2.2 使用著色器可以為我們帶來什么 / 300

15.2.3 如何學習著色器語言 / 301

15.3 在Cocos2D-X中使用shader / 303

15.3.1 shader程序的編譯執行流程 / 303

15.3.2 shader執行者GLProgram類 / 303

15.3.3 shader管理者ShaderCache類 / 304

15.3.4 在Cocos2D-X中創建并使用shader / 305

15.4 實戰:圖片灰化 / 306

15.5 本章小結 / 308

第16章 Cocos2D-X相關的編輯器 / 309

16.1 CocosBuilder簡介 / 309

16.1.1 CocosBuilder菜單操作 / 309

16.1.2 對象屬性編輯 / 313

16.1.3 CocosBuilder在Cocos2D-X中常用的相關類 / 318

16.1.4 實戰:CocosBuilder應用 / 319

16.2 CocoStudio簡介 / 325

16.2.1 數據編輯器 / 326

16.2.2 場景編輯器 / 327

16.2.3 界面編輯器 / 329

16.2.4 動畫編輯器 / 331

16.3 本章小結 / 332

第三部分 實戰篇

第17章 縱版射擊游戲:喵星戰爭 / 334

17.1 縱版射擊游戲的特點 / 334

17.2 喵星戰爭簡介 / 334

17.3 主游戲模塊組成元素的實現 / 336

17.3.1 主角小貓的實現 / 336

17.3.2 敵人狗博士的實現 / 340

17.3.3 魚骨子彈的實現 / 343

17.3.4 試管子彈的實現 / 345

17.3.5 游戲分數的實現 / 345

17.4 喵星戰爭的實現 / 347

17.4.1 游戲主模塊的實現 / 347

17.4.2 游戲主菜單的實現 / 352

17.4.3 關于界面實現 / 355

17.5 本章小結 / 357

第18章 橫版動作游戲:蘿莉快跑 / 358

18.1 橫版動作游戲的特點 / 358

18.2 蘿莉快跑簡介 / 359

18.3 主游戲模塊組成元素的實現 / 361

18.3.1 主角蘿莉的實現 / 361

18.3.2 星星的實現 / 366

18.3.3 地圖的實現 / 367

18.4 蘿莉快跑的實現 / 373

18.4.1 游戲主模塊的實現 / 373

18.4.2 游戲主菜單的實現 / 376

18.4.3 關于界面的實現 / 378

18.5 本章小結 / 379

第19章 物理體育游戲:迷你世界杯 / 380

19.1 物理游戲的特點 / 380

19.2 迷你世界杯簡介 / 380

19.3 迷你世界杯的實現 / 384

19.3.1 主角的實現 / 384

19.3.2 游戲主模塊的實現 / 387

19.3.3 游戲主菜單的實現 / 393

19.3.4 關于界面的實現 / 396

19.4 本章小結 / 397

第20章 消除游戲:天天消豆豆 / 398

20.1 消除游戲的特點 / 398

20.2 天天消豆豆簡介 / 398

20.3 天天消豆豆的實現 / 399

20.3.1 Lua游戲框架實現 / 399

20.3.2 開始界面模塊的實現 / 402

20.3.3 游戲主邏輯的實現 / 405

20.4 本章小結 / 415

附錄 Cocos2D-X中常見的宏 / 416
序: