ゲームの壁すり抜けバグってたまにあるよね
みなさん、こんにちは!
夏の暑さ対策はもっぱら水風呂、あらたまです。
さて今日は「君がゲームを作る!Unityゲーム開発入門」の第46回目です。
おさらい
前回 ではキャラクターをキーボードで操作できるようにしましたね。
ですがいまのままですと、キャラクターが外枠をすり抜けてしまいます。
今回はキャラクターが外枠を飛び出してしまわないようにしていきたいと思います。
今日の内容はほぼ 第17回 ステージの枠をすり抜けないようにしよう! で学習した内容の復習になります。
今回はざっと手順だけご説明しますので、忘れちゃったな…というかたは是非一度読み返してみてくださいね。
キャラクターに"Rigidbody"コンポーネントを追加
まずはキャラクターに"Rigidbody"コンポーネントを追加、物理演算システムの対象にされるようにします。
ヒエラルキーウィンドウで「yusya」を選択し、"Add Component"をクリックします。
インスペクターウィンドウに「Rigidbody 2D」が追加されました!
「Gravity Scale」(重力の強さ)も0に変えておきましょう。
キャラクターに"Collider"コンポーネントを追加
続いてキャラクターに"Collider"コンポーネントも追加します。
これによって、壁との衝突を検知することができるようになります。
キャラクターのスプライトをクリックして選択し、"Add Component"をクリックします。
タイルマップに"Collider"コンポーネントを追加
同じようにタイルマップにもコライダーを追加していきましょう。
ヒエラルキーウィンドウで「MountainTilemap」を選択し、「Add Component」をクリックします。
「Tilemap Collider 2D」をクリックします。
動作を確認する
それでは、テストプレイをして動作を確認してみましょう!
「▶」ボタンをクリックしてプレイモードに入ります。
キャラクターを操作してみると。。山にぶつかって、それ以上は進めなくなりました!
今回はここまでです!
次回は、キャラクターのアニメーションを設定していきたいと思います。
次回へ続く。