ゲーム開発未経験(初心者)の人は、個人独学でスマホアプリ(Android版)を制作することができるのでしょうか?
私は仕事終わりのPS4が日課になっているただのゲーマーで、ゲーム開発はしたことはありません。
そんな私でもゲーム開発をしようと決めてから、2ヵ月程で簡単なテトリス風のパズルゲームをGooglePlayにリリースすることができました。
この記事では、初心者個人向けにスマホゲームアプリ開発全体の流れ・やり方を紹介します。
未経験(初心者)の方にとってきっかけや参考になれば幸いです。
ゲーム制作全体の流れ・やり方
全体の流れ
- 開発準備
- 計画・設計
- AndroidStudioで開発
- GooglePlayにリリース
ざっくりこんな流れです。
今回開発したアプリは、簡単なテトリス風パズルゲームです。
ゲーム開発未経験(初心者)ですので、やはりプログラムを書くところに一番時間がかかりました。
開発後見返してみると、プログラムを書くこと自体、始めのうちは時間がかかっていましたが、仕組みが分かるとスムーズにできるようになっていたと思います。
ゲーム開発全体を通しての振り返りとしては、プログラムより、むしろ計画・設計の段階で自分の作りたいものが明確にしてあることが大切で、途中で軸がぶれないことが良いと感じました。
結果、計画がしっかりしていた事が功を奏し、開発から約2ヶ月という短期間でリリース出来ました!
それではそれぞれの項目の詳細を以降に書いていきたいと思います。
開発準備
まずゲーム制作するために必要な開発環境を準備します。
私もそうでしたが、ゲーム開発をしたことがない方からすれば、必要な開発環境なんて知る由もありません。
しかし実際は、そこまでハードルが高いわけではなく、必要最低限の開発準備は下記の4つくらいです。
参考
- PC(そこまでハイスペックでなくてもよい)
- プログラミング言語(Javaなど)
- 開発用の統合開発環境(AndroidStudioなど)
- その他ツール(画像編集ソフトなど)
PCがあればすぐに始められちゃったります。
PC
PCといってもどれくらいのスペックが必要なのか気になるかと思います。
主に統合開発環境(AndroidStudioなど)を使ってAndroidアプリを作ることになりますので、利用する統合開発環境が動く推奨スペックを調べておくと良いでしょう。
参考程度にAndroidStudioの推奨スペックを紹介します。
参考
- CPU:インテル第2世代以降またはAMD Windows Hypervisor サポート
- RAM:8GB 以上
- ディスクの空き容量:8GB 以上
- 画面解像度:1280 × 800 以上
詳細はこちらに
ちなみに私の場合は10万円位で自作したデスクトップPC(CPU:Ryzen5 2600 RAM:16GB)を使用しましたが、滞りなく開発することができました。
プログラミング言語
Android版アプリ開発で主流になっているプログラミング言語は、JavaやKotlinのようです。
Javaは汎用性が高く、もっとも広く普及している言語のひとつのようです。そのため私は今後のプログラミング技術のステップアップを考え、Javaを選択しました。
とはいえ私は、アプリ開発を決めた段階でJavaの知識はほとんどありませんでした。(条件分岐や繰り返しといった基本構文の記述方法くらい。あとはMinecraftがJavaによって作られてることくらいしか知らなかった、、)
そんな私がどのようにプログラミング言語の習得を進めていったのか紹介します。
参考
- 制作過程において実装したい機能(事柄)を明らかにする
- GitHub等でその類似機能(事柄)の既存プログラムを調べる
- 分からなかったプログラムの意味を書籍で理解する
- 得た知識で自分なりにプログラムを書く
- 思い通りに実装できたかテストする
- 1~5のサイクルを続けることでプログラミング言語の習得につながる
たいしたことはしていませんが、根本的に一から全てを学ぼうとするのではなく、必要なものを必要な時に学ぶという方針でした。
今回であればゲームを制作するという目的が明確で、制作過程でスキル・知識を必要に応じて身につければよい。(何より目的があるとモチベーションが上がる)
行き当たりばったりのようですが、挫折はしにくいです。
なにより、自分で調べ手を動かす事でより理解し、後でノートなどにまとめ整理して見返すことでより深く理解する事に繋がります。
余談
ちなみに書籍は次のものを購入しました。
この本は、例構文の詳細なところまで説明されており、初心者個人の方でも理解しやすいと感じました。
またオブジェクト指向の理解に重きを置いているのも良い点だったと思います。
オブジェクト指向は、概念になりますので理解することがとても大変でした。ですがJavaはその概念でできている言語であるため、Javaの理解をすすめる上で避けては通れないでしょう。
開発用の統合開発環境
本来プログラミング言語だけを扱えるようになっても、ゲーム(ソフトウェア)を開発することはできません。コンパイル・ビルド・デバッグなど開発には様々な作業が必要だからです。
そのような開発する上で必要な様々な作業とやらを、統合開発環境(IDE)では直観的に利用できます。
他にも便利な機能が沢山あり、例えば、テストを容易に行える仮想デバイスやインポート文を自動的に追加する機能などなど。(と、いわれてもよくわからないかもしれませんが、、、便利システムが沢山あるんだなぁくらいで)
これにより特に難しい知識は必要ないため、作業負担を大幅に低減することが可能です。(もっとも操作に慣れるのには時間がかかりますが、、、)
統合開発環境の中でもAndroidStudioは、Android向けアプリ開発に特化しておりサポートも厚いのでこれを選択しました。
だって無料だし!
余談
今回は統合開発環境を紹介していますが、ゲーム制作だけに特化するのであればゲームエンジンを利用するのも手段のひとつのようです。
ゲームエンジンとは、ゲーム制作するうえで主要な処理や素材が豊富に用意されていることで、ゲーム開発を効率よく行えるソフトウェアのことです。
中にはコードを書かずに開発できるものがあるようです。
代表的なゲームエンジンにUnityがあり、個人開発なら無料で利用できます。
私はプログラミングの技術を得るために、あえてAndroidStudioでの開発を選びましたが、今後はゲームエンジンでも開発してみたいと思っています。
その他ツール
アプリ制作過程でクオリティの高いことを求めようとするとそれなりに時間がかかります。
例えばオリジナリティを出すためにBGMやアニメーションを自作したいなど。
そのようなときは、適したツールが存在していないか調べてみるとよいでしょう。
昨今はありがたいことに高レベルでフリー利用できるツールはたくさん存在しますので、うまく利用しアプリ開発の効率をあげるとよいでしょう。
またツールには向き不向きがありますので、それぞれの要所で使い分けることが大切です。
参考程度に私が利用させて頂いたツールを紹介します。
どれもすばらしいツールですが、利用規約はしっかり読み遵守しましょう。
計画・設計
計画・設計と書きましたが、そんな大層なもんじゃありません。自分の作りたいものを明確にするということです。
もちろん制作過程でアイデアが浮かぶ場合もあると思いますし、場合によりそのアイデアを取り入れるのも良いと思います。
ですが当初作りたいものが明確になっていないと途中で軸がぶれてしまう可能性があり、結果、右往左往してしまい作りたいものではなくなってしまいます。
個人での開発ですのでしっかりとした仕様書を書く必要はないと思いますが、
- 計画:どのようなアプリにするのか
- 設計:どのような機能を実装するのか
くらいは自分のなかで決めておくとよいでしょう。
目的が定まると、モチベーションも違うしね!
AndroidStudioで開発
AndroidStudioはあくまで手段の一つです。
最終的にGooglePlayにリリースしますのでapkファイル(aabファイル)を用意できればなんでも良いです。
AndroidStudioでは開発したアプリはapkファイル(aabファイル)として出力できます。
さて、アプリゲーム開発未経験(初心者)の方にとってはAndroidStudioで開発といわれても何をすればよいかわからないかと思います。
上にも書いたようにAndroidStudioは開発用の統合開発環境の一つであり、アプリを開発するうえでの便利な機能がたくさんあります。
機能を紹介してもきりがありませんので、ここではアプリ開発におけるざっくりとした流れだけ紹介できたらと思います。
参考
- AndroidStudioをPCインストールする
- プロジェクトを作成する
- プログラム(ソースコード)を書く
- ビルド、実行
- デバッグ、テスト
- 出力
ざっくりこんな感じです。
AndroidStudioは無料ですので気軽に試してはいかがでしょうか?
基本はコードを書いてテストの繰り返しで、こまめにテストすると良いかと思います。
満足のいくものになったら出力しましょう。
GooglePlayにリリース
Android版アプリですので、公開するためにはGooglePlayにリリースする必要があります。
下記3つを事前に準備しましょう。
- Googleディベロッパーアカウント(初回のみ$25)
- アプリのアイコン画像及びスクリーンショット画像
- アプリのパッケージファイル(apkファイル)
GooglePlayConsoleにログインしてアプリをリリースします。
基本は流れに沿えばリリースできますが、どんなことをやるかをざっくり紹介します。
リリースのための必要事項
- パッケージファイル
- アプリ名
- アプリの説明文
- アプリの価格
- アプリの画像
- 配布地域
- アプリのコンテンツ内容(アクセス権やレーティングなど)
- Webサイト(必須ではない)
- プライバシーポリシー(必須ではない)
アプリが有料か無料か、対象年齢や配布地域などで必要事項が多少異なりますので注意してください。
必要事項を済ませると審査に移り、問題なければ自動的に公開されます。
※現在コロナ禍で審査に最大7日間を要するそうです。ちなみに私の場合は、木曜日に申請して翌週月曜日に公開されていました。
まとめ
以上、初心者個人向けにスマホゲームアプリ開発全体の流れ・やり方を紹介しました。
この記事では、アプリ開発の具体的な解説というより、計画からリリースするまでの全体の流れをざっくり解説しました。
これから個人でゲームアプリ開発をしようとしている方の開発イメージに繋がれば幸いです。
今回開発したテトリス風のパズルゲームのリンクは以下にあります。興味があればぜひプレイしてみてください。