前回の記事(【Unity2D】物体を重力で落下させる)ではスプライトにRigidBody2Dコンポーネントを追加して重力に従って落下するようにしました。
今回は物体の形状を設定して互いに衝突するようにしてみます。
準備
まず画面上に円と四角のスプライトを配置します。
それぞれにRigidBody2Dコンポーネントを追加します。ここまでが前回の記事の内容です。手順に関しては前回の記事をご覧ください。
(【Unity2D】物体を重力で落下させる)
コライダーを追加する
物理衝突を行うためには物体にコライダーを設定する必要があります。
コライダーとは、物理衝突における物体の形状を決めるものです。
シーンのヒエラルキーで円のスプライトをクリックして選択します。
現状ではRigidBody2Dコンポーネントが追加されています。
ここでは円の形状に合わせて2Dサークルコライダーを追加します。
コライダーを追加する手順
- インスペクターの「コンポーネントを追加」をクリックします。
- 「2D物理」->「2Dサークルコライダー」の順にクリックします。
- 2Dサークルコライダーが追加されました。
四角のスプライトにも同様にコライダーを追加します。
こちらは形状が四角ですので、2Dボックスコライダーを追加します。
- シーンのヒエラルキーで四角のスプライトをクリックして選択します。
- インスペクターの「コンポーネントを追加」をクリックします。
- 「2D物理」->「2Dボックスコライダー」の順にクリックします。
- 2Dボックスコライダーが追加されます。
実行する
四角のスプライトは落下させたくないので「静物」として設定します。
インスペクターの「Rigidbody2D」でボディタイプは「静的」としておきます。これで動くことはありません。
実行ボタンを押してゲームを開始します。
円のスプライトが落下し、四角のスプライトに衝突して停止します。