ps:目錄是2dx概述!!! html
上一節中我大概簡述了2dx引擎環境的搭建,在交叉編譯一律而過,這一節我將詳細說下這方面的內容, java
有人提出不用cygwin來編譯,用adt毫無壓力,額 我只想說 adt從我搞android就沒有碰過那玩意,一直用idea,如今的旗艦版idea12對android支持至關完美,搭配maven管理,發揮到極致。這就不說了,這裏我放出cygwin離線安裝:http://pan.baidu.com/share/link?shareid=4138200214&uk=3088193979,若是下在不了就告訴我下哈。 node
欲開發好比利器準備,這裏我推薦cygiwn+vs2012(屌絲一枚 不像土豪)+idea12+vs助手; python
cygin:模擬win上的linux編譯環境,vs開發語言c++ ,爲啥vs2012 ,額這個主題不錯深色的,不傷眼睛,idea12編譯app; linux
1.建立一個項目,固然建立項目多樣化,一種是直接在vs上建立(前提你已經按照上一節中安裝了模版),另外一種就是用python腳原本建立(也比較方即可以多個平臺都建立),這裏先說後面一種: android
1.搭建python環境,這裏要裝pyhton版本是27的,筆者試過33的不行哈,環境搭建好了,切換cocos2d-x-2.2的目錄中進入到\tools\project-creator目錄下運行以下命令: ios
python create_project.py -project HelloWorld -package xxx.xxx.xxx -language cpp
hello word 是項目名稱,後面的是android上的命名規範,這樣執行,會在cocos2d-x的文件下project中生成helloword項目: c++
到這裏咱們用python就建立完畢了;注意這裏提一點,若是你要把這個項目拷貝出cocos2d-x文件夾單獨放另外地方,那麼注意不要忘記拷貝依賴褲哈; 算法
下面我直接用vs2012來建立,步驟: shell
1.注意不要勾的地方:
2.拷貝依賴庫到項目的proj.win32下,運行以下:
3.接下來是交叉編譯,建立android項目 額前面建立了哈 固然也能夠用creat-android-prioject.bat,注意指定好你的NDK路徑(上一節中每一提),首先編譯要組織文件這裏分享筆者用的:
http://pan.baidu.com/share/link?shareid=153393070&uk=3088193979
點擊,找到項目根目錄:
4.接下來就是編譯:
若是這樣,那麼就成功通常了,接下來編譯app(注:筆者以前是編譯了cocos2d-x的庫的 因此編譯很快就結束了,若是你第一次編譯就慢慢等吧)像這樣:
5.打開idea,選擇咱們的proj.android,別慌,先把cocos2d-x-2.1.4\cocos2dx\platform\android\java\src項目下的java文件拷貝到項目的src下,這個就是jni java套子 用這個來搞NDK 專用,否則不乾淨 也是沒得其餘 途徑的 ,沒法完成發佈app;
這就是idea,支持的android,目錄簡單介紹下:assets資源文件,gen我就不說了,搞android的都曉得,jni,mk和cpp,src中java文件,lib編譯過來的.so文件。
6.最後本身選擇模擬器,本身手機也行,應該能夠成功了,不行的話留言;
7.關於ios的編譯問題,由於ios中用xcode,因此你直接建立一個cocos2d-x項目,將class和資源文件拷貝到項目相應的目錄,那麼直接編譯發佈就行,這裏就不講解了筆者每一mac,唉等段時間還得呵呵;
學習一個引擎,應當對引擎有所瞭解,筆者在接觸他的時候,直接看源碼,固然首先仍是基礎了的,瞭解他是有什麼組成,內心有個數,不是東打西撞,筆者整理了下關於2dx的概述,本想下一個章節發佈詳說,仍是就這裏說了吧,下一節就開始真正的coocs2d-x之旅了;
大概以下,如下類容整理資源來自互聯網以及本身修改一些,但願你們仔細認真摸清楚,內心有個結構上的認識,否則寫代碼額這個幹啥幹啥,很差搞哦 死託硬搞 累,畢竟我是記不住,頂多熟悉,不清楚了看源碼的testcpp,源碼 ,直接上菜(注意必定要搞清楚!!!):
Cocos2d-x 總體描述
和傳統的遊戲引擎同樣,cocos2d-x做爲一個2d的遊戲引擎,其也有如下幾大概念組成:
導演(CCDiretor):
在cocos2d-x引擎中,CCDirector類是整個遊戲的組織和控制核心,遊戲的運行規則,遊戲內的CCScene(場景)、佈景(CCLayer)、角色(CCSprite)等的運動,均由CCDirector管理,其在遊戲中起着指定遊戲規則讓遊戲內的場景、佈景和任務有序的運行。在整個遊戲裏面,通常只有一個導演,遊戲開始和結束時,都須要調用CCDirector的方法完成遊戲初始化或銷燬工做,其提供了一些場景管理的方法,如runWithScene、DrawScene、pushScene和replaceScen等。
它控制FPS的顯示隱藏,窗口大小,遊戲的進入,退出,關卡的切換,取得正交模式,取得正在運行的場景,取得GL視圖,遊戲主循環入口等等
攝像機(CCCamera)
遊戲中每一個節點都須要攝像機,當節點發生縮放,旋轉和位置變化時,都須要覆蓋攝像機,讓這個節點經過攝像機進行從新渲染。
官方對於攝像機的描述是這樣的:CCCamera應用於每一個CCNode中。 在從不一樣視野觀察時起做用,OpenGL中的gluLookAt函數用來定位攝像機。 假如這個物體經過綻開、旋轉、或者平移,那麼這些操做將修改攝像機。 注意:使用攝像機或者操做旋轉、綻開、平移等屬性,你只能選其中一個,假如你使用攝像機,世界座標就會失去做用。 侷限性: 幾種節點,如CCParallaxNode,CCParticle使用世界節點座標,而且他們並不能正常工做,假如你使用攝像機移動他們(或者他們的任何父類)。 在成批的結點上(即一個結點上包含多個節點)如CCSprite對象不會正常工做當他們都從屬於一個CCSpriteBatchNode對象時。 推薦你只在建立3d特效時使用。對於2d特效來講,用CCFollow動做或者平移、綻開、旋轉更好。
場景(CCScene)
在遊戲裏,場景就是關卡。關卡由人物角色和背景構成。在電影裏,場景就是電影中的各類場面,各類場面主要由人物活動和背景等構成。而在Cocos2d-x 引擎中,場景存放的是須要渲染的佈景,任務角色和菜單,它能夠做爲一個總體,一塊兒渲染,一塊兒銷燬,一塊兒被場景切換使用。
即遊戲關卡的實施者,其管理這多個CCLayer,進行場景展示,相關業務邏輯的處理等;
佈景(CCLayer)
從概念上說,佈景就是場景裏的背景。其實就是層次的概念,這種概念在KJava時代就已經存在,就是手動地把遊戲中的場景分層(也有靠地圖編輯器實現)。
每一個遊戲場景中均可以有不少層,每一層有各自的職責任務,例如專門負責顯示背景,專門負責顯示道具,專門負責顯示任務角色等,在每一層上面能夠放置不一樣的元素,包括文本,精靈和菜單等,經過層與層之間的組合關係,咱們能夠很容易的控制和顯示各類各樣的界面了,固然,其和photoshop中的層同樣,也有透明之說,因此爲了可以看到每一層上面的東西,不少層都設置爲透明或半透明的,不然只能看到最上面的一層了。
通常一個場景能夠有不少層,好比背景圖層,物件層,NPC層,角色層,UI層等等,每一個層負責本身的功能業務,總的在一個CCScene裏共存,隨着場景的隱藏而隱藏;不一樣的層之間能夠經過設置不一樣alpha通道(透明度)進行顯示控制;
角色(CCSprite)
精靈是整個遊戲開發處理的主要對象,包括主角和敵人、NPC等,甚至隨機飄過的一片雲或飛鳥從技術上講,也是精靈,由於精靈在cocos2d-x中,就是一個能夠不斷變化的圖片,這些變化包括位置變化,旋轉、放大縮小和運動等。
動做(CCAction)
角色所具備的動做,通常用於精靈發生動做時使用,如移動,釋放魔法等。
整體來講以上的對象主要關聯以下:
Cocos2d-x的目錄結構以下:
目錄的具體結構介紹以下:
Box2D:物理引擎Box2D的相關源文件
Chipmunk:物理引擎chipmunk的相關源文件
cocos2dx:cocos2d-x引擎的核心部分,存放了引擎的大部分源文件
CocosDenshion:聲音模塊相關源文件
Debug.win32:在Windows 上調試輸出目錄
Doxygen:生成doxygen項目文檔時須要的配置文件
HelloLua:在遊戲中使用lua的示例代碼
HelloWorld:測試代碼helloworld
Js:cocos2d-x js腳本支持源碼目錄
Licenses:許可文件存放目錄
Lua:腳本語言lua支持的相關源文件
Template:包括編譯iOS和Android等平臺開發時須要的配置文件
Testjs:cocos2d-x引擎各平臺js語言的api示例代碼
Tests:cocos2d-x引擎全部api的示例代碼
Tools:包括"tolua的配置文件"和「xcode4的模板生成工具」
build-win32.bat:編譯cocos2d-x引擎的windwos項目腳本
cocos2d-win32.vc2008.sln:windows項目vs2008解決方案文件
cocos2d-win32.vc2010.sln:windows項目vs2010解決方案文件
create-android-project.bat :在windows上面建立android項目的腳本
create-android-project.sh:在linux上建立android的腳本
install-templates-msvc.bat:建立vs2010或vs2008的工程模板腳本
install-templates-xcode.sh:建立xcode工程模板的腳本
在cocos2d-x中有兩種座標系,分別是屏幕座標系和open gl座標系。
在opengl座標體系中有兩個很是重要的參數,即錨點和位置。
錨點做爲位置的參考點,錨點在設置某一個物件(如CCSprite,CCLayer)的位置時,其參照位置,數據爲(0.0-1.0)之間,默認是(0.5, 0.5),也就是說其默認參照位置是該物件的中心。若是把某一物體放到屏幕的中心,對於默認anchor來講,就是把該物體的中心放到屏幕中心 ,取值在0到1之間的好處就是,錨點不會和具體物體的大小耦合,也即不用關注物件大小,而應取其對應比率,若是把錨點改爲(0,0),則進行放置位置時,以圖片左上角做爲起始點,也就是放置位置設置對應的點。
位置顧名思義就是物體的位置。
在調用任何須要設置位置的函數或從函數獲取位置信息前,必需要明確這個函數使用的是哪一個座標系,如調用CCNode類的setPosition函數,它使用的就是GL座標系,而在處理觸摸時間時CCTouch對象在宏的座標就是屏幕座標。
另外一個重要的座標系就是和Node相關的本地座標系。這個結構和通常作3D用的場景樹的概念是同樣的。因此從Node拿到的位置是該節點的本地座標,須要經過特定的函數才能把本地座標轉換爲世界座標。並且這裏的座標都用的是GL座標系。在CCNode對象中有幾個方便的函數能夠作座標轉換。convertToWorldSpace方法能夠把基於當前node的本地座標系下的座標轉換到世界座標系中。convertToNodeSpace方法能夠把世界座標轉換到當前node的本地座標系中。
類繼承圖:
主要函數:
virtual CCObject * copyWithZone (CCZone *pZone)//克隆對象
virtual bool isDone (void)//動做是否已經換成
virtual void startWithTarget (CCNode *pTarget)//設置動做關聯的對象,動做運行前調用該方法
virtual void stop (void)//中止動做
virtual void step (ccTime dt)//設置動做的間隔時間
CCNode * getTarget (void)//獲取動做關聯的對象
void setTarget (CCNode *pTarget)//設置動做的關聯的對象
int getTag (void)//獲取動做的tag
void setTag (int nTag)//設置動做的tag
static CCAction * action ()//生成action
CCSprite是一副2D圖像,CCSprite能夠經過圖像或者圖像中的一個矩形子區域建立 若是它的父節點或者任意繼承樹上的節點是CCspriteBatchNode則具備下述特性:
父節點是CCSpriteBatchNode時具備的特性: 更快的渲染速度,特別時CCSpriteBatchNode有不少子節點的狀況下,但有如下限制:
A、不支持照相功能(例如:CCOrbitCamera動做不能執行)
B、不支持基於網格的動做(例如:CCLens,CCRipple,CCTwirl)
C、Alias / Antialias屬性屬於CCSpriteBatchNode,因此你不能單獨設置aliase屬性
D、渲染函數屬性屬於CCSpriteBatchNode,因此你不能單獨設置渲染函數屬性
E、不支持視差滾動,可是能夠經過「代理」精靈模擬 若是它的父節點時普通CCNode,那麼CCSprite具備和其它任何CCNode同樣的行爲。
雖然有以上限制,但它也有如下優勢:
A、支持渲染(Blending)功能
B、支持Alias / Antialias • 可是渲染速度會比較慢,每次只渲染一個子節點 CCSprite默認的錨點時(0.5, 0.5)
能夠說,全部與圖片有關係的,均可以用這個來處理,主要是提供圖片的加載展現,能夠加載序列幀,以便動畫播放
類繼承圖
其主要函數除了CCNode繼承下來的函數外,還有如下函數:
virtual void setTexture (CCTexture2D *texture)//設置精靈的紋理
virtual CCTexture2D * getTexture (void)//獲取精靈的紋理
bool initWithTexture (CCTexture2D *pTexture)//根據紋理初始化精靈
bool initWithTexture (CCTexture2D *pTexture, const CCRect &rect)//根據紋理指定的區域初始化精靈
bool initWithSpriteFrame (CCSpriteFrame *pSpriteFrame)//根據SpriteFrame初始化精靈
bool initWithSpriteFrameName (const char *pszSpriteFrameName)//根據spriteFrame的名稱初始化精靈
bool initWithFile (const char *pszFilename)//根據plist文件初始化精靈
bool initWithFile (const char *pszFilename, const CCRect &rect)//根據plist文件初始化精靈
bool initWithBatchNode (CCSpriteBatchNode *batchNode, const CCRect &rect)//批量根據節點初始化精靈
void setDisplayFrameWithAnimationName (const char *animationName, int frameIndex)
static CCSprite * spriteWithTexture (CCTexture2D *pTexture) //根據紋理生成精靈
static CCSprite * spriteWithTexture (CCTexture2D *pTexture, const CCRect &rect)//根據紋理指定的區域生成精靈
static CCSprite * spriteWithTexture (CCTexture2D *pTexture, const CCRect &rect, const CCPoint &offset)//根據紋理指定的區域和點偏移生成精靈
static CCSprite * spriteWithSpriteFrame (CCSpriteFrame *pSpriteFrame)//根據SpriteFrame生成精靈
static CCSprite * spriteWithSpriteFrameName (const char *pszSpriteFrameName)//根據SpriteFrame的名稱生成精靈
static CCSprite * spriteWithFile (const char *pszFileName)//根據plist文件按生成CCSprite
static CCSprite * spriteWithFile (const char *pszFileName, const CCRect &rect)//根據plist文件生成精靈
static CCSprite * spriteWithBatchNode (CCSpriteBatchNode *batchNode, const CCRect &rect)//根據節點批量生成精靈
能夠看到CCNode 幾乎是遊戲中處理的大部分類的父類,其主要有如下函數:
virtual int getZOrder (void) //獲取節點的順序
virtual const CCPoint & getPosition (void) //獲取節點的位置
virtual void setPosition (const CCPoint &var) //設置節點的位置
virtual CCArray * getChildren (void) //獲取其全部子節點
virtual CCCamera * getCamera (void)//獲取其對應的攝像機
virtual bool getIsVisible (void) //判斷節點是否可見
virtual void setIsVisible (bool var) //設置節點可見性
virtual const CCPoint & getAnchorPoint (void) //獲取節點的錨點的位置
virtual void setAnchorPoint (const CCPoint &var) //設置節點的錨點位置
virtual bool getIsRunning (void) //判斷節點是否在運行
virtual CCNode * getParent (void)//獲取父及節點指針
virtual void setParent (CCNode *var) //設置節點的父節點
virtual int getTag (void) //獲取節點的tag
virtual void setTag (int var) //設置節點的tag
char * description (void) //返回節點的描述
virtual void onEnter () //進入節點時的回調函數
virtual void onEnterTransitionDidFinish ()//進入節點後的回調函數
virtual void onExit ()//離開節點時的回調函數
virtual void addChild (CCNode *child)//增長節點
virtual void addChild (CCNode *child, int zOrder) //經過順序添加節點
virtual void addChild (CCNode *child, int zOrder, int tag)//經過順序和tag添加節點
void removeFromParentAndCleanup (bool cleanup)//刪除父節點中的當前節點並清除動做及回調函數
virtual void removeChild (CCNode *child, bool cleanup) //刪除節點
void removeChildByTag (int tag, bool cleanup)//經過tag刪除節點
virtual void removeAllChildrenWithCleanup (bool cleanup)//刪除節點並清除動做及回調函數
CCNode * getChildByTag (int tag)//經過tag獲取節點
virtual void reorderChild (CCNode *child, int zOrder)//根據order從新排序
virtual void cleanup (void)//清除動做
virtual void draw (void)//繪製本身
virtual void visit (void)//訪問節點
CCAction * runAction (CCAction *action) //運行動做
void stopAllActions (void)//中止全部的動做
void stopAction (CCAction *action)//中止動做
void stopActionByTag (int tag) //經過tag中止動做
CCAction * getActionByTag (int tag)//經過tag獲取動做的指針
unsigned int numberOfRunningActions (void)//正在運行的動做的總數
void schedule (SEL_SCHEDULE selector)//定義一個定時器
void schedule (SEL_SCHEDULE selector, ccTime interval)//定義一個定時器
void unschedule (SEL_SCHEDULE selector)//取消一個定時器
void unscheduleAllSelectors (void)//取消全部定時器
void resumeSchedulerAndActions (void)//恢復定時器和動做
void pauseSchedulerAndActions (void)//暫停定時器和動做
static CCNode * node (void)//生成一個節點
CCNode是cocos2d-x的渲染鏈,寫遊戲基本上就是和他打交道了,cocos2d-x同時只能渲染一個CCScene,所以CCScene是渲染的根節點。在構建遊戲時,通常是一個Scene中添加一個或者多個CCLayer,一個Layer中又添加多個CCSprite或者CCMenu,CCSprite中還能夠添加CCParticleSystem等等。這樣就構建了一個渲染樹,cocos2d-x歷遍這個樹來將圖像顯示在屏幕上。
coco2d-x的渲染其實是調用visit()函數來完成的:即visit()這個函數調用它包含的Child的zOrder<0的visit()函數,以後調用draw()函數,再調用Child的zOrder>=0的visit()函數,它其實是一個深度優先的算法。他的Child是按照zOrder排序的,以保證渲染的正確性。draw()的做用是繪製本身。在CCSprite這些確實須要繪製的類中,draw()調用openGL的函數來完成繪製功能——把一個紋理映射到一個矩形上。
若是要自定義繪製一些圖像,能夠重寫draw()函數,不過不要忘記調用父類的draw()函數。
能夠進行網狀關係的管理,其實CCScene,CCLayer也是一個CCNode.它提供節點增刪,包含,提供節點縮放,每一個節點有一個照相機,提供動畫支持,也就是說每個從CCNode派生的類均可以執行動畫操做;
類繼承圖:
CCLayer 是CCNode的子類 ,實現了TouchEventsDelegate接口,繼承了CCNode全部的特性,而且附加了一些本身的特性,它可以接收iPhone的觸摸事件,也可以接收Accelerometer的輸入。
其主要函數以下:
bool init () //初始化函數
virtual void onEnter ()//進入時的回調函數
virtual void onExit ()//離開時的回調函數
virtual void onEnterTransitionDidFinish ()//進入後的回調函數
virtual bool ccTouchBegan (CCTouch *pTouch, CCEvent *pEvent)//單點觸屏事件
virtual void ccTouchesBegan (CCSet *pTouches, CCEvent *pEvent)//多點觸屏事件
virtual void ccTouchesMoved (CCSet *pTouches, CCEvent *pEvent)//在觸摸屏幕移動事件
virtual void ccTouchesEnded (CCSet *pTouches, CCEvent *pEvent)//觸摸屏幕移動時間結束
virtual void ccTouchesCancelled (CCSet *pTouches, CCEvent *pEvent)//觸屏事件取消
static CCLayer * node (void)//生成layer
場景(CCScene)
類結構:
CCScene主要有如下兩個函數:
bool init () //初始化函數
static CCScene * node (void) //生CCScene
做爲場景類,爲什麼只有這兩個函數而沒有其餘方法呢,由於目前在CCScene承擔的是一個容器的功能,遊戲開發時須要渲染的對象反正CCScene裏面統一管理,包括建立、銷燬和場景切換等,並且從其類的結構圖可看出,其直接繼承了CCNode類,下章咱們會具體介紹CCNode類
在cocos2d-x中,每一個節點(CCNode)都須要用到,即當節點發生旋轉、縮放和位置變化等時,都須要覆蓋CCCamera,而後這個節點經過CCCamera從新渲染。
類結構:
其主要函數以下:
char * description (void) //返回當前攝像機的描述
void restore (void) //重置攝像機,使攝像機回到默認位置
void locate (void) //按設置的eye座標放置攝像機
void setEyeXYZ (float fEyeX, float fEyeY, float fEyeZ) //設置攝像機eye座標
void setCenterXYZ (float fCenterX, float fCenterY, float fCenterZ)//設置center的座標
void setUpXYZ (float fUpX, float fUpY, float fUpZ)//設置up的座標
void getEyeXYZ (float *pEyeX, float *pEyeY, float *pEyeZ) //獲取eye的座標
void getCenterXYZ (float *pCenterX, float *pCenterY, float *pCenterZ)//獲取center的座標
void getUpXYZ (float *pUpX, float *pUpY, float *pUpZ)//獲取Up的座標
在cocos2d-x裏面,遊戲的任什麼時候間,只有一個場景對象實例處於運行狀態,該對象能夠做爲當前遊戲內容的總體包對象
Cocos2d-x引擎除了提供了CCDirector,還提供了一個CCDisplayLinkDirector,CCDisplayLinkDirector是一個能夠自動刷新的CCDdirector。
CCDirector主要函數以下:
CCScene * getRunningScene (void) //獲取當前運行的場景
double getAnimationInterval (void)//獲取當前的FPS
virtual void setAnimationInterval (double dValue)=0 //設置FPS
bool isDisplayFPS (void) //是否在屏幕底部顯示FPS
void setDisplayFPS (bool bDisplayFPS) //設置在屏幕底部顯示FPS
CC_GLVIEW * getOpenGLView (void) //獲取CCEGLView
void setOpenGLView (CC_GLVIEW *pobOpenGLView) //設置CCEGLView
bool isPaused (void) //固然是否適合暫停
unsigned int getFrames (void) //獲取從director開始起,全部被調用的Frames的數量
ccDirectorProjection getProjection (void) //獲取OpenGl的projection
void setProjection (ccDirectorProjection kProjection) //設置Opengl 的projection
bool isSendCleanupToScene (void) // 場景替換時,是否接收到cleanup時間,若新的的場景是被push進來的,舊的場景不會收到cleanup 事件,若新的場景是被替換進來的,舊的場景就可以收到cleanup事件。
CCSize getWinSize (void) //獲取Open gl view的大小,單位爲點
CCSize getWinSizeInPixels (void) // 獲取以像素爲單位的open gl view大小
CCSize getDisplaySizeInPixels (void) //獲取以像素爲單位的open gl view 的顯示區域大小
void reshapeProjection (const CCSize &newWindowSize) //改變projection的大小
CCPoint convertToGL (const CCPoint &obPoint) //將UIKIT座標體系轉化爲opengl座標體系
CCPoint convertToUI (const CCPoint &obPoint)//將opengl座標體系轉化爲UIKIT座標體系
float getZEye (void) //獲取缺省鏡頭Z的位置
void runWithScene (CCScene *pScene) //運行場景
void pushScene (CCScene *pScene) //push場景
void popScene (void)//pop場景
void replaceScene (CCScene *pScene) //替換場景
void pause (void) //暫停遊戲
void resume (void) //回覆遊戲
virtual void stopAnimation (void)=0 //中止動畫
virtual void startAnimation (void)=0 //開始動畫
void drawScene (void) //每次frame都會被調用,無需本身調用
void purgeCachedData (void) //刪除緩存的數據
void setGLDefaultValues (void) //設置Opengl的默認值
void setAlphaBlending (bool bOn) //設置是否啓用opengl的alpha通道
void setDepthTest (bool bOn)//設置是否測試景深
virtual void mainLoop (void)=0//遊戲主循環
void applyOrientation (void) //是設備方向設置生效
ccDeviceOrientation getDeviceOrientation (void) //獲取設備方向
void setDeviceOrientation (ccDeviceOrientation kDeviceOrientation) //設置遊戲橫屏
bool enableRetinaDisplay (bool enabled) //設置是否啓用視網膜屏支持
bool isRetinaDisplay ()//是否啓用視網膜屏支持
void resetDirector () //重置遊戲
static bool setDirectorType (ccDirectorType obDirectorType) //設置directortype,目前主要有kCCDirectorTypeNSTimer、kCCDirectorTypeMainLloop,kCCDirectorType-ThreadMainLoop、kCCDiretorTypeDisplayLknk
紅薯這個編輯器不是很好 圖片太多 上傳不了,今天喝了點小酒有點累了,你們能夠直接在這個連接上找到關於
cocos2d-x的鏈接:
http://pan.baidu.com/share/link?shareid=367419575&uk=3088193979(有圖有描述 相比這個較好點 最後提醒必定熟悉這個!)
好吧今天就這樣,下一章節咱們就進入2dx引擎真正的分解了,再次聲明 本系列會持續更新,有想搭車的趕忙哈
ps:因最近公司項目緊張,因此本系列文章更新時間在1周或者2周吧,本人擅長遊戲服務器端開發,遊戲愛好開發者羣:qq:275459491 我的qq:502959937 加時說明來自osc!