cocos2d-x

cocos2d-x 3.0 betaの描画関連ソースを読んだ感想

cocos2d-x 3.x系はバージョンごとに大きな変更が入り、互換性保証が無理無理な状態になってますが、 betaで、ものすごく大きなジャンプが入ったようです。これまでのcocos2d-xの描画は、 ①毎フレーム、DisplayLinkDirectorのmainLoop呼び出し ↓ ②現在のシー…

cocos2d-x 3.xでの、Eclipse(ADT)ブレークポイントデバッグ方法

cocos2d-x3.0Alpha0でのブレークポイントデバッグに成功したのでやり方をメモします。 2.x系のブレークポイントデバッグ方法については、この記事の一番下にあげる本に紹介されてるので読んでください。①清水さんの「Cocos2d-xによるiPhone/Androidアプリプ…

パーティクルの設定をプログラムで動的に変える

※こちらは、細かい使用方法の調査は同僚に行っていただきました。ありがとうございます!パーティクルの色や放出量や半径といったプロパティをCCAction系の使用感覚で変えたいことがあると思います。実は、任意のプロパティの値をTween的に変更する方法が用…

パーティクルを移動した時に残像を出さなくする

パーティクルでCCParticleSystemQuadを使っていて、CCMoveToなどでノードごと移動すると、残像現象が起こります。 どういうことかというと、一度放出された粒子は、ノードのsetPositionに追随せず、 発生点からの計算された軌道にしたがって動くわけです。こ…

CCMoveTo, CCMoveByなどのCCAction系の競合対策

CCMoveToなどのアクションでは、到達時間と目標値(By系は変更量)を指定します。これらは、あるアクションをやっている途中にもうひとつ別のアクションを重ねると、思わぬ動作をすることがあります。 一つ例を挙げます。 あるCCSpriteオブジェクトが(0,0)に…

cocos2d-xでCocosDenshionのデバッグログを出力する方法

CocosDenshionのデバッグ出力マクロCDLOGは、デフォルトの条件付きコンパイルでは何も出力しません。 SimpleAudioEngineは、エラーになってもCDLOGでログを吐いて終了するだけで、他に何もエラー通知をしないメソッドを含んでいる(loadなど)ので、CDLOGを…

cocos2d-xでメモリリークを防ぐ開発習慣

cocos2d-xはC++で開発するため、メモリ管理が自由にできてパフォーマンス最適化がしやすい反面、人為的ミスでメモリリークや解放処理ミスを起こしやすい環境だと言えます。メモリリークや解放処理ミスは再現や修正が非常に難しいバグであり、開発工程終盤に…

SuperAnimationConverterの使い方メモ

最近cocos2d-xでSuperAnimationConverterを使っています。SuperAnimationConverterとは、簡単に言うと、FlashProffesionalで作ったSWFをcocos2dシリーズで再生させるためのツールとライブラリです。 SWFをスプライトシート化するツールは多くありますが、キ…

SuperAnimationConverterのcppファイルのcocos2d-x2.1.4への対応

SuperAnimationConverterという、FlashProffesionalで作ったswfアニメをcocos2dシリーズで再生制御するためのライブラリがあります。ccoos2d-x2.1β3までは対応しているようですが、2.1.4に組み込んだらビルドエラーが出たので、解消方法をメモします。エラー…

cocos2d-xを学習する方法:和書の書評

cocos2d-x関連の和書で、発刊が周知されていた3冊が出揃いました。 この記事では、それらを紹介し、個人のレベルに合わせてどれを読んでいけばいいかお勧めを書きたいと思います。より初心者向けのものから書いていきます。cocos2d-x入門作者: 清水友晶出版…

cocos2dの派生クラスで気をつけること2つ

また釣りっぽいタイトルになってしまった。。。 短いキーワードでタイトルを作ると自ずとそうなるのだろうか。 さて、cocos2d-xの書籍として「cocos2d-x 開発のレシピ」というのが発売されてまして、先日ひと通り読みました。 その上で、CCObjectを継承した…

cocos2d-xでxcodeプロジェクトを作成した時に最初にすべきこと

意図せず釣りっぽいタイトルになってしまった。。。ここではinstall_template.shで導入したテンプレートを使ってxcodeプロジェクトを作成した時に最初にすべきことを書きます。一言で言うと、それはResourcesグループとClassesグループのPathを設定すること…

cocos2d-xで等角タイルマップを扱うときのはまりどころ

■必須設定 http://www.cocos2d-x.org/boards/6/topics/25129 に設定を記載してくださった方がおり、この記事はその紹介です。cocos2d-xバージョン2.1.3rc0(5/1リリース版)で等角タイルマップを扱うための必須設定は以下となります。 AppDelegate.cppに以下…