立花 翔 著
スマートフォンの普及により、すきま時間にシンプルなゲームを楽しむ人が増えています。ゲームはアプリの中で最も人気のあるカテゴリであり、ヒットすれば無料アプリでも広告による収入が見込めます。ゲームづくりはハードルが高いと思われがちですが、シンプルなゲームであれば、経験が浅くても、個人であっても簡単につくることができます。真にアイデアで勝負できる魅力的なジャンルといえるでしょう。
本書では、AndEngineというフリーのゲームエンジンを使った開発を解説します。これにより開発のハードルが大幅に下がり、初心者でもアイデアを形にすることが容易になります。また、ゲーム開発未経験から始めて、1人で企画・開発・デザインを行いながら数々のヒットアプリを生み続ける著者による、実体験に基づいたヒットのコツを随所に散りばめました。ゲームアプリを作ってみたい人、ゲームづくりで挫折した人、自分のアプリで稼ぎたい人にお勧めの一冊です。
第1章 開発環境を構築する
1-1 Android アプリ開発環境の準備
1-1-1 JDKのダウンロード
1-1-2 Eclipseのダウンロード
1-1-3 ADTのインストール
1-1-4 Android SDKのダウンロード
1-1-5 エミュレーターを作成する
1-2 AndEngine の利用準備
1-2-1 AndEngineの概要
1-2-2 AndEngineのダウンロード
ヒットの秘訣!(1)「アイコンは超重要」
ヒットの秘訣!(2)「タイトルはひとひねり」
第2章 ゲームの雛形を作る
2-1 開発の流れ
2-2 プロジェクトを作成する
2-3 AndroidManifest.xml、レイアウトファイルの編集
2-3-1 AndroidManifest.xmlの編集
2-3-2 レイアウトファイルの編集
2-4 Activity とScene の作成
2-4-1 MainSceneの編集
2-4-2 MainActivityの編集
2-5 ゲーム画面を作成する
2-5-1 背景画像の追加
2-5-2 ResourceUtilの作成
2-5-3 KeyListenSceneの作成
2-5-4 MultiSceneActivityの作成
ヒットの秘訣!(3)「最初の10 秒が勝負」
ヒットの秘訣!(4)「いいリズムを保とう」
Scene クラス
BaseGameActivityクラス
SimpleLayoutGameActivityクラス
Cameraクラス
EngineOptionsクラス
BitmapTextureAtlasクラス
TextureManagerクラス
ITextureRegionクラス
Spriteクラス
第3章 投げ系ゲームを作る
3-1 本章で作成するゲーム
3-2 開発の流れ
3-3 雛形をインポートする
3-4 ゲーム画面を作成する
3-4-1 背景とアニメーションするコインの追加
3-4-2 フリックの実装
3-4-3 コインを飛ばす演出の実装
3-4-4 コインの軌道の実装
3-4-5 缶の追加
3-4-6 コインと缶の衝突判定と処理の実装
3-4-7 磁石の実装
3-4-8 スコアを表示するテキストの実装
3-4-9 ハイスコアをSharedPreferenceに保存する
3-4-10 遊び方を表示する
3-5 メニュー画面を作成する
3-5-1 メニュー画面用のクラスを作成する
3-5-2 最初に起動する画面を変更する
3-6 画面の遷移を管理する
3-6-1 メニュー画面からゲーム画面への遷移
3-6-2 ゲーム画面からメニュー画面へ戻る遷移を実装
3-6-3 メニュー機能の追加
3-6-4 ゲーム終了時にリソースを解放する
3-7 効果音を追加する
3-7-1 効果音の使用を許可する
3-7-2 メニュー画面の効果音
3-7-3 ゲーム画面の効果音
ヒットの秘訣!(5)「Play ストアの説明文はよく考える」
ヒットの秘訣!(6)「ユーザーの声を聞こう」
AnimatedSpriteクラス
TiledTextureRegionクラス
IOnSceneTouchListenインターフェース
TimerHandlerクラス
Rectangleクラス
BitmapFontクラス
Textクラス
LoopEntityModifierクラス
SequenceEntityModifierクラス
ScaleModifierクラス
ButtonSpriteクラス
Soundクラス
第4章 横スクロールゲームを作る
4-1 本章で作成するゲーム
4-2 開発の流れ
4-3 プロジェクトを作成する
4-4 ゲーム画面を作成する
4-4-1 画面の向きの変更と背景画像の追加
4-4-2 横スクロールの実装
4-4-3 主人公の実装
4-4-4 障害物の実装
4-4-5 主人公と障害物の衝突判定を実装する
4-4-6 攻撃の衝突判定の実装
4-4-7 回復アイテムの実装
4-4-8 スコアの実装
4-4-9 ゲームオーバー画面の実装
4-4-10 遊び方を表示する
4-5 メニュー画面を作成する
4-6 画面の遷移を管理する
4-6-1 InitialSceneにおけるバックキー、メニューキーの処理の実装
4-6-2 MainSceneにおけるメニューボタンの処理を実装する
4-6-3 バグへの対処
4-6-4 意図しない画面切り替わりへの対応
4-7 効果音を追加する
ヒットの秘訣!(7)「結果をSNS でシェアしてもらおう」
ヒットの秘訣!(8)「カジュアルゲームはゲーム内自社広告が重要」
FadeOutModifierクラス
Fontクラス
Typefaceクラス
DelayModifierクラス
第5章 加速度センサーを利用したゲームを作る
5-1 本章で作成するゲーム
5-2 開発の流れ
5-3 プロジェクトを作成する
5-4 加速度センサー実装の準備
5-4-1 加速度センサーで傾きを取得する
5-4-2 取得した値の処理を実装する
5-5 ゲーム画面を作成する
5-5-1 画面の向きの変更と背景画像の追加
5-5-2 主人公の追加
5-5-3 敵キャラクターの追加
5-5-4 敵キャラクターの種類を追加
5-5-5 ゾンビの数を制限する
5-5-6 衝突判定の実装
5-5-7 スコアの実装
5-5-8 攻撃アイテムの実装
5-5-9 コンボの実装
5-5-10 ゲームオーバーの実装
5-5-11 遊び方を表示する
5-6 メニュー画面を作成する
5-7 画面の遷移を管理する
5-8 効果音を追加する
ヒットの秘訣!(9)「アイディアは無限」
ヒットの秘訣!(10)「量産! 量産!」
ヒットの秘訣!⑪「“Done is better than perfect.”」
第6章 外部サービスと連携する
6-1 オンラインランキングの実装
6-1-1 オンラインランキングとは
6-1-2 Rank Park への登録
6-1-3 Rank Park の実装
6-2 広告の実装
6-2-1 広告とは
6-2-2 広告サービスの提供会社
6-2-3 AdMobへの登録
6-2-4 ゲームへの組み込み
6-2-5 自社広告の設定方法
ヒットの秘訣!⑫「レビューを依頼してみよう」
ヒットの秘訣!⑬「ブログを書こう」
ヒットの秘訣!⑭「自社広告の効果を測定しよう」
付録 逆引きAndEngine
A-1 画面関連
A-1-1 シーンを表示したい
A-1-2 ゲームを描画する解像度を変更したい
A-1-3 ゲーム画面を端末の解像度一杯に引き伸ばしたい
A-1-4 画面の向きを縦もしくは横に変更したい
A-1-5 メニューキーが無い端末ではソフトキーでメニューボタンを表示させたい
A-1-6 画面の一部を広告表示専用のエリアにしたい
A-1-7 シーンを切り替えたい
A-1-8 横スクロールを実装したい
A-1-9 Toastを表示したい
A-2 画像関連
A-2-1 四角形のオブジェクトを生成したい
A-2-2 画像からオブジェクトを生成したい
A-2-3 画像の座標を指定したい
A-2-4 画像の角度を指定したい
A-2-5 画像オブジェクトを反転させたい
A-2-6 画像オブジェクトの透明度(アルファ値)を指定したい
A-2-7 画像オブジェクトの重なり順を指定したい
A-2-8 パラパラアニメのようなオブジェクトを表示したい
A-2-9 画像オブジェクトの画像を切り替えたい
A-2-10 画像を先読みして動作を軽くしたい
A-2-11 ボタンを表示したい
A-2-12 画像やボタンを画面から削除したい
A-2-13 オブジェクト同士の衝突を検知したい
A-2-14 指定したオブジェクトに対して処理を実行したい
A-3 テキスト関連
A-3-1 端末に搭載されているフォントを利用してテキストを描画したい
A-3-2 ビットマップフォントを利用してテキストを描画したい
A-3-3 テキストを更新したい
A-4 イベント関連
A-4-1 タッチイベントを処理したい
A-4-2 フリックを判定したい
A-4-3 ゲームのメインループを管理したい
A-4-4 一定時間経過後に処理を実行したい
A-4-5 同じ処理を繰り返したい
A-4-6 加速度センサーを利用したい
A-4-7 経過時間を取得したい
A-5 アニメーション関連
A-5-1 フェードイン/アウトのアニメーションを実行したい
A-5-2 回転のアニメーションを実行したい
A-5-3 拡大/縮小のアニメーションを実行したい
A-5-4 移動のアニメーションを実行したい
A-5-5 同じアニメーションを繰り返したい
A-5-6 アニメーションを順番に実行したい
A-5-7 アニメーションを同時に実行したい
A-5-8 アニメーションの間に待ち時間を設定したい、一定時間の後実行したい
A-5-9 イージングを利用してリッチなアニメーションを実行した
A-6 音声関連
A-6-1 BGMを再生したい
A-6-2 効果音を再生したい
A-7 計算関連
A-7-1 ランダムな値を取得したい
A-7-2
A-7-3 角度と移動可能距離からx 方向、y 方向への移動量を求める
索引
付属データはこちら
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。
刷数は奥付(書籍の最終ページ)に記載されています。
書籍の種類:
書籍の刷数:
本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。
対象の書籍は正誤表がありません。
発生刷 | ページ数 | 書籍改訂刷 | 電子書籍訂正 | 内容 | 登録日 | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|
1刷 | 000 「追加情報」があります |
未 | 未 |
|
2016.05.26 | ||||||
1刷 | 038 見出し |
未 | 未 |
|
2013.01.23 | ||||||
1刷 | 039 見出し |
未 | 未 |
|
2013.01.23 | ||||||
1刷 | 040 見出し |
未 | 未 |
|
2013.01.23 | ||||||
1刷 | 041 見出し |
未 | 未 |
|
2013.01.23 | ||||||
1刷 | 052 21~22行目 |
未 | 未 |
|
2015.10.01 | ||||||
1刷 | 281 リスト5-17の最後から7行目(空行除く) |
未 | 未 |
|
2012.12.14 |
たいそ さん
2019-12-28
2012年。AndEngineの開発はすでに止まっているので、使うことはないと思うが、ゲームをさらにおもしろくためにどういう工夫がされているか、といったことは参考になった。最近のゲームエンジンと比べるとなんとなく内部実装が伺い知れるような気がするので、自前で何か作るときには役に立つ部分があると思う。「内容がいいアプリは勝手に口コミで広がっていくと思っていたらそれは間違い。」「いいアプリはユーザーが決めるものであって、作者が決めるものではない。」
ほー さん
2016-03-20
汎用性低い