SlideShare a Scribd company logo
1 of 13
Download to read offline
cocos2d-xのすすめ
2014/07/02
@cowboy_tokyo
cocos2d-xとは
● オープンソースの2Dゲームフレームワーク
○ cocos2d for iPhoneをC++ベースで移植したもの
■ LuaやJavaScriptでも書ける
○ クロスプラットフォーム
○ アップデートが早い
cocos2d-x と Unity
● 現在、ゲームアプリを作る際に選択するフレームワークは主
にこの2つ
○ 3D = Unity、2D = cocos2d-xが得意といった切り分け
■ 一応、どちらも対応しようと思えば2Dも3Dも対応可
● どちらを使えばいいか
○ ゲーム性/業務効率/パフォーマンス次第
○ Unityは素材ありきな部分や3Dの組み込みが複雑なので、cocos2d-xとくら
べて開発コストがかなりかかるので、企業的に体力のあるところでしかやり
づらいイメージ
cocos2d-xで作られたアプリ
● ツムツム、モンスト、トレクル、ジョジョ、ブレフロ、... etc
○ ちなみに千メモは違うそうです
cocos2d-xのメリット
● クロスプラットフォーム
○ フルスクラッチよりも何倍も作業効率が高い
● アップデートが早い
○ バグが有った場合も即座に修正して公開している
○ 有志による機能公開等もある
○ 中の人がかなり親切なので、フォーラムに質問すればすぐ教えてくれる
● 描画の多いゲーム向き
○ 2Dゲームは描画の多いものが多いので、スーファミのようなゲーム内表現
をしたい場合には向いている
○ iPhone4、4Sのような旧機種でもそれなりの速度で動かせる
Hello Worldまで(Mac)
● Xcodeをインストール
● cocos2d-x v3.xをダウンロード(http://www.cocos2d-x.org/download)
● 上記ファイルを任意の場所に展開(/Users/muffin/cocos2d-x-3.x など)
● セットアップ
● Xcodeを起動し、上記で作成したプロジェクトを開く
$ cd cocos2d-x-3.x/
$ ./setup.py
# android-ndk, android-sdk, antの場所が聞かれるが
# iOSしかやらないならとりあえず無視
$ source ~/.bash_profile
# これでcocosコマンドが使えるようになる
$ cocos new muffin_pjt -l cpp
# muffin_pjtというC++のプロジェクトを作成
Hello World
● Runするとこうなる
○ 画面と文字が表示されるだけ
cocos2d-xの仕組み(1)
● 基本的なクラス
○ Director
■ cocos2d-xの統括クラス(シングルトン)
○ Scene
■ シーン(画面)
○ Layer
■ シーンの中の1つのレイヤー
○ Sprite
■ シーンの中の画像
○ Action
■ スプライトに動きを与える
Scene
Layer
Layer
Sprite
Sprite
Action
Action
cocos2d-xの仕組み(2)
● プロジェクトには以下2つのディレクトリが存在する
○ Classes
■ クラスファイル
○ Resources
■ 画像や音源などの素材ファイル
cocos2d-xの仕組み(3)
● プロジェクトを作成すると、以下の2つのファイル
が生成される
○ AppDelegate
■ iOSの仕組みそのまま
○ HelloWorldScene
■ cocos2d-x固有の仕組み
cocos2d-xの仕組み(3)
○ AppDelegate
■ applicationDidFinishLaunching()
● アプリ起動時に呼ばれ、アプリのセッティングを行う
● 最初のシーンを呼び出す
■ applicationDidEnterBackground()
● アプリがスリープするときに呼ばれ、アプリを停止する
■ applicationWillEnterForeground()
● アプリ復帰時に呼ばれ、アプリを再開する
cocos2d-xの仕組み(3)
○ HelloWorldScene
■ createScene()
● シーン作成(最低1つないと何も表示されないので)
■ init()
● 初期化
○ 画像の定義
○ 画像ポジション定義
○ 画像配置
○ ラベル定義
○ ラベルポジション定義
○ ラベル配置
■ menuCloseCallback()
● クローズボタンの制御
参考
● cocos2d-xの2.x系と3.x系でかなり大きな機能
的差分があるので、手を出すなら最初から3.x
系を触れておくべし
● 2.x系から3.x系に移行した時のTIPSをブログに
まとめました
(http://cowboy-tokyo.hateblo.jp/entry/2014/06/28/223233)

More Related Content

What's hot

cocos2d-xを利用したパズドラ風ゲームの作成
cocos2d-xを利用したパズドラ風ゲームの作成cocos2d-xを利用したパズドラ風ゲームの作成
cocos2d-xを利用したパズドラ風ゲームの作成Tomoaki Shimizu
 
Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみた
Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみたAndroidクラスタの私がcocos2d-xでマルチディスプレイ対応してみた
Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみたMegumi Kido
 
Cocos Code IDEを使ってみた
Cocos Code IDEを使ってみたCocos Code IDEを使ってみた
Cocos Code IDEを使ってみたTomoaki Shimizu
 
Cocos2d-JSはイケてる? イケてない?
Cocos2d-JSはイケてる? イケてない?Cocos2d-JSはイケてる? イケてない?
Cocos2d-JSはイケてる? イケてない?Shin Fujisawa
 
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」Tomoaki Shimizu
 
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」Tomoaki Shimizu
 
cocos2d-x 開発の効率化
cocos2d-x 開発の効率化cocos2d-x 開発の効率化
cocos2d-x 開発の効率化Akihiro Matsuura
 
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」Tomoaki Shimizu
 
cocos2d-xとCocos Code IDE
cocos2d-xとCocos Code IDEcocos2d-xとCocos Code IDE
cocos2d-xとCocos Code IDETomoaki Shimizu
 
Cocos2d-x によるスマートフォンアプリ開発のこれまでとこれから
Cocos2d-x によるスマートフォンアプリ開発のこれまでとこれからCocos2d-x によるスマートフォンアプリ開発のこれまでとこれから
Cocos2d-x によるスマートフォンアプリ開発のこれまでとこれからAkihiro Matsuura
 
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築Tomoaki Shimizu
 
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」Tomoaki Shimizu
 
cocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみようcocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみようTomoaki Shimizu
 
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」Tomoaki Shimizu
 
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」Tomoaki Shimizu
 
cocos2d-x 3.0による変更点
cocos2d-x 3.0による変更点cocos2d-x 3.0による変更点
cocos2d-x 3.0による変更点Tomoaki Shimizu
 
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」Tomoaki Shimizu
 

What's hot (20)

cocos2d-xを利用したパズドラ風ゲームの作成
cocos2d-xを利用したパズドラ風ゲームの作成cocos2d-xを利用したパズドラ風ゲームの作成
cocos2d-xを利用したパズドラ風ゲームの作成
 
Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみた
Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみたAndroidクラスタの私がcocos2d-xでマルチディスプレイ対応してみた
Androidクラスタの私がcocos2d-xでマルチディスプレイ対応してみた
 
Cocos Code IDEを使ってみた
Cocos Code IDEを使ってみたCocos Code IDEを使ってみた
Cocos Code IDEを使ってみた
 
Cocos2d-JSはイケてる? イケてない?
Cocos2d-JSはイケてる? イケてない?Cocos2d-JSはイケてる? イケてない?
Cocos2d-JSはイケてる? イケてない?
 
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」
Cocos2d-x(JS) ハンズオン #06「3rd SDKの導入を簡単にするSDKBOX」
 
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」
Cocos2d-x(JS) ハンズオン #12「Cocos2d-xとSpine」
 
cocos2d-x 開発の効率化
cocos2d-x 開発の効率化cocos2d-x 開発の効率化
cocos2d-x 開発の効率化
 
Cocos2d-x(JS)の紹介
Cocos2d-x(JS)の紹介Cocos2d-x(JS)の紹介
Cocos2d-x(JS)の紹介
 
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」
Cocos2d-x(JS) ハンズオン #05「Cocos StudioとCocos2d-x (JS)との連携」
 
cocos2d-xとCocos Code IDE
cocos2d-xとCocos Code IDEcocos2d-xとCocos Code IDE
cocos2d-xとCocos Code IDE
 
Cocos2d-x によるスマートフォンアプリ開発のこれまでとこれから
Cocos2d-x によるスマートフォンアプリ開発のこれまでとこれからCocos2d-x によるスマートフォンアプリ開発のこれまでとこれから
Cocos2d-x によるスマートフォンアプリ開発のこれまでとこれから
 
Cocos2d-x 3D Extension
Cocos2d-x 3D ExtensionCocos2d-x 3D Extension
Cocos2d-x 3D Extension
 
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築
Cocos2d-x 3.2 Eclipseを利用したAndroid開発環境の構築
 
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」
Cocos2d-x(JS) ハンズオン #02 「画像表示とアクション」
 
cocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみようcocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみよう
 
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」
Cocos2d-x(JS) ハンズオン #01 「はじめてのCocos2d-x (JS)」
 
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
Cocos2d-x(JS) ハンズオン #07「新エディタ Cocos Creator v1.0」
 
cocos2d-x 3.0による変更点
cocos2d-x 3.0による変更点cocos2d-x 3.0による変更点
cocos2d-x 3.0による変更点
 
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」
Cocos2d-x(JS) ハンズオン #10「3D機能とVR機能」
 
Cocos2d-xハンズオンセミナー
Cocos2d-xハンズオンセミナーCocos2d-xハンズオンセミナー
Cocos2d-xハンズオンセミナー
 

Similar to cocos2d-xのすすめ

Cocos2d-x(v3.x)で作るマルチプラットフォームゲーム
Cocos2d-x(v3.x)で作るマルチプラットフォームゲームCocos2d-x(v3.x)で作るマルチプラットフォームゲーム
Cocos2d-x(v3.x)で作るマルチプラットフォームゲームNorio Akagi
 
Cocos2d-xおよび関連サービスについて
Cocos2d-xおよび関連サービスについてCocos2d-xおよび関連サービスについて
Cocos2d-xおよび関連サービスについてChukong Technologies Japan
 
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発Haco Kohashi
 
実はかんたん!ゲームエンジンCocos2d-x入門
実はかんたん!ゲームエンジンCocos2d-x入門実はかんたん!ゲームエンジンCocos2d-x入門
実はかんたん!ゲームエンジンCocos2d-x入門Chukong Technologies Japan
 
cocos2d-xを使った開発で効率よく多職種連携したい話
cocos2d-xを使った開発で効率よく多職種連携したい話cocos2d-xを使った開発で効率よく多職種連携したい話
cocos2d-xを使った開発で効率よく多職種連携したい話Naoyuki Totani
 
Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介Tomoaki Shimizu
 
Cc dx lib72-p
Cc dx lib72-pCc dx lib72-p
Cc dx lib72-pCHY72
 
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門cocos2d-x 3.0 + C++11で始めるゲーム開発超入門
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門Kohki Miki
 
GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社
GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社
GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社Game Tools & Middleware Forum
 
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築についてTomoaki Shimizu
 
Cocos2d-x勉強会 2014/10/05
Cocos2d-x勉強会 2014/10/05Cocos2d-x勉強会 2014/10/05
Cocos2d-x勉強会 2014/10/05Yasuhiro Matsuda
 
「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)
「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)
「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)gree_tech
 
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築についてTomoaki Shimizu
 
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築についてMacでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築についてTomoaki Shimizu
 

