SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

連載記事

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZine BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。

書籍に関する記事を見る

'); googletag.cmd.push(function() { googletag.pubads().addEventListener('slotRenderEnded', function(e) { var ad_id = e.slot.getSlotElementId(); if (ad_id == 'div-gpt-ad-1659428980688-0') { var ad = $('#'+ad_id).find('iframe'); if ($(ad).width() == 728) { var ww = $(window).width(); ww = ww*0.90; var style = document.createElement("style"); document.head.appendChild( style ); var sheet = style.sheet; sheet.insertRule( "#div-gpt-ad-1659428980688-0 iframe {-moz-transform: scale("+ww/728+","+ww/728+");-moz-transform-origin: 0 0;-webkit-transform: scale("+ww/728+","+ww/728+");-webkit-transform-origin: 0 0;-o-transform: scale("+ww/728+","+ww/728+");-o-transform-origin: 0 0;-ms-transform: scale("+ww/728+","+ww/728+");-ms-transform-origin: 0 0;}", 0 ); sheet.insertRule( "#div-gpt-ad-1659428980688-0 div{ height:"+(90*ww/728)+"px;width:"+728+"px;}", 0 ); } else { if ($(window).width() < 340) { var ww = $(window).width(); ww = ww*0.875; var style = document.createElement("style"); document.head.appendChild( style ); var sheet = style.sheet; sheet.insertRule( "#div-gpt-ad-1659428980688-0 iframe {-moz-transform: scale("+ww/320+","+ww/320+");-moz-transform-origin: 0 0;-webkit-transform: scale("+ww/320+","+ww/320+");-webkit-transform-origin: 0 0;-o-transform: scale("+ww/320+","+ww/320+");-o-transform-origin: 0 0;-ms-transform: scale("+ww/320+","+ww/320+");-ms-transform-origin: 0 0;}", 0 ); sheet.insertRule( "#div-gpt-ad-1659428980688-0 div{ height:"+(180*ww/320)+"px;width:"+320+"px;}", 0 ); } } } }); }); } else { document.write('
'); document.write('
'); }
トランプゲームを作成しながら学ぶ、速習「Cocos2d-x」

無料/国内実績多数のクロスプラットフォーム対応ゲームフレームワーク「Cocos2d-x」の概要と環境構築手順

トランプゲームを作成しながら学ぶ、速習「Cocos2d-x」 第1回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 「Cocos2d-x」は、クロスプラットフォーム開発に対応したオープンソースのゲームフレームワークです。2Dゲームに最適化されており、国内の著名なスマートフォンゲームでも数多く利用されています。本連載では、トランプゲームの作成手順を通して、Cocos2d-xおよびゲーム開発の基礎を紹介していきます。第1回は、Cocos2d-xの概要と、開発環境の構築手順を紹介します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

Cocos2d-xの概要

 「Cocos2d-x(ココスツーディーエックス)」は、一言で言うとゲームフレームワークです。2Dゲームに最適化されており、ゲーム開発に必要な多くの機能を有しています。最新バージョンでは、なんと3D機能まで搭載されています。

 Cocos2d-xは、Cocos2dシリーズのクロスプラットフォーム版であり、当初はCocos2d for iPhoneから派生したフレームワークでした。Cocos2d-xは中国北京に本社を置くChukong Technologies(チュコン テクノロジーズ)社が管理していますが、開発はアメリカで行われており、Cocos2dの生みの親であるRicardo Quesada氏が携わっています。

 特に、AndroidやiOS向けのスマートフォンゲームでよく利用されており、スマートフォンゲームのセールスランキングの上位を見てみますと、

  • モンスターストライク
  • LINE:ディズニー ツムツム
  • 剣と魔法のログレス
  • ブレイブフロンティア
  • FINAL FANTASY Record Keeper
  • ドラゴンクエストモンスターズ スーパーライト

