C++CocosStudioで作成で作成したLayerの子要素を自作したLayerに乗せ換える話です。CocosStudioで「Layer」を作成し、csb形式でpublish後にCocos2d-x側から、そのレイヤーを呼び出します。すると、取得できる型がcocos2d::Node*型で取得できます。CocosStudioでこんな画面から作るやつです。CSLoader::getInstance()->createNode("layer.csb");このNodeから子要素をgetChildByTag()や、getChildByName()で取得し、それらにアニメーションやイベントを設定しても良いのですが、このコードがあるメソッドのコード量が大変多くなってしまいます。いうか、LayerやNodeを継承した自作のクラスに子要素が乗っていた方が何かと便利です。(データ管理的な意味でまた、戻り値のNodeですが、Layerにアップキャストできない単なるNode型となっています。いうわけで、自作のクラスにNodeに乗っている子要素を移し替えたいと思います。自作のLayerクラスを用意します。CreateFunc::create;}【補足】CreateFuncについてはこちらを参照ください。true;}これで、後はSceneを作成するところで普通にMyLayer::Create()してやれば自作のクラスに要素が移っています。定型的な処理なので以下のようにUtilityにしておいてもいいと思います。targetに全てのノードを移動します。}}また、CocosStudioで作成したLayerの大きさと、Cocos2d-x側の画面の大きさが違うと位置がずれるため、上記に各々の比率を見て表示位置を変更する処理を追加すると柔軟性が増すと思います。確認していないですが、以下のようにすれば位置も縮尺によって追従すると思います。}}最後に、この話、何もCocosStudioで作ったLayerでなくても任意のNode間で実行できるので、まぁ、、、他でもそういった用途に使用できます。»Profile受託ソフト会社員でWin系業務屋。趣味でCocos2d-x/C++を触っています。etc...主に受託・開発ネタ、Windowsの事、Srellaris、ゲーム制作の進捗の事を喋ります。4.0がリリースされたみたいCocos2d-xをやめてUnityに移行した話@2019冬PicojsonのJSON書き出しをもっと便利にするスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。