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.
Androidクラスタの私がcocos2d-xでマルチディスプレイ対応をしてみた                    2012/6/30              さいたま開発勉強会 vol4                    @f_me...
自己紹介@f_megmeg5iPhoneアプリもAndroidアプリも作っているゲームよりもツール系が得意
cocos2d-xで遊び始めたきっかけ周りのiOS開発者の方々がcocos2dで楽しそうに遊んでいたでも、私はAndroidにどっぷりだからAndroidでcocos2dやりたい!
cocos2d-xで遊び始めたきっかけcocos2d-androidがあるならこれを使えばいいじゃない!http://code.google.com/p/cocos2d-android/
cocos2d-xで遊び始めたきっかけ 全く更新されていない
cocos2d-xで遊び始めたきっかけ  (´・ω・`)
cocos2d-xで遊び始めたきっかけ気を取り直して、cocos2d-android-1もあるじゃない!https://github.com/ZhouWeikuan/cocos2dhttp://code.google.com/p/cocos2d...
cocos2d-xで遊び始めたきっかけ 全く更新されていない
cocos2d-xで遊び始めたきっかけ(´;ω;`)
cocos2d-xで遊び始めたきっかけもうAndroidクラスタはcocos2dに触れないの?Javaで書くなということなの?
cocos2d-xで遊び始めたきっかけ@yoichinejiさんcocos2d-xがあるじゃないcocos2d AdventCalendar 2011で記事書いたから見てよ
cocos2d-xで遊び始めたきっかけcocos2d-xって何?cocos2dを継承してC/C++で書いていくよ!iPhone/Androidで動くよ!法人化しているから、更新も早いよ!
cocos2d-xで遊び始めたきっかけ  Javaで書けないけど    これしかない
cocos2d-xで遊び始めたきっかけけど、NDKかーC/C++わかんないよー
cocos2d-xで遊び始めたきっかけcocos2d Developers Japanhttp://www.facebook.com/groups/309695229106927/ここで紹介された記事を読んで、これならできるかも…
実際に遊んでみたこのように紹介されていた
実際に遊んでみたやってみて悪戦苦闘した様子をブログにまとめてるよ!http://megmegfive.blogspot.jp/
実際に遊んでみた動いた動いた(∩´∀`)∩
実際に遊んでみたREGZA phoneでの表示がおかしい
実際に遊んでみた試しにGalaxy Nexusでもやってみよう
cocos2d-xで遊び始めたきっかけ   表示が全然違う!?
Android 用のマルチディスプレイ対応何故このように表示が異なるの?
Android 用のマルチディスプレイ対応原因  Androidはディスプレイサイズが様々  Androidは画面のアスペクト比も様々  そんでもってdpiも端末毎に異なる
Android 用のマルチディスプレイ対応CCSprite* pSprite =CCSprite::spriteWithFile("HelloWorld.png");pSprite->setPosition( ccp(size.width/2,...
Android 用のマルチディスプレイ対応座標はともかく、パーツ類のCCSpriteのスケールが考慮されていないこれじゃあ表示がおかしくなっちゃうね
Android 用のマルチディスプレイ対応じゃあスケールで誤摩化そう!
Android 用のマルチディスプレイ対応スケールの基準Androidのmdpiを基準にする  長辺:480px  短辺:320px  iPhoneとここは一緒
Android 用のマルチディスプレイ対応const float DEFAULT_WIDTH = 480.0;const float DEFAULT_HEIGHT = 320.0;float WIN_SCALE;CCSize size = CC...
Android 用のマルチディスプレイ対応  本当はスケールの値は別途他のクラス  で持つのが良い?  実際のスケールの組み込みはEclipse  で上で見せます
実際に遊んでみたREGZA phoneでスケール調整したもの
実際に遊んでみた試しにGalaxy Nexusでもやってみよう
Android 用のマルチディスプレイ対応    わりといい感じ
Android 用のマルチディスプレイ対応  本当はスケールの値は別途他のクラス  で持つのが良い?  実際のスケールの組み込みはEclipse  で上で見せます
まとめスケール計算を簡単にすませるならこの方式になると思うアスペクト比が一定の方が画面として作りやすい
まとめ凝った背景にしないのであれば、背景のみ全画面で出して、他の部分をスケール計算ですませるのが良いかも
cocos2d-xをやってみてEclipseでcocos2d-xをやるなら、補完がないのでDash片手に行うしかないXcodeなら補完が効くので便利
cocos2d-xをやってみてXcode4で新規プロジェクトを作るとディレクトリ構成がcocos2d-xで推奨されている構成と異なるから、Android向けにビルドパスの修正が必要になる地味に面倒
cocos2d-xをやってみてXCodeでcocos2dに慣れてからやれば良かったかもC++の知識が無いからサンプルの見よう見真似で誤摩化しているから、ちゃんと勉強しないといけないかも
結論頑張るしかない
おわり
おまけを話す時間ある?
おまけアプリのテスト
おまけAndroidならJUnitとかMonkeyとかを使うごめんなさい使ったことがないです基本人力です
おまけ誰かにテストしてもらうTestFlight(iPhone)を使ったりOTAとして配布してテストを行ってもらうことが多い
おまけテストやアプリを使っていて気付いたこと 連打対策が弱いことがある 同時押し対策が弱いことがある
おまけこの辺りはちゃんとケアしてあげるけっこう突っ込まれるところ
おまけバグを見つけるために、他に何かコツはある?
おまけ運
おまけバグ発見は運や才能だと偉い人が言っていましたバグ報告してくれるユーザーやテスターを労ってあげましょう
おまけおわり
Upcoming SlideShare
Loading in …5
×

Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみた

8,695 views

Published on

さいたま勉強会vol4で発表したスライドです。
cocos2d-x初心者もといAndroid向けのイラストです。
あと、おまけはテストについて考えたことです。

  • Be the first to comment

Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみた

  1. 1. Androidクラスタの私がcocos2d-xでマルチディスプレイ対応をしてみた 2012/6/30 さいたま開発勉強会 vol4 @f_megmeg5
  2. 2. 自己紹介@f_megmeg5iPhoneアプリもAndroidアプリも作っているゲームよりもツール系が得意
  3. 3. cocos2d-xで遊び始めたきっかけ周りのiOS開発者の方々がcocos2dで楽しそうに遊んでいたでも、私はAndroidにどっぷりだからAndroidでcocos2dやりたい!
  4. 4. cocos2d-xで遊び始めたきっかけcocos2d-androidがあるならこれを使えばいいじゃない!http://code.google.com/p/cocos2d-android/
  5. 5. cocos2d-xで遊び始めたきっかけ 全く更新されていない
  6. 6. cocos2d-xで遊び始めたきっかけ (´・ω・`)
  7. 7. cocos2d-xで遊び始めたきっかけ気を取り直して、cocos2d-android-1もあるじゃない!https://github.com/ZhouWeikuan/cocos2dhttp://code.google.com/p/cocos2d-android-1/
  8. 8. cocos2d-xで遊び始めたきっかけ 全く更新されていない
  9. 9. cocos2d-xで遊び始めたきっかけ(´;ω;`)
  10. 10. cocos2d-xで遊び始めたきっかけもうAndroidクラスタはcocos2dに触れないの?Javaで書くなということなの?
  11. 11. cocos2d-xで遊び始めたきっかけ@yoichinejiさんcocos2d-xがあるじゃないcocos2d AdventCalendar 2011で記事書いたから見てよ
  12. 12. cocos2d-xで遊び始めたきっかけcocos2d-xって何?cocos2dを継承してC/C++で書いていくよ!iPhone/Androidで動くよ!法人化しているから、更新も早いよ!
  13. 13. cocos2d-xで遊び始めたきっかけ Javaで書けないけど これしかない
  14. 14. cocos2d-xで遊び始めたきっかけけど、NDKかーC/C++わかんないよー
  15. 15. cocos2d-xで遊び始めたきっかけcocos2d Developers Japanhttp://www.facebook.com/groups/309695229106927/ここで紹介された記事を読んで、これならできるかも…
  16. 16. 実際に遊んでみたこのように紹介されていた
  17. 17. 実際に遊んでみたやってみて悪戦苦闘した様子をブログにまとめてるよ!http://megmegfive.blogspot.jp/
  18. 18. 実際に遊んでみた動いた動いた(∩´∀`)∩
  19. 19. 実際に遊んでみたREGZA phoneでの表示がおかしい
  20. 20. 実際に遊んでみた試しにGalaxy Nexusでもやってみよう
  21. 21. cocos2d-xで遊び始めたきっかけ 表示が全然違う!?
  22. 22. Android 用のマルチディスプレイ対応何故このように表示が異なるの?
  23. 23. Android 用のマルチディスプレイ対応原因 Androidはディスプレイサイズが様々 Androidは画面のアスペクト比も様々 そんでもってdpiも端末毎に異なる
  24. 24. Android 用のマルチディスプレイ対応CCSprite* pSprite =CCSprite::spriteWithFile("HelloWorld.png");pSprite->setPosition( ccp(size.width/2, size.height/2) );// add the sprite as a child to this layerthis->addChild(pSprite, 0);
  25. 25. Android 用のマルチディスプレイ対応座標はともかく、パーツ類のCCSpriteのスケールが考慮されていないこれじゃあ表示がおかしくなっちゃうね
  26. 26. Android 用のマルチディスプレイ対応じゃあスケールで誤摩化そう!
  27. 27. Android 用のマルチディスプレイ対応スケールの基準Androidのmdpiを基準にする 長辺:480px 短辺:320px iPhoneとここは一緒
  28. 28. Android 用のマルチディスプレイ対応const float DEFAULT_WIDTH = 480.0;const float DEFAULT_HEIGHT = 320.0;float WIN_SCALE;CCSize size = CCDirector::sharedDirector()->getWinSize();! //倍率を取得する! float kw=size.width/DEFAULT_WIDTH;! float kh=size.height/DEFAULT_HEIGHT;! if(kw>=kh){! ! WIN_SCALE = kh;! } else{! ! WIN_SCALE = kw;! }
  29. 29. Android 用のマルチディスプレイ対応 本当はスケールの値は別途他のクラス で持つのが良い? 実際のスケールの組み込みはEclipse で上で見せます
  30. 30. 実際に遊んでみたREGZA phoneでスケール調整したもの
  31. 31. 実際に遊んでみた試しにGalaxy Nexusでもやってみよう
  32. 32. Android 用のマルチディスプレイ対応 わりといい感じ
  33. 33. Android 用のマルチディスプレイ対応 本当はスケールの値は別途他のクラス で持つのが良い? 実際のスケールの組み込みはEclipse で上で見せます
  34. 34. まとめスケール計算を簡単にすませるならこの方式になると思うアスペクト比が一定の方が画面として作りやすい
  35. 35. まとめ凝った背景にしないのであれば、背景のみ全画面で出して、他の部分をスケール計算ですませるのが良いかも
  36. 36. cocos2d-xをやってみてEclipseでcocos2d-xをやるなら、補完がないのでDash片手に行うしかないXcodeなら補完が効くので便利
  37. 37. cocos2d-xをやってみてXcode4で新規プロジェクトを作るとディレクトリ構成がcocos2d-xで推奨されている構成と異なるから、Android向けにビルドパスの修正が必要になる地味に面倒
  38. 38. cocos2d-xをやってみてXCodeでcocos2dに慣れてからやれば良かったかもC++の知識が無いからサンプルの見よう見真似で誤摩化しているから、ちゃんと勉強しないといけないかも
  39. 39. 結論頑張るしかない
  40. 40. おわり
  41. 41. おまけを話す時間ある?
  42. 42. おまけアプリのテスト
  43. 43. おまけAndroidならJUnitとかMonkeyとかを使うごめんなさい使ったことがないです基本人力です
  44. 44. おまけ誰かにテストしてもらうTestFlight(iPhone)を使ったりOTAとして配布してテストを行ってもらうことが多い
  45. 45. おまけテストやアプリを使っていて気付いたこと 連打対策が弱いことがある 同時押し対策が弱いことがある
  46. 46. おまけこの辺りはちゃんとケアしてあげるけっこう突っ込まれるところ
  47. 47. おまけバグを見つけるために、他に何かコツはある?
  48. 48. おまけ運
  49. 49. おまけバグ発見は運や才能だと偉い人が言っていましたバグ報告してくれるユーザーやテスターを労ってあげましょう
  50. 50. おまけおわり

×