など、多くのタイトルでCocos2d-xが利用されています。

 なぜこれほどまで多くのタイトルでCocos2d-xが利用されているのでしょうか? それはCocos2d-xを利用することのメリットが多いからです。例えば、AndroidやiOSを始めとするクロスプラットフォーム開発を行うことができます。またオープンソースであり、無償で無制限に利用することができます。他にも多くのメリットがありますが、これらについて一つ一つ確認していきましょう。

Cocos2d-xのメリット

クロスプラットフォーム開発

 近年、日本におけるスマートフォンゲームは、AndroidとiOSでリリースすることが一般的になっています。実際、Google PlayストアやApp Storeのゲームセールスランキングで上位のゲームは、両OS向けにゲームをリリースしています。これを実現するために、多くのゲーム開発会社では、クロスプラットフォーム開発と呼ばれる手法が用いられています。つまり1種類のソースコードでAndroidとiOSのゲームを作っています。

 Cocos2d-xでは、次のゲームを作ることができます。

  • Android 2.3以降
  • iOS 5.0以降
  • Windows Phone 8以降
  • Mac OS X 10.7以降
  • Windows 7以降
  • Linux Ubuntu 14.04以降

 モバイルプラットフォームからデスクトッププラットフォームまで、幅広くゲーム開発を行えることが分かっていただけると思います。

 またゲームの開発言語は、C++、Lua、JavaScriptから選択することができます。厳密には、開発言語にJavaScriptを選択した場合、Cocos2d-JSを利用することになりますが、このCocos2d-JSは、Cocos2d-xのJavaScriptバージョンであり、フレームワークは同じです。さらにCocos2d-JSは、ブラウザ上で動作するゲームを作ることも可能です。

オープンソース

 Cocos2d-xは、オープンソースとして開発が進められています。そのため、ゲームエンジンのコアな箇所までソースコードを見ることができます。技術力の高い開発会社では、ブラックボックス化されたものよりもオープンソース化されているフレームワークを利用することが多いです。その理由は、ゲームエンジンを自社ゲームに最適化できるためです。

 ブラックボックス化されているフレームワークを利用する場合は、ゲームの仕様をゲームエンジンに適したものに変更しなければいけないことがあります。一方、ソースコードが公開されていれば、ゲームの仕様に適したゲームエンジンに変更することも可能です。

 コンシューマーゲームでは、これから作るゲームに適したゲームエンジンを自社で開発している会社が多かったのですが、その手法は人気ゲームの移り変わりが早いスマートフォンゲームでは難しいため、ベースとなるゲームエンジンとしてCocos2d-xを選択しているようです。

 また、Cocos2d-xはMITライセンスを採用しています。これは数あるオープンソースのライセンスの中でも非常に緩いものであり、このソフトウェアを無制限に扱うことを無償で許可しているライセンスです。そのためCocos2d-xは、誰でも無償で利用することができ、商用で利用する場合でも制限がありません。無償であるため、これからCocos2d-xの利用を検討されている方にとって、Cocos2d-x導入の敷居は低いでしょう。

軽量・快速

 Cocos2d-xのコアエンジンはC++で開発されています。そのためエンジンサイズは3MB程度と非常に小さく、快速に動作します。Google PlayストアやApp Storeでは、3G、LTEなどの携帯電話の回線を利用したゲームのダウンロードには、容量の制限が設けられています。そのため、3MBしか占有しないゲームエンジンは非常に優れていると言えるでしょう。

 また、開発言語にLuaやJavaScriptを選択した場合でも、実動作ではC++に変換され処理が行われています。そのためJavaScriptであってもC++に遜色のない軽快な動作を実現することができます。

 日本のスマートフォン端末は、高速なCPUや大容量のメモリが搭載されています。しかし世界に目を向けた場合、ロースペックのAndroid端末もまだまだ現役で動いています。これからは日本だけでなく世界に向けてアプリを開発していく時代ですので、ロースペック端末でも軽快に動作するエンジンを利用し、ゲームを作っていただければと思います。

