初めに
僕はCocos2dに出会ってからiPhoneアプリでゲームを作るのがとても楽になった。
ただ、Cocos2dの文献は非常に少なく情報収集に苦労をしたので僕が得た情報をフィードバックしておく。
これからiPhoneでゲームを作ろうとしている人のお役に立てれば幸いである。
現在「Space Debris」というゲームの申請をしていて、そこで得たノウハウをここに記載しておく。
これから「Space Debris」の上位版(難易度が高い)のゲームを作っていく形で本連載を行っていく。
(不明な点はコメントに記載していただければ回答いたします。)
Cocos2dにはCocos2d-xというiPhone/Androidのゲームが両方同時に作れるものがあるが、ここで対象としているのはiPhoneゲームの作成のみを行うのでCocos2dに関してだけ書きます。
Cocos2d-xは僕の知見が無いのとAndroid端末を、僕が持っていないため本連載では一切触れません。
Cocos2d-xの仕組みはCocos2dと同じなので、Cocos2d-xの文献は非常に役に立ちます。困った時はCocos2d-xの文献を読んで下さい。
(Cococs2d-xの記事は結構多いので、困ったときはCocos2d-xの記事を参考にするといいかと思います。ただし、Cocos2d-xはC++で書かれているのでその点には注意が必要です。)
僕はQiitaに記事を投稿するのは初めてなので、書き方とかで変なところがあったら教えていただけると助かります。
前提条件
本記事を読む前に以下の準備をしておいてください。
なお、本連載ではSwift 1.3
を使用して進めます。
objectiv-c
やSwift 1.3
より前で開発を行う場合は、適時読み替えて下さい。
objective-c
でも問題無いのだが、新規で作成するなら将来性を考えてSwift 1.3
で進めていく事をお勧めします。
※Swiftは1.3と1.2でずいぶん仕様が変わっており、Swift1.3のほうが使いやすくなってます。なので、理由がない限りはSwiftも1.3を使用することをお勧めします。
XCode 6.3
のインストール
この記事を読もうとしている方はすでにXCodeのインストールが済んでいるかと思いますが、まだの方はインストールしておいてください。
本記事では割愛しますが、ここで困ることはないと思います。
CocoaPodsのインストール
Rubyで言うGem、JavaでいうMavenです。
プロジェクトで扱うライブラリを管理してくれる優れたツールです。
今回はiOS 7.0以降を対象とするため、Swift用のライブラリは使用しません。
(Cocoa Touch FrameworkはiOS 8.0以降が対象になってしまうので。)
Sprite Builderのインストール
Sprite BuilderはAppStoreからインストールできます。
こちらからアクセスしてダウンロード/インストールしてください。
https://itunes.apple.com/us/app/spritebuilder/id784912885?mt=12
公式ページ(リンク先のTOPにはゲーム画面が表示されるので仕事中の方はリンクを踏まない方が良いですw)
http://www.spritebuilder.com/
今回作るゲーム
今回はバルーンショットというゲームを作成する予定です。
もともと僕が作っている
Space Debris
というゲームの続編になります。
これをやっていただければどんなゲームを作ろうとしているか想像がつくかと思います。
作成日記
プロジェクトの作成
今日の目標はSprite Builderでプロジェクトを作ってシミュレーターで動かすところまでにします。
驚くくらいあっという間に終わります。
SpriteBuilderを起動
「File」→「New」→「Project」
を行ってプロジェクトを作成します。
ShootBalloon.spritebuilder
というプロジェクト名で作成してください。
作成する際にPrimary Language
を選択できるのでSwift
を選択してください。
XCodeにPublishします。
作成された画面、左上の赤丸を押してください。
これでXCodeのプロジェクトにSpriteBuilderで作成したファイルが送られます。
作成したShootBalloon.spritebuilder
フォルダの中にShootBalloon.xcodeproj
が出来てますのでXCodeで開いて実行してみてください。
今回はここまでになります。
SpriteBuilderとは?
SpriteBuilderの位置付けはxibに似てます。
ゲームは一般的なアプリに比べて描画速度が求められます。
そのためにOpenGLというレンダリングエンジンが使われるのですが、その描画部分(View)を担ってくれるのがSpriteBuilderになります。
OpenGLはプログラムが難しく素人には手が出しずらく、プログラムコード量も膨大になります。
それを簡潔に表現出来るようにしたものがCocos2dになります。
Cocos2dフレームワークのアニメーションはCocoaよりもはるかに洗練されています。
つぎは?
SpriteBuilderでできたものの中身を見ていきます。
TownSoftって?
TownSoftは僕の屋号です。
主にRailsでお仕事を請け負ってます。
Webシステムの導入をご検討の方は是非TownSoftまで!