Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
ポッピンゲームズジャパンにおける
cocos2d-xでの
ソーシャルゲーム開発事例
ポッピンゲームズジャパン株式会社 小林敬介
目次
• 自己紹介
• 弊社開発の歴史
• cocos2d-xへの移行
• 苦労
• まとめ
喋るつもりだった内容がだいたい全部書かれてた
自己紹介
• ポッピンゲームズジャパン株式会社エンジニア統括
• iOS&Android向けソーシャルゲーム
• 「ピーターラビットガーデン」「アリスの不思議なテ
ィーパーティー」「ピクセル&ダンジョンズ」ほか
• blog : http://...
弊社開発の歴史
弊社開発の歴史
• iOSでゲーム作る
• Unityよりcocos2dの方が使いやすそう
• iOSアプリ開発者がいたので
• 三作くらい作った
• Androidのビッグウェーブに乗りたい
• cocos2d-xに けた
Unity不採用
• cocos2d使ってたので
• 慣れたXcodeで開発できるので
• 2Dゲーム主体なので
• オープンソースじゃないので
cocos2d-xへの移行
cocos2d-xへの移行
• 主目的はAndroid対応
• Androidエミュレータはつらい
• 試験用の端末をたくさん買うことに
cocos2d-xへの移行
• cocos2dの経験はそのまま使える
• 普通のAndroid開発のノウハウはあま
り活きないかも
• 環境構築とか、周辺的な部分は役立つ
• あと課金関連
cocos2d-xへの移行
• Xcodeで開発
• シミュレータやiPhone実機で確認するのが
とても楽
• Eclipseの出番はAndroid実機確認くらい
• Android特有の問題はそれほど無い
• リソース関連、課金関連くらい
cocos2d-xへの移行
• project-creator/create_project.py で一発
• Android開発環境の準備はやや手間
• エミュレータがアレなので実機が無いと
辛いのもネック
• 普通のAndroid開発したこ...
cocos2d-xへの移行
• 言語はC++にした
• 外部ライブラリの使用がちょっと面倒
• ヘッダオンリーのライブラリだとちょっ
と嬉しい
• C++11なんか有効にしちゃったり
• 最近JSBの盛り上がりが気になる
苦労
C++
• ほかの言語に慣れた後のC++は辛い
• virtual とか :: とか
• ヘッダファイル長い
• 配列・ハッシュ・文字列がめんどい
• 外部ライブラリもいれなきゃ
CocosBuilderを使う
• なるべくC++のコードを書きたくない
• きっと再利用しやすいはず
• クオリティも上がるだろう
C++
• ひたすらハードコードで紐付けることに
• CCB_MEMBERVARIABLEASSIGNER_GLUE ,
CCB_SELECTORRESOLVER_CCMENUITEM_GLUE
• 妙に長いマクロ
• 「CCB_STATIC_...
アプリ内課金
• 絶対必要なんだけど、めんどくさい
• iOSではObjective-C++でOK
• AndroidはJNIでなんとかする
• Java側も書かないといけない
• がんばりたくない場合
• 外部ライブラリ・サービスに頼る手も…?
外部ライブラリ
• 通信関係がパワー不足
• CCHttpClientはver2.1.4で多少改善
• 内部的にはlibcurl+pthreadなので自分で改良しちゃ
うのもあり
• httpsが使えません
• OpenSSLを自分で用意しまし...
外部ライブラリ
• POCO
• 何でも入ってるが、そんなに豪華じゃなくてい
いよという気もする
• libcurlで十分なら、いらないかも
• JSONにRapidjson
• cocos2d-x標準でJSONパーサ入らないかなぁ
• C++...
画像・音声リソース
• AndroidではSEにwavは not so good 、 ogg が best と書か
れている
• http://www.cocos2d-x.org/projects/cocos2d-x/wiki/
Audio_f...
画像・音声リソース
• iOSではPVRTCがよかった
• Androidだとそうでもない
• これもOS・端末で分ける?
• とりあえずAndroidはpng
開発者探し
• JavaでAndroidって人は割といる
• Objective-CでiOSの人もぼちぼちいる
• スマホでゲームでネイティブっていうとC
++の人あまりいない、というかcocos2d-x
ピンポイント?
• 日本語書籍の発売が...
まとめ
• cocos2dの開発経験は活きてる
• でもそこそこ苦労してる
• 課金、通信、リソース管理などなどはきっと
これから改善されてくって信じてる
• あとJSBに期待
• 日本語書籍は本当にありがたい
Upcoming SlideShare
Loading in …5
×

ポッピンゲームズジャパンにおける cocos2d-xでの ソーシャルゲーム開発事例

5,692 views

Published on

第1回cocos2d-x開発事例勉強会(2013/06/28)での発表
blog: http://poppingames.hatenablog.com/

Published in: Technology
  • Be the first to comment

