問題タブ [cocosbuilder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
animation - CocosBuilder タイムライン アニメーションに関する問題
Cocosbuilder を使用して CCLayer を作成しました。「MyAnim1」と「MyAnim2」という 2 つのタイムライン アニメーションがあります。それらのどれも自動実行されません。MyAnim1 は MyAnim2 にチェーンされています。最初のアニメーションを実行するために CCBAnimationManager を使用しています。そしてそれは機能し、2番目のアニメーションは私が期待したようにアニメーション1に連鎖しています. しかし、ここで問題が発生します。最初のアニメーションは、2 番目のアニメーションが開始されると初期状態に戻ります。これはバグですか?2 番目のアニメーションが開始されたときに、最初のアニメーション ステータスを終了ステータスに保つ方法はありますか?
cocos2d-iphone - 実行時に作成された CCNodes で runAnimationsForSequenceNamed が機能しない
現在、文字のあるタイルのボードがあるシーンのあるゲームに取り組んでいます。タイルは、動的ボード上の配置と「文字値」により、実行時に配置されます。
Tile.ccb という名前の ccb ファイルを作成しました。これは、背景グラデーションと TTF レイヤーを備えた小さくてシンプルな CCNode です。CCNode には「Touched」というタイムラインがあり、ユーザーがタイルに触れたときに再生される短いアニメーションが含まれています。ノードには、カスタム クラス セットもあります。(STタイル)
現在、次の方法ですべてのタイルをプログラムでロードしています。
ボード上の位置の新しいタイルを作成して返します。Cocos2D (Objective-C) では、STTile は CCNode のサブクラスです。
タイルが表示され、letterLabel を適切に調整できます。ただし、アニメーション「Touched」の再生は機能しません。次のコードは STTile の一部であり、タッチ時にアニメーション/シーケンスを再生するために使用されます。
「self.userObject」の値 (CCAnimationManager を保持する) は、ロード直後に [CCBReader nodeGraphFromFile] によって「クリーンアップ」されるため、NULL です。これは設計によるものですか?もしそうなら、なぜですか?CocosDragon の例に見られるように、タイル ノードが「デザイン タイム」に「ボード」レイヤーに配置されている場合、アニメーション化のための同じコードは問題なく機能します。(CCB 内の CCBFile 参照)
実行時に CCB ノードの複数のインスタンスを作成し、それらでアニメーションを実行できるようにするにはどうすればよいですか? 設計時にノードを配置することは、常にオプションとは限りません。前もって感謝します!
cocos2d-iphone - どのバージョンの Cocosbuilder と Cocos2d-iphone を選択すればよいですか?
今は 2013 年 8 月 25 日です。この質問をしている時点で、Cocos2d-iphone の最新の安定バージョンは 2.1 であり、CocosBuilder の最新の安定バージョンは 2.1 です。CocosBuilder 2.1 で Cocos2d-2.0 を使用し、cocosdragon code.zynga.com/2012/10/creating-a-game-with-cocosbuilder/ というチュートリアル プロジェクトをテストしていました。しかし、作成した CCLayerGradient が cocos2d 2.0 と互換性がないことがわかりました。ググってみると、他の人にも同様の問題があることがわかりました。github.com/cocos2d/CocosBuilder/issues/129
次に、cocos2d-iphone を 2.1 バージョンにアップグレードします。しかし、CocosBuilder 2.1 は cocos2d 2.1 とも 100% 互換性がないため、今回はさらに多くの問題があります。https://github.com/cocos2d/CCBReader/issues/3
そして、cocosbuilder v2.1-rc3 は cocos-iphone 2.1 beta2 で動作する、cocos2d-iphone-2.1-beta4 を使用することを推奨する人がいると言っているのを見ました。https://github.com/cocos2d/CocosBuilder/issues/129 これら 2 つの提案はまだ試していません。
私は初心者であり、Github に慣れておらず、コーディングやコンパイルの知識もあまりないためです。そこで、経験のある方からのアドバイスをいただきたいです。どのバージョンの cocos2d-iphone と cocosbuilder を使用すればよいですか?
cocos2d 2.0 と 2.1 には安定版があるので、rc (rc の意味すらわかりません) または cocos2d-ihphone のベータ版を使用するつもりはありません。私は cocosbuilder 3 を使用するつもりはありません。なぜなら、私の能力を超えたバグがあるかもしれないと書かれているからです。(cocosbuilder 3 を試しましたが、適切な CCBReader ファイルを入手する場所さえ見つかりません)
この長い話を読んでくれてありがとう。この問題に対処するのに数日かかりましたが、失敗しました。ナップショットを保持せずに cocos2d を 2.0 rc1 から 2.1 に更新する過程で、古いプロジェクトを台無しにしてしまいました。どこに聞いたらいいのかわからないので、どんな提案でも大歓迎です!
cocos2d-iphone - 初期化される前に CCSprite のサイズを取得する方法は?
私はcocos2dとobjective-cを使って簡単なゲームを書いています。このゲームでは、敵のスプライトにランダムな位置を与えます。異なる敵が重ならないように、新しいスプライトの CGRect がランダムな位置で他のスプライトの CGRect と重ならないようにチェックを書きます。
私の質問は、新しいスプライトを初期化する前に CGRect のサイズを取得するにはどうすればよいですか? また、ccbi ファイル (cocosbuilder) を使用してスプライトを初期化する場合、これをどのように行うのですか?
以前に行ったことは、新しいスプライトを初期化する前に、敵の最初のフレームを示す png ファイルを使用して一時的なスプライトを初期化することです (すべてのフレームは同じサイズです)。次に、tempSprite.boundingBox のようなサイズを使用します。うまく機能しますが、すべての新しい敵スプライトを初期化する前に tempSprite を作成するのは効率的ではないと思います。
現在、cocosbuilder を使用してゲームを変換しようとしています (ccbi ファイルを使用するとアニメーションの調整が容易になるため)。初期化する前にスプライトのサイズを知るにはどうすればよいですか? [CCBReader nodeGraphFromFile:@"enemySprite.ccbi"] を使用して tempSprite を作成し、tempSprite.boundingBox を使用してそのサイズを取得できると思います。しかし、それは正しい方法ですか?CPU とメモリのリソースを非常に無駄に感じます。更新:うまくいかない方法を試しました。boundingBox のサイズ値は (0,0) (位置の値は右) であるためです。
objective-c - ディストリビューション プロビジョニング プロファイルを使用すると Cocos2d プロジェクトがクラッシュする
アプリの cocos2d アニメーションに ccbi ファイルを使用しました。
これにより、アニメーション画面が読み込まれます。xcodeに接続することで、シミュレーターと実際のデバイスで完全に動作します。しかし、ipa ファイル (アドホック プロビジョニング プロファイル) を使用してアプリを実行すると、クラッシュします。
これは SongScene.m の一部です。
}
ios - CocosBuilder アニメーションが実行されていません
CCLayerColor を右上から左下に移動するだけの CocosBuilder で単純なアニメーションを作成していますが、何らかの理由でアニメーションが実行されません。タイムラインを自動再生に設定し、2 秒以上再生します。すべてのレイヤーを分割し、それらのレイヤーを CCScrollLayer に追加するクラスがあります。シーンからレイヤーを削除してから CCScrollLayer に追加すると、アニメーションが削除され、実行されないことが問題なのかどうか疑問に思っています。
CCLayerColor オブジェクトが画面に追加されているのがわかりますが、アニメーション化されていません。
状況に対処するために CCScrollLayer にカスタム コードを追加しましたが、アニメーションが実行されない理由について混乱しています。どんな助けでも素晴らしいでしょう!
編集: CocosBuilder では、タイムライン上のアクションが、アクションを実行するオブジェクトに直接リンクされているか、シーンを介してそのオブジェクトに何らかの形でリンクされているのでしょうか?
ios - CocosBuilder と互換性のある CCBReader のバージョン
現在、cocos2d iPhone 2.1 を使用しており、CCBReader と CocosBuilder を使用してアプリケーションを作成しようとしています。git の master ブランチから CocosBuilder 3.0 alpha 5 と最新バージョンの CCBReader をダウンロードして使用しています: https://github.com/cocos2d/CCBReader
このバージョンの CCBReader を使用すると、CCScene として読み込まれ、CocosBuilder のレイヤーが画面に表示されますが、何らかの理由でアニメーション化されません (タイムラインに従っていくつかのアニメーションが発生するはずです)。私が使用しているこれらの製品のバージョンと何か関係があると思いますか? 他の誰かが以前にこの問題を経験したことがありますか? または、cocos2d iPhone v2.1 および CocosBuilder 3.0 alpha 5 で使用する CCBReader のビルドを誰かに教えてもらえれば、それは素晴らしいことです!