cocos2dx

cocos コマンド

0

Cocos2d-x ver.3 で cocos コマンドという便利なコマンドラインツールが追加されました。実際に使用してみたので、備忘録兼ねてまとめておきます。

最近公式サイトのドキュメントがかなり充実してきていますので、英語が苦ではない方は公式ドキュメントを参考にするとよいかと思います。
How To Start A New Game

Cocos2d-x ver.3 をインストールしたディレクトリを ~/cocos2d-x/ として進めていきます。
(続きを読む…)

ABC 2014 で LT してきました

1

3/12 に秋葉原で開催された Android Bazaar and Conference 2014 Spring (通称 ABC)で LT してきましたので、その報告です。

発表資料

(続きを読む…)

デブサミ2014で Cocos2d-x に関して話をしました

1

Cocos2d-x Logoデブサミ2014 で Cocos2d-x の開発に関してお話をさせていただく機会を頂きました。
タイトルは「Cocos2d-x によるスマートフォンアプリ開発のこれまでとこれから」で、私自身が Cocos2d-x で開発してきたこれまでの2年間のお話と Cocos2d-x のこれからのお話をさせていただきました。
(続きを読む…)

既存の Cocos2d-x プロジェクトを iOS7 対応させる方法

1

iOS7

iOS7 がリリースされたので、iOS7 対応に関して書こうと思います。
Cocos2d-x ver.2.1.5 で iOS7 対応されたようですが、ver.2.1.5 未満で作成された既存の Cocos2d-x のプロジェクトを iOS7 対応する方法です。素直に Cocos2d-x のバージョンを上げればいいのですが、Cocos2d-x の本体の方を色々といじっている場合などは、なかなか面倒なところです。また、ver.1.x のプロジェクトなどもメジャーバージョンアップさせるのは結構厳しいところです。かと言ってメンテナンスはあるのでここでは必要最低限の対応方法で Xcode5 に対応させたいと思います。
(続きを読む…)

「Cocos2d-x 開発のレシピ」のサポート用 Facebook ページ

1

Cocos2d-x 開発のレシピ

カバー写真

お陰様で、なかなかの売れ行きの拙書「Cocos2d-x 開発のレシピ」です。

Facebook などでも少しづつご質問を頂くようになったので、サポート用 Facebook ページを作成しました。ご質問などは下記ページからして頂ければ執筆陣一同、取りこぼしなく回答させて頂きます。感想なども大歓迎です。

「Cocos2d-x 開発のレシピ」Facebook サポート用ページ

Amazon の書籍詳細ページ

「Cocos2d-x 開発のレシピ」を執筆しました

1

最近、盛り上がってきている Cocos2d-x。韓国語や英語でも本が出版されてきました。そん中、Cocos2d-x 初の日本語書籍を共著で執筆させて頂きました。いつも一緒にアプリ制作をしていただいている古木さん齊藤さんと共に書かせて頂きました。6/5 発売予定です。

Cocos2d-x 開発のレシピ

カバー写真


(続きを読む…)

[Cocos2d-x] CCLayerGradient クラスを使用してグラデーションを描画する

0

CCLayerColor クラスを使用するとレイヤの背景に色を付けることができますが、CCLayerGradient クラスを使用するとレイヤにグラデーション付けることができます。

CCLayerGradient::create メソッドの引数にグラデーションの開始色、終了色、グラデーションの方向を指定します。最後のグラデーションの方向はアンカーポイントの指定と同じように、左下が (0, 0) 、右上が (1, 1) になります。

ccColor4B yellow = ccc4(255, 255, 0, 255);
ccColor4B black  = ccc4(0, 0, 0, 255);
CCLayerGradient* layer = CCLayerGradient::create(yellow, black, ccp(1.0f, 1.0f));
this->addChild(layer);

グラデーションを表示

グラデーションを表示


(続きを読む…)

[Cocos2d-x] CCDrawNode クラスを使用して線、図形を描画する

1

2013.5.25 追記
CCDrawNode を Android で使用する場合、「色が正しく表示されない」「透過ができない」という問題があります。これを解消するには CCDrawNode::render メソッドの下記行の GL_FALSE を GL_TRUE に修正してください。

glVertexAttribPointer(kCCVertexAttrib_Color, 4, GL_UNSIGNED_BYTE, GL_FALSE, sizeof(ccV2F_C4B_T2F), (GLvoid *)offsetof(ccV2F_C4B_T2F, colors));

参考 URL
CCDrawnode not respecting alpha?

CCDrawNode クラスを使用して線や図形を描画する方法です。レイヤに追加した CCDrawNode のインスタンスに draw 系のメソッドを使用して簡単に線や図形を描画することができます。

—– 追記ここまで —–

まず、CCDrawNode をレイヤに追加します。

CCSize size = CCDirector::sharedDirector()->getWinSize();
CCDrawNode* node = CCDrawNode::create();
node->setPosition(ccp(size.width/2, size.height/2));
this->addChild(node);

(続きを読む…)

[cocos2d-x] CCCamera を使用してスターウォーズのオープニングシーンを再現

3

CCCamera というクラスは全ての CCNode がプロパティとして保持しているクラスです。CCCamera はそのノードをどの地点から見ているかを指定することができます。もう少し詳しく書くと OpenGL の gluLookAt 関数でカメラの位置を定めるのに使用されます。CCNode にそれぞれ指定できますので、シーンやレイヤ、スプライト毎にカメラ位置を指定可能です。

例えば HellowWorld の画像のカメラ位置を下記のように指定します。

float x=0, y=0, z=0;
this->getCamera()->getCenterXYZ(&x, &y, &z);
this->getCamera()->setCenterXYZ(x, y+0.0000003, z);

これは下記の画像のように表示されます。
CCCamera によるカメラ位置指定
(続きを読む…)

[Cocos2d-x] モーダルレイヤを作成する

1

アラートなどを表示するときにモーダルレイヤを出すことはよくあると思います。このモーダルレイヤを出す時に苦労するのがモーダルレイヤの下にあるボタンなどを押せなくする必要があることです。

例えば、HelloWorld のサンプルアプリは右下にあるボタンを押すとアプリが終了します。

モーダルレイヤ表示前

モーダルレイヤ表示前の状態


(続きを読む…)

Go to Top