Unityバージョン:5.0.0f4 Personal (2015/4/23)
前回の続きを書いていきます〜
今回は、プレイヤーを動かしましょう!
【目標】プレイヤーを動かしゲームを継続させる!
こいつを動かしましょ〜
【課題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でちょうどいい感じになりました〜
止まってくれます 跳ね返してくれます
【おまけ】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にチェックを入れるのもお忘れなく〜
音楽が鳴るようになりました
さて今回はここまでとなります〜ありがとうございました〜
【Unity開発2】ボールをぶつけて、ブロックを消したい!【ブロック崩し:2/5】
【Unity開発2】プレイヤーを動かしてゲームを継続させたい!【ブロック崩し:3/5】