Similar to cocos2d-xのすすめ (20)

Cocos2d-x(v3.x)で作るマルチプラットフォームゲーム
Cocos2d-x(v3.x)で作るマルチプラットフォームゲームCocos2d-x(v3.x)で作るマルチプラットフォームゲーム
Cocos2d-x(v3.x)で作るマルチプラットフォームゲーム
 
Cocos2d-xおよび関連サービスについて
Cocos2d-xおよび関連サービスについてCocos2d-xおよび関連サービスについて
Cocos2d-xおよび関連サービスについて
 
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発
コードしか書けないエンジニアがゲームを作るには。みんなで作る:ccocos2d-xゲーム開発
 
Cocosサービスについて
CocosサービスについてCocosサービスについて
Cocosサービスについて
 
実はかんたん!ゲームエンジンCocos2d-x入門
実はかんたん!ゲームエンジンCocos2d-x入門実はかんたん!ゲームエンジンCocos2d-x入門
実はかんたん!ゲームエンジンCocos2d-x入門
 
cocos2d-xを使った開発で効率よく多職種連携したい話
cocos2d-xを使った開発で効率よく多職種連携したい話cocos2d-xを使った開発で効率よく多職種連携したい話
cocos2d-xを使った開発で効率よく多職種連携したい話
 