開発環境

 Cocos2d-xは、最初でも述べたように「フレームワーク」です。そのため開発環境は自分好みのものを用意することが可能です。日本では、AndroidとiOSのゲームを開発するユーザが多いため、Mac上でXcodeを利用したiOSアプリ開発をメインとし、定期的にEclipseを利用してAndroidアプリの動作確認を行うことが好まれています。また、Windowsユーザの場合は、EclipseだけでなくVisual Studioを利用される方も多いです。一方、CUIによるビルドも可能であるため、Jenkinsによる一連の自動化も可能です。

 開発言語にLuaやJavaScriptを利用する場合は、統合開発環境であるCocos Code IDEを利用することができます。これはChukongにより開発が進められており、無償で利用することができます。WindowsとMacで利用可能です。無償だからといって、簡易的なものではありません。コードエディタには自動補完・コードヒント・コードスニペットなどの機能が搭載されており、専用シミュレータによるライブコーディングも行うことが可能です。

図1-2 Cocos Code IDE
図1-2 Cocos Code IDE

 Cocos2d-xには、専用のUIエディタ・アニメーションエディタもあります。それはCocos Studioと呼ばれるものです。こちらもChukongにより開発が進められており、無償で利用することができます。現在はバージョン2であり、WindowsとMacで利用可能です。バージョン1の頃はWindowsのみでしたが、ユーザからのMacの要望が多く、バージョンアップとともに両OSに対応しました。

図1-3 Cocos Studio
図1-3 Cocos Studio

 Cocos Code IDEとCocos Studioは、Cocos2d-xと同じ公式サイトのダウンロードページからダウンロードすることができます。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
Cocos2d-xの環境構築

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
トランプゲームを作成しながら学ぶ、速習「Cocos2d-x」連載記事一覧
この記事の著者

清水 友晶(Chukong Technologies Japan株式会社)(シミズ トモアキ)

Chukong Technologies Japan株式会社 エンジニアリングディレクター。日本におけるCocos2d-xの普及活動、Cocos2d-x関連サービスの開発に従事。PMやリードエンジニアとして、Cocos2d-xを用いたゲームプロジェクトを多数経験。Cocos2d-xに関する講演および...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/8468 2015/03/13 14:00
" ); }

おすすめ

アクセスランキング

  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」 NEW
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  4. 4
    2024年の提示年収が高いプログラミング言語は? paiza調査によるランキングが発表
  5. 5
    計測と改善をひたすら繰り返したら、年間コストを1億円削減した──不確実性の高いプロジェクトに挑む
  1. 6
    「VRAM」 ~マンガでプログラミング用語解説
  2. 7
    ガートナー、日本企業が2025年に向けて押さえておくべきインフラストラクチャとオペレーションのトップトレンドを発表
  3. 8
    AWS、「Data Exports for FOCUS 1.0」の一般提供を開始 NEW
  4. 9
    Amazon Bedrockのナレッジベース、応答の遅延を短縮するRetrieveAndGenerateStream APIをサポート NEW
  5. 10
    健全なソフトウェア設計の第一歩! 既存のPHPソースコードからクラス図を自動生成しよう

