Cocos2d-x基礎:TestCpp之ActionsTest




動作效果,都是作用於CCNode。

那CCSprite精靈也屬於CCNode,當然就可以使用動作啦~


精靈的縮放:

    setScaleX(float fScaleX);   
    setScaleY(float fScaleY);   

        理解:設置節點X、Y軸的比例因子,默認爲1.0f,

                    如果參數爲負數,則改變座標軸的方向。


精靈的透明度:

void CCSprite::setOpacity(GLubyte opacity)    
        理解: 設置精靈的透明程度。參數Glubyte是unsigned char類型,範圍是0~255。0 是全透明。


精靈的顏色:

void CCSprite::setColor(const ccColor3B& color3)
        理解:參數是一個顏色結構體,結構體有三個參數:分別是r,g,b,且都是unsigned char類型。

精靈的動作概述:

CCAction * CCNode::runAction(CCAction* action)
        理解:參數是一個CCAction動作。可以是單個動作,也可以是CCSequence一系列動作(按順序執行)。但系列動作中只能是CCFiniteTimeAction類及其子類。

        

        主要的動作類一共有三個,從左到右:有限時間的動作類、跟蹤動作類、動作速度類。

        將精靈(節點)添加動作效果,需要調用上面的runAction()語句。那麼我們只需要創建想要的Action對象,直接調用就好了。

        還是一步一步跟着TestCpp來學習。

精靈的移動:

    CCActionInterval*  actionTo = CCMoveTo::create(5, ccp(s.width-40, s.height-40));
    CCActionInterval*  actionBy = CCMoveBy::create(1, ccp(s.width-40, s.height-40));
    CCActionInterval*  actionByBack = actionBy->reverse();

        理解:CCMoveto和CCmoveBy都是CCactionInterval的子類。Moveto是在一段時間內移動到一個絕對座標位置。Moveby是在一段時間內移動到以自己爲原點的相對座標位置。reverse()就是反向動作。

精靈的旋轉:

        和移動類似。

        CCRotateTo是移動到特定的角度。

        CCRotateBy是順時針旋轉一個角度。


剩下幾個重要的類:

        CCRepeatForever:不斷重複動作。

        CCSequence:組個各種動作的效果。


看懂結構圖後,大部分的動作都是類似,也就不做筆記,也不整理了。

                

        

        

        


發佈了31 篇原創文章 · 獲贊 2 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章