Cocos最新情報(2015/3/13)
Cocos最新情報(2015/3/13)Cocos最新情報(2015/3/13)
Cocos最新情報(2015/3/13)
 
Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介
 
Cc dx lib72-p
Cc dx lib72-pCc dx lib72-p
Cc dx lib72-p
 
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門cocos2d-x 3.0 + C++11で始めるゲーム開発超入門
cocos2d-x 3.0 + C++11で始めるゲーム開発超入門
 
GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社
GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社
GTMF2015: Cocos最新情報と日本展開 | Chukong Technologies Japan株式会社
 
Cocos2d xのススメ
Cocos2d xのススメCocos2d xのススメ
Cocos2d xのススメ
 
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
 
Cocos2dx 8hour
Cocos2dx 8hourCocos2dx 8hour
Cocos2dx 8hour
 
Cocos2d-x勉強会 2014/10/05
Cocos2d-x勉強会 2014/10/05Cocos2d-x勉強会 2014/10/05
Cocos2d-x勉強会 2014/10/05
 
Cocos2d-xによる最新ゲーム開発
Cocos2d-xによる最新ゲーム開発Cocos2d-xによる最新ゲーム開発
Cocos2d-xによる最新ゲーム開発
 
Cocos最新情報(2015/6/30)
Cocos最新情報(2015/6/30)Cocos最新情報(2015/6/30)
Cocos最新情報(2015/6/30)
 
「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)
「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)
「釣り★スタ」でのCocos2d-JSを使ってのアプリアップデート事例 (2)
 
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
 
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築についてMacでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.2を使用した、Androidアプリの開発環境構築について
 

cocos2d-xのすすめ