アンドロイドアプリ作成、Unityで作るスマートフォンゲーム、まずはチュートリアルから

アンドロイドアプリ作成、Unityで作るスマートフォンゲーム、まずはチュートリアルから

Unityでゲームを作れば、アイフォンもアンドロイドもスマートフォンゲームアプリを作成できます。つまり、クロスプラットフォームとしてゲームを開発できるというわけです。アイフォンで言うところのcocos2d-xになるわけですが、cocos2d-xは、文字ベースのコードをひたすら入力して、ゲームを開発することになります。

 一方で、Unityは、文字ベースのコードに加えて、3Dオブジェクトをビジュアル的に配置することができるので、直感的に開発ができます。文字コードベースの場合、実際にアプリを実行して動作させるまで、コードに記載した座標が期待通りの配置、動きかどうかを確認することができません。でも、Unityは、画面上にオブジェクトを配置して、目視することができます。ここがUnityの利点です。
 このように説明すると、Unityが簡単にゲームアプリを開発できそうに思えます。でもそんなに簡単なものではありません。実際にゲーム開発を進めていくと、結局のところは、ひたすらコードを書いていくことになります。クリック、キーダウン、衝突判定、画面の移動、ヘルプ画面、設定画面などは、コードを書いていくことになります。オブジェクト画面に配置するだけでは何もおきません。

 詰まるところ、ゲーム開発は、プログラムをかく、ソースコードを書くことになります。ただし、見えない状態のオブジェクトを扱うよりは、見えた方が便利です。ここが、Unityの利点です。ちょっと言い方を変えると、FlashやMacromediaDirectorの3D版といったところでしょうか。アドビが本格的に3Dオブジェクトに関するアプリに乗り出していたら、いまごろは、スマートフォンの開発はFlashのままだったかもしれません。

 ちなみに、Unityは個人の開発なら無料(Pro版よりは機能限定になります。)でアンドロイドもアイフォンも無料で開発できます。ただし、無料の場合でも売り上げがある一定基準を超えるとPro版へのアップグレードが必要になります。そこまで売り上げのあるアプリを個人で開発できるとは思えませんが。
 
 個人でアイフォン、アンドロイドアプリを作る分には、Pro版にアップグレードする必要はありませんが、使いたい機能がPro版にあるときはアップグレードすることになります。
 
 
 <ポイント>
 Rigidbodyコンポーネントで落下する
 Box colliderにチェックを入れると衝突判定をする。これがないと他のオブジェクトが重なってもすりぬける。
 Rigidbodyの「Is kinematic」にチェックするとRigidbodyであってもその位置で静止する。(落下しない)
 静止状態にしたいオブジェクトは、Rigidbodyを設定しない。なにもしないまま。
 
 <スクリプトについて>
 オブジェクト名と変数名は同じである必要は無い
 例
 GameObject gameController;
 gameController=GameObject.Find(“objectName”);//objectNameは、オブジェクトの名称
 文字の先頭が大文字か小文字かで、困惑しそうなときは、統一して同じ名称にした方が、混乱しません。
 gameOperateController = GameObject.Find(“gameOperateController”);
 
 A.cs
 gameOperateController.SendMessage(“StageClear”);
 (変数).コマンド(“他のスクリプトのメソッド”)
 
 StageClear()は、
 B.csに記載されていて
 void StageClear(){
 }
 のように記載されている。
 このB.csは例えば、gameOperateControllerオブジェクトに設定されたスクリプトだったりします。
 
 

こちらの記事もどうぞ