29
cocos2dx 3.0 alpha0 クロスプラットフォーム開発環境構築について

Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Embed Size (px)

DESCRIPTION

Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Citation preview

Page 1: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

cocos2d-­‐x  3.0  alpha0 クロスプラットフォーム開発環境構築について

Page 2: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

清水 友晶

•  株式会社TKS2  スマートフォンアプリ開発Webコンテンツ開発  

•  日本cocos2d-­‐xユーザ会代表  cocos2d-­‐xへの開発参加cocos2d-­‐xを利用したアプリ開発講演活動執筆活動

•  チラ裏開発メモ:  h1p://tks2.net/memo  •  SlideShare:  h1p://www.slideshare.net/doraemonsss  

Page 3: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

JavaScriptによる スマホゲーム開発入門

CocosBuilder

•  6/25発売  •  2,800円 + 税  •  400ページ

•  6/18発売  •  2,980円 + 税  •  312ページ  

•  12月発売予定

Page 4: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

•  日本cocos2d-­‐xユーザ会  h1p://cocos2d-­‐x.jp  

•  cocos2d-­‐x開発元Chukong  Technologies社公認  •  cocos2d-­‐xのための自由なコミュニティー  •  入門者から上級者まで誰でもOK!!ぜひご参加を!(約900人)  •  cocos2d-­‐xに関することなら何でも投稿できます!!  •  h1ps://www.facebook.com/groups/cocos2dxjp/  

Page 5: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

•  11/14  shinjuku.cocos2d-­‐x初心者ハンズオン      〜cocos2d-­‐xを利用したクロスプラットフォーム開発環境構築〜

•  11/21  第14回 shinjuku.cocos2d-­‐x      〜cocos2d-­‐xにおけるデータ管理〜  

•  12/12  shinjuku.cocos2d-­‐x初心者ハンズオン      〜CocosBuilderを利用した開発の進め方〜

•  12/13  gumi  Study  Special  •  12/19  第15回 shinjuku.cocos2d-­‐x  •  1/M  shinjuku.cocos2d-­‐x初心者ハンズオン      〜cocos2d-­‐xを利用したクロスプラットフォーム開発環境構築〜

•  1/M  第16回 shinjuku.cocos2d-­‐x  

Page 6: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

目次

•  cocos2d-­‐xの紹介  •  cocos2d-­‐xの開発環境を整える  •  iOS  •  Android  

•  テンプレートプロジェクトから学ぶ  •  今後の勉強方法について  

Page 7: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

cocos2d-­‐xとは •  2Dゲームフレームワーク  •  オープンソース(MITライセンス)  •  マルチプラットフォーム開発(10数種類)  •  Android  2.3  ~,  iOS  5.0  ~,  Windows  Phone  8,  Windows  7  ~,  Mac  OS  X  10.7  ~  

•  開発言語  …  C++,  Lua,  Javascript  •  公式に発表されているだけでもZynga,  Wooga,  Gamevil,  Glu,  GREE,  Konami,  TinyCo,  HandyGames,  IGG,  Disney  Mobileなどがゲームやアプリに採用している  

•  公式コミュニティでは、Chukong,  Google,  Microsob,  ARM,  Intel,  BlackBerryの開発者が参加している

Page 8: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

開発の手順

•  iOSとAndroidのクロスプラットフォーム開発の場合  (開発元の推奨する手順)  

iOS Android

Xcode Eclipse

メインで開発 たまに確認

Page 9: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

cocos2d-­‐xで作るメリット •  オープンソース(MITライセンス)  •  無償  •  ソース公開  

•  クロスプラットフォーム開発  •  開発期間の短縮  •  資産の有効活用  

•  効率化  •  OpenGLを知らなくても、パフォーマンスの高い画像処理を行うことができる  

•  cocos2d  for  iPhoneからの移行が容易  •  cocos2d  for  iPhoneとクラス名が同じ

Page 10: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

cocos2d-­‐xで作るデメリット •  ネイティブ間の連携が面倒  •  Androidの場合、C++から  Android  SDKへのアクセス  (JNIを使用する必要がある)  

•  iOSの場合、C++からObjecfve-­‐Cへの  アクセス  (Objecfve-­‐C++があるため   比較的容易)  

•  cocos2d-­‐xはフレームワークであるため、画面構成やアニメーションの作成に時間がかかる  •  別途エディタを利用する  

Page 11: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

iOS向け開発環境の構築

•  cocos2d-­‐xインストール  •  Xcodeインストール  •  プロジェクト作成  •  iOS実機・シミュレータでの起動

Page 12: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

iOS向け開発環境の構築

•  cocos2d-­‐xダウンロード  h1p://www.cocos2d-­‐x.org/download  

•  任意のディレクトリへ展開  /Users/Sumomo/cocos2d-­‐x-­‐3.0alpha0  

Page 13: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

iOS向け開発環境の構築

•  Mac  App  StoreよりXcodeダウンロード  

Page 14: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

iOS向け開発環境の構築

•  project-­‐creatorによるプロジェクト作成  cocos2d-­‐x-­‐3.0alpha0/  create-­‐mulf-­‐plahorm-­‐projects.py  •  ディレクトリ移動  

cd  cocos2d-­‐x-­‐3.0alpha0/  •  create-­‐mulf-­‐plahorm-­‐projects.py実行  

./create-­‐mulf-­‐plahorm-­‐projects.py  -­‐p  MyProject  -­‐k  net.tks2.myproject  -­‐l  cpp  •  オプション  •  -­‐p  …  プロジェクト名  •  -­‐k  …  パッケージ名  •  -­‐l  …  言語(cpp,  lua,  javascript)  

