中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CocoStudio的使用

發布時間:2020-07-21 23:50:04 來源:網絡 閱讀:1483 作者:kimspirit 欄目:開發技術

 大家好,在這里我想分享一下CocoStudio的動畫編輯器幀事件,以及在代碼里面如何調用CocoStudio動編,關于基礎的CocoStuio方法請查看CocoStudio基礎視頻.還有我是第一次寫博客如果有什么地方寫錯了,請多多指點.


   在講解骨骼動畫的幀事件之前我想說一下基礎視頻里面的CocoStudio里面的動畫編輯器跟現在最新版的動畫編輯器之間的區別,最新版的動畫編輯器有2個模式.一個是形體模式,另一個是動畫模式,在最新版本中我們需要在形體模式下構建骨骼動畫,然后再動畫模式下編輯,基礎視頻中的教程是不區分動畫模式與形體模式的.


   就介紹到這里我們進入正文.什么是幀事件?幀事件就是當我播放動畫時當到達一定幀數以后可以觸發一些額外的事情.比如說當我播放一個×××手開槍的動畫我可以把當×××手把槍抬起的時候發射×××,然后把槍放回去.如果想觸發幀事件需要在CocoStudio的動畫模式下的指定幀上面定義一個名稱,如下圖

CocoStudio的使用

接下來導出該項目后來看看在C++代碼里面是如何調用的吧,對了我在這里使用的是Cocos2dx3.0Bata2,關于Cocos2dx2.x的會在明后天制作.用Cocos2dx3.x版本時需要先導入一下Lib文件,如圖CocoStudio的使用


cocos\editor-support\cocosbuilder\proj.win32,與cocos\gui\proj.win32將這兩個導入進來。然后再你的項目上點右鍵屬性CocoStudio的使用包含代碼CocoStudio的使用

就可以在代碼里使用CocoStudio的項目了。


這里是我的Demo

#include "cocostudio/CocoStudio.h"
using namespace cocostudio;
//因為我導出CocoStudio項目時生成了2個Png跟plist文件所以加載了2次
    ArmatureDataManager::getInstance()->addArmatureFileInfo("DemoPlayer0.png","DemoPlayer0.plist","DemoPlayer.ExportJson");
    ArmatureDataManager::getInstance()->addArmatureFileInfo("DemoPlayer1.png","DemoPlayer1.plist","DemoPlayer.ExportJson");
    //切忌這是CocoStuio的項目名稱
    auto pAni = Armature::create("DemoPlayer");
    pAni->getAnimation()->playWithIndex(0);               //這里是播放第幾個動畫。
    pAni->setPosition(Point(visibleSize.width*0.5f,visibleSize.height*0.5f));
    pAni->setScale(0.75f);
    this->addChild(pAni,10);


現在來設置幀回調首先聲明一個回調函數

void onFrameEvent(Bone *bone, const std::string evt, int originFrameIndex, int currentFrameIndex);//在頭文件中聲明
//在Cpp中實現
void HelloWorld::onFrameEvent( Bone *bone, const std::string evt, int originFrameIndex, int currentFrameIndex )
{
    if(evt == "kaihuo"){
        log("Fire");
    }
}
//在構建骨骼動畫時聲明幀事件回調
pAni->getAnimation()->setFrameEventCallFunc(this,frameEvent_selector(HelloWorld::onFrameEvent));

CocoStudio的幀事件回調就這么簡單大家試試把. 我是第一次寫博客那里寫錯了請多多指點.

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阆中市| 龙海市| 山阳县| 大竹县| 万源市| 兴义市| 武汉市| 当阳市| 铜陵市| 耿马| 阳泉市| 邯郸县| 久治县| 通海县| 濮阳市| 高淳县| 大关县| 南汇区| 汕头市| 策勒县| 宜黄县| 安陆市| 龙川县| 南和县| 灵丘县| 泽州县| 藁城市| 玉田县| 泽普县| 吐鲁番市| 故城县| 青河县| 潼南县| 江安县| 郯城县| 高邮市| 甘南县| 治多县| 汕头市| 台中市| 织金县|