ビリヤードゲームの作り方4 スマホタップに対応させてモバイルゲームを作る | Unity入門の森 ゲームの作り方

ビリヤードゲームの作り方4 スマホタップに対応させてモバイルゲームを作る

Unity C# ビリヤードの作り方


Unity入門の森オリジナル本格ゲーム制作講座はこちら
11種類の本格ゲームの全ソースコード公開・画像&動画による解説付き

前回まででビリヤードゲームの基本部分が出来上がりました。

前回の記事 : 

ビリヤードゲームの作り方3 ビリヤードを打つ・穴に入ったら消す処理を作る
前回に引き続きビリヤードゲームを作っていきます。前回はビリヤードボールの当たり判定・移動処理を作りました。 前回の記事 :  第3回の今回は「マウスクリックによってボールを打つ、ボールが穴に入ったら消える、リセット」などゲームとして成立させ...


第4回の今回は「スマホタップに対応させてモバイルゲームを作る」です。
では始めていきましょう。 


【Line登録者限定のプレゼントもあるよ!】

スマホへの対応方法 BuildingSettingの設定方法

スマホへの対応ですが、まずプラットフォームの変更が必要になります。

Unityの上部のメニューから「File→BuildSetting」を開きます。

対応したいスマホのOSによって「IOS」か「Android」を選択して下さい。そして右下の「SwitchPlatform」をおします。

そしてビルドするシーンを登録していきます。

現在開いているシーンを登録する場合は「Add Open Scenes」をクリックすると登録されます。

もしくはエディター「ProjectView」にあるシーンファイルを「Scenes In Build」にドラック&ドロップすることでも登録できます。

登録ができると画像のようにシーンのパスが表示されます。左のチェックマークを外せばビルドから外すことができますが、今回は変更しないで下さい。

ビルドする際は、スマホを接続し下にあるボタン「Build」もしくは「Build And Run」を押してビルドします。

「Build」はビルドしファイルの作成を行い、「Build And Run」は作成終了後自動的に起動しゲームが始まります。

(IOSの場合UnityのビルドのあとにXCodeが開きXcodeでのビルドが始まります。このときに設定次第ではエラーになりますが、Xcodeの詳細はここでは解説しませんので「Unity Xcode ビルド」などで検索してみましょう)

 

タッチ操作への対応

では、ここまで作成したゲームをスマホで操作できるように変更していきます。

まず、もしすでにビルドしてみた方はお気づきかと思いますが、今のままのスクリプトでもスマホで操作できます。

今回使用している

という処理が、スマホでのタップをちゃんと取得しているので今回のゲームの操作では問題なく動きます。

しかし、スマホにはピンチイン・アウトなど2本指以上の指を使用して行う操作も有るため、そのときにこの方法では対応できなくなります。

そのためスマホ専用の方法をつかって今回のゲームのスクリプトを書き換えていきましょう。

 

これがタッチ操作の基本形になります。

 

が、タッチされている指の数を取得しており、0より大きい、つまり1本でも画面に触れていると括弧内の処理を行います。

 

「Input.GetTouch」でタッチしている指の「Touch」クラスを取得でき「( 0 )」でタッチしている中から一番はじめの指を選択しています。

 

そして、取得した指の状況による条件分岐を行い、各フェイズ(Phase)で処理を行います。

TouchPhaseには下記のようなものがあります。

Began 画面に指が触れ始めたとき、触れた瞬間
Moved 画面で指が動いているとき
Stationary 画面に指が触れているが動いてはいないとき
Ended 画面から指が離れたとき、離した瞬間
Canceled キャンセル時

これらを踏まえて、「BallController」を書き換えていきましょう。

全文です。

変更箇所としては、主にマウスクリックだったところをタッチに変更したところです。

と変数名を変更し、

を追加。

のように変更し、また位置の取得を

に変更しています。変数の名前も少し変わっていますが、これは自分のわかりやすい名前にしておけば問題ありません。

このタッチ処理は、複数のタッチを取得できますが、スマホ実機でしか動作しませんのでご注意下さい。

ただし、「UnityRemote5」というアプリを使えば、エディター上での再生をスマホで動作させることも可能です。

興味があれば、お手持ちのスマホで「UnityRemote5」をダウンロードしてみて使ってみてください。

関連記事:

Unity Remote (スマホアプリ) の使い方 スマホでエディタの再生状態を確認!
「UntiyRemote」というスマホアプリについて解説します。 正確には「Unity Remote 5」という名前でIOS、Androidともに配信されていますので、apple storeやGoogle play storeでそれぞれダウ...

 

また、スマホの端末の大きさ・解像度の違いに対応させたい場合は以下の記事を参考に実装してみてください。

Unityの画面のアスペクト比と解像度を自動変換 全スマホ・複数解像度に対応させる
前回で効果音も付けてゲームとしては完成という状態になりました。 前回の記事↓ 今回は最終回、スマホ解像度対応をして完成を目指します。 AndroidでもiPhoneでもタブレット端末でも、アスペクト比や解像度を自動対応させるスクリプトを作っ...

 

以上で「ビリヤードゲーム」の完成です!お疲れ様でした!

次なるゲーム制作に入っていきましょう!

Unity C# ブロック崩しの作り方 Unity入門チュートリアル講座
この講座では初心者向けのUnity入門ゲームプログラミング講座として、「ブロック崩し」を制作していきます。制作の流れとしては、 1.ブロック・プレイヤーパドル・ゲームフィールドの作成、2.プレイヤーパドルを移動できるようにする、3.壁とプレイヤーパドルの当たり判定を作る、4.ボールの移動処理と当たり判定を作る、5.ブロックを崩す処理とボール反射処理を作る、6.クリア・リトライ・ゲームオーバー処理を作るという手順で進めていき、ブロック崩しゲームを完成させます。

Unity C# ビリヤードゲームの作り方に戻る>>



Unity入門の森オリジナル本格ゲーム制作講座はこちら
11種類の本格ゲームの全ソースコード公開・画像&動画による解説付き

コメント

タイトルとURLをコピーしました