•  cocos2d-­‐x-­‐3.0alpha0/projectsにプロジェクトが作成される  

Page 15: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

iOS向け開発環境の構築 •  プロジェクトをXcodeで起動  •  cocos2d-­‐x-­‐3.0alpha0/projects/MyProject/proj.ios_mac/MyProject.xcodeproj  

•  「HelloCpp  iOS」のスキーマを選択  •  iOS実機・シミュレータ起動  •  Run  

Page 16: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  cocos2d-­‐xインストール  •  Android  SDK  +  Eclipseインストール  •  Android  NDKインストール  •  ADT(Eclipse)の設定  •  プロジェクト作成  •  Android実機転送

Page 17: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  cocos2d-­‐xダウンロード  h1p://www.cocos2d-­‐x.org/download  

•  任意のディレクトリへ展開  /Users/Sumomo/cocos2d-­‐x-­‐3.0alpha0  

Page 18: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  Android  SDK  +  Eclipseダウンロード  h1p://developer.android.com/sdk/  

•  任意のディレクトリへ展開  /Users/Sumomo/adt-­‐bundle-­‐mac  

Page 19: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  Android  NDK  r9b  (64bit)ダウンロード  h1p://developer.android.com/tools/sdk/ndk/  

•  任意のディレクトリへ展開  /Users/Sumomo/android-­‐ndk-­‐r9b  

Page 20: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  SDK  Manager起動  Window  >  Android  SDK  Manager  Android  2.3.3  (API  10)  >  SDK  Plahorm  

Page 21: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  Eclipseの設定  •  Eclipse起動  •  ADT(Eclipse)  >  環境設定  

•  General  >  Workspace  >  Linked  Resources  •  COCOS2DX  è  cocos2dxのディレクトリ  

•  C/C++  >  Build  >  Environment  •  NDK_ROOT  è  Android  NDKのディレクトリ  

•  libcocos2dxプロジェクトのインポート  •  File  >  New  >  Project  

cocos2d-­‐x-­‐3.0alpha0/cocos2dx/plahorm/android/java  

Page 22: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  project-­‐creatorによるプロジェクト作成  cocos2d-­‐x-­‐3.0alpha0/  create-­‐mulf-­‐plahorm-­‐projects.py  •  ディレクトリ移動  

cd  cocos2d-­‐x-­‐3.0alpha0/  •  create-­‐mulf-­‐plahorm-­‐projects.py実行  

./create-­‐mulf-­‐plahorm-­‐projects.py  -­‐p  MyProject  -­‐k  net.tks2.myproject  -­‐l  cpp  •  オプション  •  -­‐p  …  プロジェクト名  •  -­‐k  …  パッケージ名  •  -­‐l  …  言語(cpp,  lua,  javascript)  

•  cocos2d-­‐x-­‐3.0alpha0/projectsにプロジェクトが作成される  

Page 23: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

Android向け開発環境の構築

•  Eclipseでプロジェクトを読込む  •  File  >  New  >  Project  •  Android  >  Android  Project  from  Exisfng  Code  

•  Android実機転送(シミュレータでも可)  •  Run  >  Run  

Page 24: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

テンプレートプロジェクトから学ぶ

•  プロジェクトには次のディレクトリがある •  Classes  

èソースファイルを格納  

•  Resources  è画像・音声などのリソースファイルを格納  

•  最初に用意されているクラスは次の2つ •  AppDelegateクラス  •  HelloWorldクラス

Page 25: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

テンプレートプロジェクトから学ぶ

•  AppDelegateには次のメソッドがある •  applicafonDidFinishLaunching()  

•  アプリ起動時に処理され、アプリのセッティングを行う •  最初のシーンを呼び出す

•  applicafonDidEnterBackground()  •  アプリがスリープする時に処理され、アプリの停止を行う

•  applicafonWillEnterForeground()  •  アプリ復帰時に処理され、アプリの再開を行う

Page 26: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

テンプレートプロジェクトから学ぶ •  HelloWorldScene.cppファイルのspriteをさわってみる •  位置変更

sprite-­‐>setPosifon(  Point(0,  0)  );  

•  拡大・縮小 sprite-­‐>setScale(2.0f);  

•  回転 sprite-­‐>setRotafon(90.0f);  

•  アンカーポイント sprite-­‐>setAnchorPoint(  Point(0,  0)  );  

•  透過 sprite-­‐>setOpacity(127);  

Page 27: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

テンプレートプロジェクトから学ぶ

•  オブジェクトを移動させてみる 2秒で画面右端へ移動する

MoveTo*  move  =  MoveTo::create(2.0f,  Point(size.width,  size.height  /  2));  sprite-­‐>runAcfon(move);  

Page 28: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

テンプレートプロジェクトから学ぶ

•  Acfon  h1p://www.cocos2d-­‐x.org/reference/nafve-­‐cpp/V3.0alpha0/db/d61/classcocos2d_1_1_acfon.html  •  移動  

MoveTo,  MoveBy  •  回転  

RotateTo,  RotateBy  

•  フェードイン・フェードアウト  FadeIn,  FadeOut

Page 29: Macでcocos2d-x 3.0alpha0を使用した、クロスプラットフォーム開発環境構築について

今後の勉強方法について

•  cocos2d-­‐x  Wikiを調べる  h1p://www.cocos2d-­‐x.org/wiki  

•  cocos2d-­‐x  Referenceを調べる  •  TestCppで調べる  •  ググってみる  •  cocos2d-­‐x  フォーラムで質問する  •  cocos2d-­‐x.jp  communityで質問する  •  cocos2d-­‐xに詳しい友人を作る