Unity(C#)初心者・入門者向けチュートリアル ひよこのたまご

AndroidやiOS向けアプリを簡単に作れるゲーム開発環境Unity(ユニティ)の使い方を、チュートリアル方式で一緒に学びましょう!

【Unity2】プレイヤーを移動!Input.mousePosition, ScreenToWorldPoint【ブロック崩し3】

Unityバージョン:5.0.0f4 Personal (2015/4/23)

f:id:hiyotama:20150423102016p:plain

 

前回の続きを書いていきます〜

今回は、プレイヤーを動かしましょう!

 

【目標】プレイヤーを動かしゲームを継続させる!

 

f:id:hiyotama:20150423161501p:plain

こいつを動かしましょ〜

 

【課題1】プレイヤーを動かす

プレイヤーを動かすscriptを作って、貼り付けましょう〜

 

 

Input.mousePositionによって、スクリーン座標(マウスが現在いる位置、スマホだったらタップした位置)を取得できます〜試しにInput.mousePositionの下の行に「Debug.Log(pos);」というコードを追加してデバッグしてみたところ、画面の左下が(x:0, y:0)で、右上が(x:最大値 y:最大値)となっているようです〜

 

このスクリーン座標をワールド座標(Transform.Position等で今まで僕達が設定してきた位置情報)に変換するのが、 Camera.main.ScreenToWorldPoint()です〜

かっこの中に引数としてスクリーン座標(pos)を入れることで、ワールド座標に変換してくれます〜

 

変換したワールド座標を最後の行でプレーヤー位置に変換していますが、その前にx.y.zの位置を調整しています〜

 

今回プレイヤーは横移動するので、x軸以外は固定です〜

 

x軸に関しては、壁を突き抜けないように調整しましょう〜僕の場合は左端が-2.1f、右端が2.1fでちょうどいい感じになりました〜

 

f:id:hiyotama:20150423164019p:plain

止まってくれます 跳ね返してくれます

 

【おまけ】BGMを鳴らす

なんとなくゲームっぽい雰囲気になってきたので、音楽を鳴らしましょう〜

 

GANSAIBOW CREATE EVERYDAY!様の記事によると、Unityではaif,wav,mp3,oggという形式をサポートしており、中でもogg形式のものを推奨しているようです〜

 

まずはogg形式の音源ファイルをasset storeで落とすなり自分で録音するなりして、手にいれましょう〜

 

そしてMain CameraのInspectorからAdd Component>Audio>AudioSourceと進み、AudioSourceをくっつけましょう〜

 

AudioSourceがiPodやらウォークマンやらといった音楽再生のイメージ、そしてその上にあるAudioListenerが人間でいう耳にあたります〜

 

MainCameraにつけたAudioSourceのAudioClipに、先ほど手に入れたBGMをくっつけます〜また、ループ再生させたいと思いますので、Loopにチェックを入れるのもお忘れなく〜

 

f:id:hiyotama:20150423165903p:plain

音楽が鳴るようになりました

 

さて今回はここまでとなります〜ありがとうございました〜

 

【Unity開発2】下準備【ブロック崩し1/5】

【Unity開発2】ボールをぶつけて、ブロックを消したい!【ブロック崩し:2/5】

【Unity開発2】プレイヤーを動かしてゲームを継続させたい!【ブロック崩し:3/5】

【Unity開発2】ゲームオーバー・ゲームクリアを出したい!(前編)【ブロック崩し:4/5】

【Unity開発2】ゲームオーバー・ゲームクリアを出したい!(後編)【ブロック崩し:5/5(Fin)】