読者です 読者をやめる 読者になる 読者になる

プログラミングの魔物

エラー、バグ、仕様変更と戦うブログ

cocos2d-x覚書

CCArrayから取得したオブジェクトを使用するにはtolua.castする

local str = arr:objectAtIndex(0)
str = tolua.cast (str, "CCString")

http://www.cocos2d-x.org/boards/11/topics/14344

BGMが流れていない場合でもバックグラウンド時には

SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();

が呼び出されるので

if (SimpleAudioEngine::sharedEngine()->isBackgroundMusicPlaying()){
    SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
}

すると良いかもしれない(BGMを流すことが決まっている場合はあまり意味は無い)

LuaエンジンのReadme。イベントハンドラ、コールバック等の文書
http://www.cocos2d-x.org/projects/cocos2d-x/wiki/New_Lua_Engine_Documents

自分用メモ

当たり判定等の描画用にdrawまたはvisitをオーバーライドする。
この辺はcocos2dも同じ。
drawはノードのZオーダー0のすぐ下に描画される。
visitは親がすべてのノードを描画するので、前面か背面に描画できる。

/**
デフォルトのGLの状態
- glEnableClientState(GL_VERTEX_ARRAY);
- glEnableClientState(GL_COLOR_ARRAY);
- glEnableClientState(GL_TEXTURE_COORD_ARRAY);
- glEnable(GL_TEXTURE_2D);
*/
virtual void draw(void);

/** 親のvisit呼び出さないと他のノードが描画されない */
virtual void visit(void);