cocos2d 學習(一)



CCNode-+ CCScene
       |
       + CCLayer
       |
       + CCSprite
       |
       + CCMenu
任何可畫的東西都是CCNode,CCNode的基本特點:
1. 一個CCNode可以包含多個CCNode . CCNode的基本操作:addChild, getChildByTag, removeChild .
2. 可以實現週期性的回調 . schedule, unschedule .
3. CCNode可以執行動作: runAction, stopAction .

我們寫一個CCNode的子類意味着什麼呢?
- 覆蓋初始化init.
- "schedule callbacks" , (我們子類化一個CCNode, 回調函數將有什麼影響呢?) 
- 覆蓋node的繪製.

CCNode有哪些屬性呢?
- position
- scale(x, y) 默認的是x=1, y=1;
- rotation (in degrees, clockwise) 旋轉;
- CCCamera (an interface to gluLookAt), 怎麼看這個CCNode就由CCCamera來決定. 默認的是CCNode的中心.
- CCGridBase 基本的網格.有什麼用呢? 怎麼轉換呢?
- anchor point 什麼叫錨點?
- visible
- size
- z-order
- openGL z position

    可以看出, CCNode是一個共通的類, 它表示一個可畫的目標, 它可以旋轉,可以放大,有觀察視角屬性,有位置,可不可見,
有大小,並且可以與OpneGL 關聯起來. 其中有3個屬性是難以理解的: CCGrideBase, anchor point, z-order.

--------------------------------------------
現在的問題就是: 
CCScene, CCLayer, CCMenu, CCSprite 他們都是CCNode 的子類, 他們在功能上有什麼明顯的不同?
CCLayer主要是處理 事件接收, 加速響應.
CCMenu 在運行時添加MenuItem.
CCScene與CCNode差不多, 只是在錨點上有點不同.
CCSprite來處理2d的圖像.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章