精通Cocos2d-x遊戲開發:基礎篇

精通Cocos2d-x遊戲開發:基礎篇

《精通Cocos2d-x遊戲開發:基礎篇》是2016年清華大學出版社出版的圖書。

基本介紹

  • 書名:精通Cocos2d-x遊戲開發:基礎篇
  • 作者:王永寶
  • 類別:程式設計類圖書
  • 出版社:清華大學出版社
  • 出版時間:2016年4月
  • 開本:16 開
  • 裝幀:平裝-膠訂
  • ISBN:9787302432029
內容簡介,圖書目錄,作者簡介,

內容簡介

《Cocos2d-x遊戲開發》分為《基礎卷》和《進階卷》兩個分冊。兩卷書籍都有明確的寫作目的。《基礎卷》專注於Cocos2d-x引擎基礎,致力於讓Cocos2d-x初學者成為一個基礎紮實、靠譜的程式設計師。《進階卷》專注於各種實用技術,是作者多年開發經驗的結晶,書中的技術點大多是基於實際工作中碰到的問題提煉而來,從問題的本質出發到解決問題的思路,提供了多種解決方案,並對比各方案的優缺點,啟發讀者思考。
  本書為《Cocos2d-x遊戲開發》的《基礎卷》,共31章,分為4篇。第1篇為《入門篇》,涵蓋的主要內容有Cocos2d-x開發環境、學習建議、注意事項及低級錯誤總結,以及的C 編程基礎和指針知識等。第2篇為《基礎框架篇》,涵蓋的主要內容有節點系統、記憶體管理、場景和層、精靈、動作系統、動畫、紋理、文字、運行機制、渲染機制、訊息機制和Schedule等。第3篇為《UI與互動篇》,涵蓋的主要內容有觸摸輸入、文本輸入、按鈕與重力感應輸入、Menu和MenuItem,以及GUI框架的功能控制項、文本輸入、文本顯示及容器控制項等。第4篇為《CocoStudio工具鏈篇》,涵蓋的主要內容有CocoStudio的UI編輯器、場景編輯器、動畫編輯器、2.x編輯器及CocosBuilder等。
  本書適合學習Cocos2d-x遊戲開發的零基礎讀者閱讀,尤其適合Cocos2d-x自學人員。對於大中專院校的學生和社會培訓班的學員,本書也是一本不可多得的學習教程。
  快速了解本書精華內容
  入門篇
  Cocos2d-x啟航
  使用Cocos2d-x
  低級錯誤大全
  圖解指針
  C 11簡介
  基礎框架篇
  節點系統
  記憶體管理
  場景和層
  精靈詳解
  動作系統
  播放動畫
  紋理詳解
  顯示文字
  運行機制
  渲染機制
  訊息機制
  Schedule詳解
  UI與互動篇
  觸摸輸入
  文本輸入
  按鈕與重力感應輸入
  Menu和MenuItem
  GUI框架概述
  GUI框架功能控制項
  GUI框架文本輸入和顯示
  GUI框架容器控制項
  CocoStudio工具鏈篇
  CocoStudio概述
  CocoStudioUI編輯器
  CocoStudio場景編輯器
  CocoStudio動畫編輯器
  CocoStudio 2.x編輯器
  CocosBuilder

圖書目錄