ポッピンゲームズジャパンにおける cocos2d-xでの ソーシャルゲーム開発事例

  1. 1. ポッピンゲームズジャパンにおける cocos2d-xでの ソーシャルゲーム開発事例 ポッピンゲームズジャパン株式会社 小林敬介
  2. 2. 目次 • 自己紹介 • 弊社開発の歴史 • cocos2d-xへの移行 • 苦労 • まとめ
  3. 3. 喋るつもりだった内容がだいたい全部書かれてた
  4. 4. 自己紹介 • ポッピンゲームズジャパン株式会社エンジニア統括 • iOS&Android向けソーシャルゲーム • 「ピーターラビットガーデン」「アリスの不思議なテ ィーパーティー」「ピクセル&ダンジョンズ」ほか • blog : http://poppingames.hatenablog.com • 7月は筑波大学でiOS開発の講義(全三回)
  5. 5. 弊社開発の歴史
  6. 6. 弊社開発の歴史 • iOSでゲーム作る • Unityよりcocos2dの方が使いやすそう • iOSアプリ開発者がいたので • 三作くらい作った • Androidのビッグウェーブに乗りたい • cocos2d-xに けた
  7. 7. Unity不採用 • cocos2d使ってたので • 慣れたXcodeで開発できるので • 2Dゲーム主体なので • オープンソースじゃないので
  8. 8. cocos2d-xへの移行
  9. 9. cocos2d-xへの移行 • 主目的はAndroid対応 • Androidエミュレータはつらい • 試験用の端末をたくさん買うことに
  10. 10. cocos2d-xへの移行 • cocos2dの経験はそのまま使える • 普通のAndroid開発のノウハウはあま り活きないかも • 環境構築とか、周辺的な部分は役立つ • あと課金関連
  11. 11. cocos2d-xへの移行 • Xcodeで開発 • シミュレータやiPhone実機で確認するのが とても楽 • Eclipseの出番はAndroid実機確認くらい • Android特有の問題はそれほど無い • リソース関連、課金関連くらい
  12. 12. cocos2d-xへの移行 • project-creator/create_project.py で一発 • Android開発環境の準備はやや手間 • エミュレータがアレなので実機が無いと 辛いのもネック • 普通のAndroid開発したことあるとスム ーズかも
  13. 13. cocos2d-xへの移行 • 言語はC++にした • 外部ライブラリの使用がちょっと面倒 • ヘッダオンリーのライブラリだとちょっ と嬉しい • C++11なんか有効にしちゃったり • 最近JSBの盛り上がりが気になる
  14. 14. 苦労
  15. 15. C++ • ほかの言語に慣れた後のC++は辛い • virtual とか :: とか • ヘッダファイル長い • 配列・ハッシュ・文字列がめんどい • 外部ライブラリもいれなきゃ
  16. 16. CocosBuilderを使う • なるべくC++のコードを書きたくない • きっと再利用しやすいはず • クオリティも上がるだろう
  17. 17. C++ • ひたすらハードコードで紐付けることに • CCB_MEMBERVARIABLEASSIGNER_GLUE , CCB_SELECTORRESOLVER_CCMENUITEM_GLUE • 妙に長いマクロ • 「CCB_STATIC_NEW_AUTORELEASE_OBJECT_WITH_INIT_METHOD」だの 「CCB_VIRTUAL_NEW_AUTORELEASE_CREATECCNODE_METHOD」だの • CocosBuilder自体にまだバグがあったり
  18. 18. アプリ内課金 • 絶対必要なんだけど、めんどくさい • iOSではObjective-C++でOK • AndroidはJNIでなんとかする • Java側も書かないといけない • がんばりたくない場合 • 外部ライブラリ・サービスに頼る手も…?
  19. 19. 外部ライブラリ • 通信関係がパワー不足 • CCHttpClientはver2.1.4で多少改善 • 内部的にはlibcurl+pthreadなので自分で改良しちゃ うのもあり • httpsが使えません • OpenSSLを自分で用意しましょう • ver2.1.4からWebSocketが使えるようになった
  20. 20. 外部ライブラリ • POCO • 何でも入ってるが、そんなに豪華じゃなくてい いよという気もする • libcurlで十分なら、いらないかも • JSONにRapidjson • cocos2d-x標準でJSONパーサ入らないかなぁ • C++11も使ったり
  21. 21. 画像・音声リソース • AndroidではSEにwavは not so good 、 ogg が best と書か れている • http://www.cocos2d-x.org/projects/cocos2d-x/wiki/ Audio_formats_supported_by_CocosDenshion_on_differe nt_platforms • iOSではSEに ogg が使えない • 全部とにかくMP3、という方針 • OS別にリソース分けるのは面倒だが、質はあがるかも
  22. 22. 画像・音声リソース • iOSではPVRTCがよかった • Androidだとそうでもない • これもOS・端末で分ける? • とりあえずAndroidはpng
  23. 23. 開発者探し • JavaでAndroidって人は割といる • Objective-CでiOSの人もぼちぼちいる • スマホでゲームでネイティブっていうとC ++の人あまりいない、というかcocos2d-x ピンポイント? • 日本語書籍の発売が非常にありがたい
  24. 24. まとめ • cocos2dの開発経験は活きてる • でもそこそこ苦労してる • 課金、通信、リソース管理などなどはきっと これから改善されてくって信じてる • あとJSBに期待 • 日本語書籍は本当にありがたい

×