アクセスランキング

  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」 NEW
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  4. 4
    2024年の提示年収が高いプログラミング言語は? paiza調査によるランキングが発表
  5. 5
    計測と改善をひたすら繰り返したら、年間コストを1億円削減した──不確実性の高いプロジェクトに挑む
  6. 6
    「VRAM」 ~マンガでプログラミング用語解説
  7. 7
    ガートナー、日本企業が2025年に向けて押さえておくべきインフラストラクチャとオペレーションのトップトレンドを発表
  8. 8
    AWS、「Data Exports for FOCUS 1.0」の一般提供を開始 NEW
  9. 9
    Amazon Bedrockのナレッジベース、応答の遅延を短縮するRetrieveAndGenerateStream APIをサポート NEW
  10. 10
    健全なソフトウェア設計の第一歩! 既存のPHPソースコードからクラス図を自動生成しよう
  1. 1
    ITエンジニア本大賞2025、投票締切直前! みんなで選んだ歴代の大賞本を振り返って一挙紹介
  2. 2
    Python 3.13の新機能、対話型インタプリタの機能強化や高速化などを解説
  3. 3
    VSCodeをドキュメント作成に活用――テキストエディタ、Markdownエディタの設定と拡張機能を解説
  4. 4
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  5. 5
    「CUDA」 ~マンガでプログラミング用語解説
  6. 6
    今後生成AIとどう向き合うべきなのか? 現場のエンジニアと研究者が最新研究事例から語り合う
  7. 7
    2024年12月に開催される注目のITエンジニア向けカンファレンス5選
  8. 8
    日本在住の英語を話すソフトウェア開発者、年収の中央値は950万円に
  9. 9
    Vue.js3.4~3.5の新機能をまとめて紹介! 新しいAPIやSSRの改善
  10. 10
    PHPパッケージ管理ツール「Composer」の処理の仕組みを見てみよう!

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

メールバックナンバー

アクセスランキング

  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」 NEW
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  4. 4
    2024年の提示年収が高いプログラミング言語は? paiza調査によるランキングが発表
  5. 5
    計測と改善をひたすら繰り返したら、年間コストを1億円削減した──不確実性の高いプロジェクトに挑む
  1. 6
    「VRAM」 ~マンガでプログラミング用語解説
  2. 7
    ガートナー、日本企業が2025年に向けて押さえておくべきインフラストラクチャとオペレーションのトップトレンドを発表
  3. 8
    AWS、「Data Exports for FOCUS 1.0」の一般提供を開始 NEW
  4. 9
    Amazon Bedrockのナレッジベース、応答の遅延を短縮するRetrieveAndGenerateStream APIをサポート NEW
  5. 10
    健全なソフトウェア設計の第一歩! 既存のPHPソースコードからクラス図を自動生成しよう

アクセスランキング

  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」 NEW
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  4. 4
    2024年の提示年収が高いプログラミング言語は? paiza調査によるランキングが発表
  5. 5
    計測と改善をひたすら繰り返したら、年間コストを1億円削減した──不確実性の高いプロジェクトに挑む
  6. 6
    「VRAM」 ~マンガでプログラミング用語解説
  7. 7
    ガートナー、日本企業が2025年に向けて押さえておくべきインフラストラクチャとオペレーションのトップトレンドを発表
  8. 8
    AWS、「Data Exports for FOCUS 1.0」の一般提供を開始 NEW
  9. 9
    Amazon Bedrockのナレッジベース、応答の遅延を短縮するRetrieveAndGenerateStream APIをサポート NEW
  10. 10
    健全なソフトウェア設計の第一歩! 既存のPHPソースコードからクラス図を自動生成しよう
  1. 1
    ITエンジニア本大賞2025、投票締切直前! みんなで選んだ歴代の大賞本を振り返って一挙紹介
  2. 2
    Python 3.13の新機能、対話型インタプリタの機能強化や高速化などを解説
  3. 3
    VSCodeをドキュメント作成に活用――テキストエディタ、Markdownエディタの設定と拡張機能を解説
  4. 4
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  5. 5
    「CUDA」 ~マンガでプログラミング用語解説
  6. 6
    今後生成AIとどう向き合うべきなのか? 現場のエンジニアと研究者が最新研究事例から語り合う
  7. 7
    2024年12月に開催される注目のITエンジニア向けカンファレンス5選
  8. 8
    日本在住の英語を話すソフトウェア開発者、年収の中央値は950万円に
  9. 9
    Vue.js3.4~3.5の新機能をまとめて紹介! 新しいAPIやSSRの改善
  10. 10
    PHPパッケージ管理ツール「Composer」の処理の仕組みを見てみよう!