SD版Unityちゃんとフルーツの当たり判定を実装する

新年明けましておめでとうございます。今年も当ブログをよろしくお願いします。

さて、今年に入って初めての投稿になりますが、引き続きフルーツキャッチアプリの制作を進めていきたいと思っています。

今年の目標は、とにかく更新頻度を上げることですね。去年はせいぜい60記事程でしたので、せめて倍の120記事は投稿できればと思っています。

スポンサーリンク

SD版Unityちゃんとフルーツの当たり判定の設定

Unityちゃんの動作を修正して、フルーツを落下させるところまで進めていました。

今回は、落下してくるフルーツとの当たり判定を実装していきます。

りんごのコライダの設定

とりあえず、何でも構わないのでフルーツをシーンビューに配置しておきましょう。

私は、過去の内容で既にりんごを配置していたいのでこのりんごを使って説明します。

りんごのコライダ設定

フルーツを選択すると「Mesh Collider」がアタッチされていると思います。

この中にあるConvexにチェックを入れてis Triggerにもチェックを入れます。

MeshColliderを外して、新たにフィットするコライダをアタッチしても良いんですけど、いびつな形をしたフルーツの場合はふさわしいコライダが無い事もあるので、今回はMeshColliderを使います。

りんごとかキウイとか丸いフルーツだと楽なんでけど、バナナ等は割と大変です。

スクリプトで衝突を検知する

続いて、Unityちゃんがりんごに衝突した際に得点が表示されるようにします。

まずは、試験的にコンソールに「10点」と表示されるようにしてみます。

フルーツと衝突を検知するスクリプト

Updateメソッド内にvoid OnTriggerEnterメソッドを追加しました。

これで、Unityちゃんがりんごに衝突した時、コンソールに「10点」と表示し、Destroyメソッドにてアイテムを破棄します。

スクリプトを保存したらゲームを実行してみます。

Unityちゃんがりんごと衝突したら10点と表示する

ご覧のようにりんごに接触したら、りんごが消えてコンソールに「10点」と表示されるはずです。

今はコンソールに表示させていますが、本来なら上の方にスコア用テキストを配置して、フルーツに衝突する度にスコアを更新するようにするべきですね。

次回は、フルーツの種類によって点数を変えてその判別をTagを使って行っていきます。