Cocos2d-xプロジェクトからCCBファイルをロードしていますが、カスタムクラスからCCBAnimationManagerにアクセスできません。
Objective-Cを使用したCocos2dでは、次のように簡単です。
CCBAnimationManager * AnimationManager = self.userObject;
しかし、C ++での同じ実装はnull値を返し、実行するとクラッシュが発生します...
何か案が?Thks
Cocos2d-xプロジェクトからCCBファイルをロードしていますが、カスタムクラスからCCBAnimationManagerにアクセスできません。
Objective-Cを使用したCocos2dでは、次のように簡単です。
CCBAnimationManager * AnimationManager = self.userObject;
しかし、C ++での同じ実装はnull値を返し、実行するとクラッシュが発生します...
何か案が?Thks
はい、obj-Cのように単純ではありません。新しいTestCppプロジェクトには、この例があります。(CocosBuilderTest-> AnimationsTest)を見てください。
基本的に、CCNodeLoaderLibraryを作成し、カスタムローダークラスに登録する必要があります。
CCNodeLoaderLibrary * ccNodeLoaderLibrary = CCNodeLoaderLibrary::newDefaultCCNodeLoaderLibrary();
ccNodeLoaderLibrary->registerCCNodeLoader("TestAnimationsLayer", AnimationsTestLayerLoader::loader());
次に、そのccNodeLoaderLibraryを使用してCCBReaderを作成します
cocos2d::extension::CCBReader * ccbReader = new cocos2d::extension::CCBReader(ccNodeLoaderLibrary);
そして今、あなたはこのccbReaderを介してCCBAnimationManagerを手に入れることができるでしょう
ccbReader->getAnimationManager()