Cocos2d-xで ステージビルダー機能開発 技術・UIで工夫したところ
株式会社トランスリミット 川端 和樹
1400万ダウンロード 1000万ダウンロード以上
ステージを つくる
ステージをあそぶステージを あそぶ
ステージビルダー機能
1日に1万ステージが作られている 10秒に1つのステージが作られている
伸びるオブジェクトcocos2d::ui::Scale9Spriteで処理
->動的に剛体もサイズに応じて作り直している
伸びるオブジェクトSprite生成し続ける ->エディター画面で重くなる
->一つのSpriteにシェーダで描かせる
ステージの保持
{ }オブジェクトのタイプ ポジション スケール 角度
コンテントサイズ
->データサイズに気をつける
オブジェクトの回転剛体を持つオブジェクトに
setRotationを行っても反映されない
中間ノードを挟んでそれにsetRotationすることで解決
タップの判定BoundingBoxでタッチ判定をしていた
->重なった時に編集できない
図形内の座標に変換して 頂点間とのベクトルと外積を計算 ->すべて正かどうかで判断
ステージのクリア率
->Amazon SNSにメッセージ送信
プレイ回数を毎回計測するAPIを作ると サーバーの負荷がかかる
->Amazon SQSで集計
Deeplink
iOS9だとTwitterの内部ブラウザがDeepLink非対応
まとめ・Cocosで物理エンジンを扱うのは大変
・バイナリのサイズを抑えられる・海外からは容量の大きいアプリは嫌がられる
・直接コードをいじれる
・情報リソースの少なさ、仕様・バグの放置