|
-- 會員 / 註冊 --
|
|
|
|
Cocos2D-X游戲開發技術精解 ( 簡體 字) |
作者:劉劍卓 | 類別:1. -> 程式設計 -> 手機程式 -> Cocos2d |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 35662 詢問書籍請說出此書號!【缺書】 NT售價: 345 元 |
出版日:6/1/2013 |
頁數:403 |
光碟數:1 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115314840 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:Cocos2D-X是一款支持多平臺的 2D 手機游戲引擎,支持iOS、Android、BlackBerry等眾多平臺。當前,很多移動平臺流行的游戲,都是基于Cocos2D-X開發的。 《Cocos2D-X游戲開發技術精解》詳細介紹如何使用Cocos2D-X引擎開發自己的移動平臺游戲。全書共15章,主要內容包括:Cocos2D-X引擎簡介;如何建立跨平臺的開發環境;引擎的核心模塊——渲染框架;如何實現動態畫面和用戶交互;二維游戲中背景的實現方法和技術;Box2D物理引擎;如何掌握聲音引擎的用法;Cocos2D-X引擎的文件操作模塊和內存管理機制;各種各樣的粒子效果;如何掌握利用Lua腳本制作游戲的能力; Cocos2D-HTML5引擎版本;引擎的附加功能等。最后,《Cocos2D-X游戲開發技術精解》和讀者一起展望了Cocos2D-X引擎的未來。 作為Cocos2D-X的權威指南,《Cocos2D-X游戲開發技術精解》得到了Cocos2D-X引擎開發者的建議以及指導。本書適合對Cocos2D-X感興趣的以及有志于學習和從事移動平臺游戲開發的讀者閱讀參考。 |
目錄:第1章 Cocos2D-X引擎的介紹 1 1.1 何為游戲引擎 1 1.1.1 游戲的核心——引擎 1 1.1.2 引擎的特點 2 1.1.3 知名的引擎介紹 4 1.1.4 引擎的分類 5 1.2 Cocos2D-X引擎的來歷 8 1.3 引擎的版本 9 1.4 下載與安裝 10 1.5 引擎的組成 13 1.6 技術文檔 15 1.7 成功的游戲 17 1.8 Cocos2D-X引擎的體系 18 1.9 Cocos2D-X引擎的版權聲明 19 1.10 本章小結 20
第2章 Cocos2D-X引擎的開發環境 21 2.1 跨平臺的開發 21 2.2 建立開發環境 23 2.2.1 PC開發環境 23 2.2.2 Android開發環境 26 2.2.3 iOS開發環境 35 2.3 引擎中的混合編譯 38 2.3.1 Java與C++的混合編譯 38 2.3.2 Objective-C與C++的混合編譯 41 2.4 引擎的起點 42 2.4.1 應用程序入口 43 2.4.2 引擎應用入口 44 2.5 豐富的示例程序 46 2.5.1 TestCpp示例項目 46 2.5.2 腳本示例項目 47 2.5.3 MoonWarriors示例項目 47 2.6 本章小結 48
第3章 引擎的核心——渲染框架 49 3.1 基本框架 50 3.1.1 引擎的位置 50 3.1.2 根源種子 51 3.1.3 子類結構 57 3.2 渲染框架 57 3.2.1 框架結構 58 3.2.2 攝像機類(CCCamera) 59 3.2.3 導演類(CCDirector) 59 3.2.4 場景類(CCScene) 62 3.2.5 圖層類(CCLayer) 64 3.2.6 精靈類(CCSprite) 68 3.2.7 精靈集合類(CCSpriteBatchNode) 72 3.2.8 精靈幀緩沖(CCSpriteFrameCache) 74 3.2.9 Zwoptex紋理編輯器 76 3.3 文字與字體 80 3.3.1 TTF類型標簽(CCLabelTTF) 81 3.3.2 BMFont標簽類(CCLabelBMFont) 84 3.3.3 Atlas標簽類(CCLabelAtlas) 87 3.4 菜單按鈕 89 3.5 幾何繪制DrawPrimitives 94 3.6 CocosBuilder編輯器 95 3.6.1 CocosBuilder使用指南 95 3.6.2 引擎中的應用 97 3.7 本章小結 98
第4章 動作功能 100 4.1 概述 100 4.2 動作基類 101 4.2.1 動作類的繼承關系 102 4.2.2 動作基類CCAction的成員函數 102 4.2.3 類CCNode中與動作有關的函數 104 4.3 時間動作 105 4.3.1 即時動作 105 4.3.2 持續動作 109 4.4 組合動作類 116 4.4.1 序列動作類(CCSequence) 116 4.4.2 同步動作類(CCSpawn) 118 4.4.3 重復動作類(CCRepeat &CCRepeatForever) 119 4.5 可變速度類(CCEaseAction) 120 4.5.1 CCEaseIn、CCEaseOut和CCEaseInOut 122 4.5.2 EaseSineIn、EaseSineOut和EaseSineInOut 124 4.5.3 CCEaseBackIn、CCEaseBackOut和CCEaseBackInOut 124 4.5.4 EaseExponentialIn、EaseExponentialOut和EaseExponentialInOut 125 4.5.5 CCEaseBounceIn、CCBounceOut和CCBounceInOut 125 4.5.6 CCEaseElasticIn、CCEaseElasticOut和CCEaseElasticInOut 125 4.6 速度類(CCSpeed) 125 4.7 延遲動作類(CCDelay) 127 4.8 跟隨動作類(CCFollow) 128 4.9 擴展動作類 129 4.9.1 概述 129 4.9.2 翻頁動作(CCPageTurn3D) 130 4.9.3 波紋動作(CCWaves3D) 130 4.9.4 格子動作類(CCGridAction) 131 4.10 動畫動作類 132 4.10.1 精靈幀 133 4.10.2 精靈幀緩沖 134 4.10.3 動畫類 135 4.10.4 動畫動作 136 4.11 動畫編輯器 136 4.11.1 概述 136 4.11.2 CocosBuilder編輯器中的精靈動畫 137 4.11.3 SpriteX草莓編輯器 138 4.11.4 MotionWelder動畫編輯器 139 4.12 樣例程序 141 4.13 本章小結 143
第5章 用戶交互 147 5.1 概述 147 5.2 玩家交互信息 149 5.3 觸摸操作的處理機制 149 5.4 接收操作 153 5.5 分發機制 154 5.6 處理響應 157 5.7 多點觸碰 159 5.8 加速計的響應函數 161 5.9 本章小結 162
第6章 游戲背景 164 6.1 概述 164 6.2 2D游戲背景的類型 164 6.3 磚塊地圖Tile Map 166 6.4 磚塊地圖編輯器 168 6.4.1 地圖編輯器概述 168 6.4.2 Tile Map Editor(磚塊地圖編輯器) 169 6.4.3 制作一張游戲地圖 171 6.4.4 編輯器中的屬性功能 173 6.5 地圖數據的格式 175 6.5.1 編輯器導出的文件 175 6.5.2 地圖文件分析 176 6.6 磚塊地圖的實現 178 6.6.1 磚塊地圖類CCTMXTiledMap 179 6.6.2 地圖圖層類CCTMXLayer 181 6.6.3 地圖物體層CCTMXObjectGroup 183 6.7 示例項目 184 6.8 背景的滾動與角色移動 186 6.9 多層背景滾動效果 188 6.10 本章小結 190
第7章 物理模擬與碰撞檢測 192 7.1 概述 192 7.2 游戲中的碰撞檢測 193 7.3 碰撞檢測的方法 194 7.3.1 平面幾何在碰撞檢測中的應用 194 7.3.2 物體的包圍盒 197 7.3.3 AABB碰撞檢測技術 198 7.4 基本物理知識 199 7.5 你好!Box2D! 201 7.5.1 概述 201 7.5.2 物理世界 202 7.5.3 游戲中的兩個世界 202 7.6 Box2D的基礎知識 203 7.6.1 概述 204 7.6.2 概念定義 204 7.6.3 物理引擎的模塊 205 7.7 引擎內核 205 7.7.1 基本配置 206 7.7.2 內存管理機制 207 7.7.3 工廠模式 208 7.7.4 數據單位 208 7.7.5 用戶數據 209 7.8 物理世界World 210 7.8.1 創建和摧毀一個世界 210 7.8.2 讓世界運轉起來 211 7.8.3 探索世界 212 7.8.4 AABB查詢 213 7.8.5 光線投射(Ray Casts) 214 7.9 形狀Shapes 216 7.9.1 碰撞模塊 216 7.9.2 形狀Shape的作用 216 7.9.3 圓形(Circle Shapes) 216 7.9.4 多邊形(b2PolygonShape) 217 7.10 框架Fixtures 218 7.10.1 動態模塊(DynamicsModule) 219 7.10.2 框架(Fixtures) 219 7.10.3 密度(Density) 219 7.10.4 摩擦(Friction) 220 7.10.5 恢復(Restitution) 220 7.10.6 篩選(Filtering) 220 7.10.7 感應器(Sensors) 221 7.11 物體Bodies 222 7.11.1 物體定義 222 7.11.2 位置和角度(Position and Angle) 223 7.11.3 阻尼(Damping) 223 7.11.4 休眠參數(Sleep Parameters) 224 7.11.5 固定旋轉(Fixed Rotation) 224 7.11.6 子彈(Bullets) 224 7.11.7 活動狀態(Activation) 225 7.11.8 用戶數據(User Data) 226 7.12 關節(Joints) 226 7.12.1 關節的定義(JointDef) 226 7.12.2 關節的屬性 227 7.12.3 距離關節(Distance Joint) 228 7.12.4 旋轉關節(Revolute Joint) 229 7.12.5 移動關節(Prismatic Joint) 230 7.12.6 滑輪關節(Pulley Joint) 231 7.12.7 齒輪關節(Gear Joint) 232 7.12.8 鼠標關節(Mouse Joint) 234 7.12.9 線性關節(Line Joint) 235 7.12.10 焊接關節(Weld Joint) 235 7.13 接觸(Contants) 235 7.13.1 概述 236 7.13.2 接觸類(Contact Class) 237 7.13.3 訪問接觸(Accessing Contacts) 237 7.13.4 接觸監聽器(Contact Listener) 238 7.13.5 接觸篩選(Contact Filtering) 240 7.14 示例項目 241 7.14.1 Box2dTest示例項目 241 7.14.2 調試繪圖DebugDraw 243 7.14.3 創建精靈剛體 244 7.15 本章小結 246
第8章 游戲中的聲音 249 8.1 概述 249 8.2 音樂與音效 250 8.3 聲音格式 250 8.4 CocosDenshion聲音模塊 252 8.5 背景音樂操作函數 253 8.6 聲音音效操作函數 255 8.7 示例程序 256 8.8 本章小結 259
第9章 文件操作模塊 261 9.1 概述 261 9.2 引擎文件操作模塊 261 9.3 讀取文件 263 9.4 寫入文件 267 9.5 游戲中用戶數據 269 9.5.1 游戲中的用戶數據 269 9.5.2 用戶數據的基本類型 270 9.5.3 讀取與寫入操作 271 9.6 示例程序 272 9.7 本章小結 274
第10章 內存管理機制 277 10.1 內存管理概述 277 10.2 引用計數 278 10.3 自動釋放池 280 10.3.1 使用方法 280 10.3.2 實現原理 281 10.4 管理模式 284 10.4.1 引擎當中的應用 284 10.4.2 緩沖區 285 10.5 日志調試方式 286 10.6 本章小結 288
第11章 粒子系統 290 11.1 概述 290 11.2 粒子效果 291 11.3 粒子系統的來歷 292 11.4 引擎當中的粒子系統 293 11.5 粒子的生命周期 294 11.6 粒子的屬性 295 11.7 粒子發射器屬性 296 11.7.1 發射器共有的屬性 296 11.7.2 重力發射器模式(Gravity) 304 11.7.3 半徑發射器模式(Radius) 306 11.8 粒子效果編輯器 307 11.8.1 概述 308 11.8.2 Particle Designer的使用方法 308 11.8.3 引擎中應用 310 11.9 本章小結 312
第12章 Lua腳本語言 314 12.1 概述 314 12.2 Lua腳本語言簡介 315 12.3 為什么需要它? 316 12.3.1 簡易性 316 12.3.2 可擴展性 316 12.3.3 高效性 317 12.3.4 可移植性 317 12.4 Lua腳本語言的語法 318 12.4.1 類型與數值 318 12.4.2 表達式 320 12.4.3 語句 322 12.4.4 函數 326 12.5 Lua在引擎中的應用 328 12.5.1 Lua與C/C++ 328 12.5.2 引擎中的腳本引擎 329 12.6 樣例程序 331 12.6.1 腳本引擎初始化 332 12.6.2 游戲內容的實現腳本 333 12.6.3 農場層的實現 334 12.6.4 菜單層的實現 337 12.7 本章小結 338
第13章 Cocos2D-HTML5引擎版本 340 13.1 概述 340 13.2 HTML的發展史 341 13.2.1 HTML版本 341 13.2.2 XHTML版本 342 13.2.3 HTML5是未來之星 342 13.3 HTML5新特性 342 13.3.1 跨平臺的特性 343 13.3.2 Canvas API 343 13.3.3 WebGL 344 13.3.4 其他特性 345 13.4 JavaScript語言基礎 346 13.4.1 概述 346 13.4.2 變量 347 13.4.3 數據類型 348 13.4.4 運算符 348 13.4.5 語句 351 13.4.6 對象 352 13.4.7 函數 353 13.4.8 事件 354 13.5 Cocos2d-HTML5引擎 356 13.5.1 HTML5版本介紹 356 13.5.2 安裝引擎 357 13.5.3 示例程序 357 13.5.4 引擎的架構 360 13.6 JS Binding技術的實現 362 13.6.1 概述 362 13.6.2 SpiderMonkey 362 13.6.3 示例程序 363 13.7 本章小結 364
第14章 引擎之外的附加功能 366 14.1 概述 366 14.2 網絡通信支持 367 14.2.1 HTTP介紹 367 14.2.2 curl庫(libcurl) 368 14.2.3 HTTP在引擎中的應用 368 14.2.4 HTTP示例項目 372 14.2.5 Socket的介紹 376 14.2.6 BSD Socket在引擎中的應用 378 14.3 收費模式 379 14.3.1 下載計費 379 14.3.2 內置計費 380 14.3.3 廣告版本 380 14.4 社交網絡在游戲中的應用 381 14.4.1 Game Center 382 14.4.2 OpenFeint 384 14.5 數據分析 385 14.5.1 Flurry介紹 386 14.5.2 友盟 390
第15章 Cocos2D-X引擎的未來 391 15.1 概述 391 15.2 Cocos2D引擎的走勢 391 15.3 Cocos2D-X引擎的不足 392 15.3.1 豐富的UI 393 15.3.2 完善的工具 393 15.3.3 支持網絡通信 395 15.3.4 版本的統一 395 15.3.5 數據安全 396 15.4 Cocos2D-X引擎增強的功能 396 15.4.1 良好的中文支持 397 15.4.2 游戲基本框架 397 15.4.3 游戲邏輯支持 398 15.4.4 腳本化編程 399 15.4.5 可視化的操作界面 400 15.5 會不會有Cocos3D 401 15.6 本章小結 403 |
序: |
|