第1篇 入門篇
第1章 Cocos2d-x啟航
1.1 特點、內容結構以及建議
1.2 Cocos2d-x簡介
1.3 從2.x到3.x
1.4 約定
1.5 啟航
1.5.1 Windows
1.5.2 Mac
1.5.3 Linux
1.5.4 Cocos引擎
第2章 使用Cocos2d-x
2.1 Cocos2d-x世界
2.1.1 顯示圖片
2.1.2 執行邏輯
2.1.3 獲取輸入
2.2 分析HelloCpp
2.3 小結
第3章 低級錯誤大全
3.1 create和retain-release
3.2 繼承對象的create
3.3 多個對象執行同一個Action
3.4 忘記調用父類的虛函式
3.5 隱藏在代碼中的神秘殺手,節點中的節點操作
3.6 普通對象和new出來的對象
3.7 不要忘記init
3.8 addChild失敗
3.9 在onEnter中調用parent的addChild
3.10 忘記移除
3.11 重載draw注意事項
3.12 關於引用
3.13 關於命名空間
3.14 關於類之間的互相包含
3.15 關於平台相關的API
3.16 關於update中寫邏輯
3.17 關於調試
3.18 小結
第4章 圖解指針
4.1 指針與記憶體
4.2 指針操作
4.3 指針與數組
4.4 函式指針
4.5 野指針和記憶體泄漏
第5章 C 11簡介
5.1 初始化列表
5.2 類型推導
5.3 範圍推導
5.4 智慧型指針和空指針
5.5 Lambda特性
5.6 變長參數模板
5.7 右值引用
5.7.1 分辨左值和右值
5.7.2 移動語義
5.7.3 完美轉發
5.8 顯式虛函式重載
5.9 小結
第2篇 基礎框架篇
第6章 節點系統
6.1 節點的表現
6.1.1 位置
6.1.2 旋轉和傾斜
6.1.3 縮放
6.1.4 錨點Anchor
6.1.5 渲染順序ZOrder
6.1.6 尺寸
6.1.7 懶惰計算
6.1.8 其他屬性介紹
6.2 節點的使用
6.2.1 使用Action
6.2.2 使用Schedule
6.3 節點和節點
6.3.1 添加子節點
6.3.2 刪除節點
6.3.3 節點查詢
6.3.4 節點之間的空間變換
6.4 節點樹的渲染
6.5 節點與組件
第7章 記憶體管理
7.1 記憶體基礎知識
7.1.1 記憶體區域的劃分
7.1.2 new和malloc的區別
7.1.3 堆和棧的區別
7.1.4 代碼分析
7.2 記憶體泄露、野指針和跨動態程式庫的記憶體使用
7.2.1 記憶體泄露
7.2.2 野指針
7.2.3 動態程式庫的記憶體
7.3 Cocos2d-x的引用計數
7.4 容器對象的記憶體管理
7.5 複製對象
7.6 記憶體最佳化
第8章 場景和層
8.1 Scene場景
8.1.1 場景和Director
8.1.2 切換場景與引用計數
8.1.3 場景切換特效
8.2 Layer層
8.2.1 Layer層詳解
8.2.2 LayerColor顏色層詳解
8.2.3 LayerGradient漸變層詳解
8.2.4 LayerMultiplex複合層詳解
第9章 精靈詳解
9.1 Sprite詳解
9.1.1 使用Sprite
9.1.2 創建Sprite
9.1.3 初始化流程
9.1.4 設定紋理
9.1.5 渲染
9.2 SpriteFrame和SpriteFrameCache詳解
9.2.1 SpriteFrame詳解
9.2.2 SpriteFrameCache詳解
9.2.3 SpriteFrameCache載入流程
9.3 SpriteBatchNode詳解
9.3.1 創建SpriteBatchNode
9.3.2 添加與刪除SpriteBatchNode
9.3.3 使用SpriteBatchNode
第10章 動作系統
10.1 使用Action
10.2 Action整體框架
10.2.1 Action類
10.2.2 ActionManager類
10.3 Action運行流程
10.3.1 瞬時動作ActionInstant
10.3.2 持續動作ActionInterval
10.3.3 組合動作
10.3.4 函式動作
10.3.5 時間動作
10.4 Action的分類
10.4.1 瞬間動作
10.4.2 持續動作
10.4.3 組合動作
10.4.4 變速動作
10.4.5 擴展動作
10.4.6 特效動作
第11章 播放動畫
11.1 播放幀動畫
11.2 創建Animation
11.2.1 基於Plist檔案自動創建Animation
11.2.2 解析TexturePacker的Plist檔案
11.2.3 使用AnimationCache
11.2.4 經驗分享
11.3 幀動畫框架剖析
11.3.1 幀動畫系統結構
11.3.2 Animate運行流程
11.4 進度動畫
11.4.1 半徑掃描效果
11.4.2 水平掃描效果
11.4.3 垂直掃描效果
11.4.4 四邊擴散/收縮效果
第12章 紋理詳解
12.1 在Cocos2d-x中使用紋理
12.1.1 Texture的初始化
12.1.2 紋理和Sprite的關係
12.1.3 POT和NPOT
12.1.4 紋理混合 Blend
12.1.5 Alpha預乘
12.1.6 紋理參數
12.1.7 紋理過濾 Texture Filter
12.1.8 紋理環繞
12.1.9 Mip貼圖
12.1.10 渲染紋理
12.2 管理紋理
12.2.1 使用TextureCache管理紋理
12.2.2 使用TextureCache載入紋理
12.2.3 異步載入紋理
12.3 紋理格式
12.4 紋理壓縮
12.4.1 紋理壓縮格式對比
12.4.2 在Cocos2d-x中使用紋理壓縮
12.4.3 使ETC1支持透明
第13章 顯示文字
13.1 使用Label
13.1.1 LabelTTF詳解
13.1.2 LabelBMFont詳解
13.1.3 LabelAtlas詳解
13.1.4 Label詳解
13.2 新Label框架剖析
13.2.1 整體框架
13.2.2 運行流程
13.2.3 STRING_TEXTURE類型Label的運行流程
13.2.4 使用FontAtlas的Label的運行流程
13.2.5 FontAtlas的創建流程
13.3 關於中文顯示
13.3.1 使用中文配置檔案csv/xml/plist
13.3.2 將代碼檔案轉為UTF-8編碼
13.3.3 使用iconv轉換中文
13.4 造字工具
13.4.1 使用BMFont工具
13.4.2 使用Hiero工具
第14章 運行機制
14.1 Cocos2d-x內部運行流程
14.1.1 Application詳解
14.1.2 Director詳解
14.2 Cocos2d-x在Windows下的運行流程
14.3 Cocos2d-x在Android下的運行流程
14.3.1 啟動遊戲
14.3.2 遊戲事件與主循環
14.4 Cocos2d-x在iOS下的運行流程
14.4.1 啟動遊戲
14.4.2 主循環
第15章 渲染機制
15.1 渲染樹VS渲染命令
15.1.1 渲染樹
15.1.2 渲染命令
15.2 Cocos2d-x 3.0渲染框架
15.3 渲染命令詳解
第16章 訊息機制
16.1 事件通知
16.2 NotificationCenter和EventDispatcher
16.2.1 使用EventDispatcher
16.2.2 相關接口
16.2.3 其他監聽者
16.2.4 使用NotificationCenter
16.3 內部流程以及注意事項
16.3.1 訊息的通知流程
16.3.2 訊息的註冊流程
16.3.3 訊息的註銷流程
16.4 小結
第17章 Schedule詳解
17.1 Schedule接口簡介
17.1.1 回調函式
17.1.2 註冊回調
17.1.3 註銷回調
17.1.4 時間縮放、暫停、恢復
17.1.5 優先權
17.1.6 執行緒安全
17.2 Schedule整體結構與運行流程
17.2.1 整體結構
17.2.2 外部流程
17.2.3 更新順序
17.2.4 註冊與註銷
17.3 Schedule使用過程中的問題
第3篇 UI與互動篇
第18章 觸摸輸入
18.1 如何監聽觸摸訊息
18.1.1 監聽觸摸訊息
18.1.2 觸摸監聽者
18.1.3 觸摸訊息
18.1.4 註冊監聽
18.2 觸摸輸入運行流程
18.3 判斷點擊
18.4 多點觸摸
18.5 點擊穿透
第19章 文本輸入
19.1 TextFieldTTF簡介
19.2 使用TextFieldTTF
19.3 擴展TextFieldTTF
19.4 詳解IME
第20章 按鈕與重力感應輸入
20.1 重力感應
20.1.1 搖一搖
20.1.2 多角度傾斜
20.2 物理按鍵
第21章 Menu和MenuItem詳解
21.1 使用Menu和MenuItem
21.2 結構框架與執行流程
21.2.1 Menu詳解
21.2.2 MenuItem詳解
21.2.3 執行流程
21.3 MenuItem詳解
21.3.1 MenuItemLabel詳解
21.3.2 MenuItemAtlasFont詳解
21.3.3 MenuItemFont詳解
21.3.4 MenuItemSprite詳解
21.3.5 MenuItemImage詳解
21.3.6 MenuItemToggle詳解
21.4 實現TabView
第22章 GUI框架概述
22.1 GUI框架簡介
22.1.1 命名空間與頭檔案
22.1.2 工具方法
22.1.3 九宮縮放
22.2 UIWidget詳解
22.2.1 保護節點ProtectNode
22.2.2 高亮相關
22.2.3 位置布局相關
22.2.4 觸摸相關
22.2.5 控制項焦點
22.2.6 實現自己的Widget
22.3 UILayout詳解
22.3.1 Layout背景
22.3.2 裁剪
22.3.3 焦點查找
22.3.4 Layout布局
第23章 GUI框架之功能控制項
23.1 UIButton控制項
23.1.1 創建Button
23.1.2 載入圖片
23.1.3 設定九宮
23.1.4 設定文字
23.2 UICheckBox控制項
23.2.1 創建CheckBox
23.2.2 載入圖片
23.2.3 選擇
23.3 UIImageView控制項
23.3.1 創建ImageView
23.3.2 紋理與九宮
23.4 UILoadingBar控制項
23.4.1 創建LoadingBar
23.4.2 紋理與九宮
23.4.3 方向與進度
23.5 UISlider控制項
23.5.1 創建與載入紋理
23.5.2 九宮
23.5.3 進度與回調
第24章 GUI框架之文本輸入和顯示
24.1 UIText、UITextAtlas和UITextBMFont文本顯示控制項
24.2 UIRichText文本顯示控制項
24.3 UITextField文本輸入控制項
24.3.1 創建TextField
24.3.2 觸摸相關
24.3.3 輸入密碼
24.3.4 設定、獲取文本
24.3.5 輸入回調
24.3.6 自動換行與對齊
24.4 UIEditBox文本輸入控制項
24.4.1 創建EditBox
24.2.2 文本與輸入提示文本
24.4.3 輸入委託
24.4.4 輸入模式
24.4.5 標籤與限制
第25章 GUI框架之容器控制項
25.1 UIScrollView容器控制項
25.1.1 拖曳滾動
25.1.2 InnerContainer詳解
25.2 UIListView容器控制項
25.3 UIPageView容器控制項
25.4 UIWebView容器控制項
25.4.1 載入頁面
25.4.2 操作頁面
25.4.3 頁面回調
第4篇 CocoStudio工具鏈篇
第26章 CocoStudio概述
26.1 CocoStudio是什麼
26.2 CocoStudio的設計目標
26.3 使用CocoStudio
26.3.1 使用UI編輯器
26.3.2 使用動畫編輯器
26.3.3 使用數據編輯器
26.3.4 使用場景編輯器
26.3.5 使用CocoStudio 2.x
26.4 管理資源
26.5 版本對應
第27章 CocoStudio UI編輯器
27.1 使用UI編輯器
27.2 編寫代碼
27.2.1 載入UI
27.2.2 UI動畫
27.2.3 初始化UI
27.2.4 更新UI
27.3 解析度適配
27.4 擴展UI編輯器
第28章 CocoStudio場景編輯器
28.1 使用場景編輯器
28.2 組件系統
28.3 觸發器
28.3.1 觸發器的使用
28.3.2 觸發器的代碼框架以及運作流程
28.3.3 觸發器的擴展
28.4 載入場景
第29章 CocoStudio動畫編輯器
第30章 CocoStudio 2.x編輯器
第31章 使用CocosBuilder

作者簡介

王永寶,自高一起就自學編程,至今10年有餘。酷愛遊戲開發,熟練掌握C/C 、Lua和C#等程式語言,擅長網路編程、高並發服務端架構設計、客戶端框架設計和OpenGL等技術。2010年參加廣東省“專業杯”軟體設計大賽,在31所院校的86支隊伍的激烈競爭中,憑藉一個月內使用三門語言開發的塔防遊戲而獲得了一等獎。同年進入深圳市飯後科技有限公司,擔任過C 服務端主程、Unity3D主程和Cocos2d-x主程,並作為技術負責人負責了多款遊戲的開發。業餘時間潛心研究遊戲開發,也開發了多款遊戲。

相關詞條

熱門詞條

聯絡我們