実現したいこと
- [ ]衝突判定の汎用プログラムの作成
前提
ある衝突判定を検知するためのオブジェクトを作成し、そのオブジェクトにこのスクリプトをアタッチする。そのオブジェクトのコライダーに衝突しているオブジェクトを感知し、指定したイベントを呼び出す。また、その時、そのイベントに引数として衝突したオブジェクトを渡す。
該当のソースコード
`C#
using System;
using UnityEngine;
using UnityEngine.Events;
[RequireComponent(typeof(Collider))]
public class CollisionDetector : MonoBehaviour
{
[SerializeField]
TriggerEvent onTriggerStay = new TriggerEvent();
private void OnTriggerStay(Collider other) { onTriggerStay.Invoke(other); } [Serializable] public class TriggerEvent : UnityEvent<Collider> { }
}
補足情報(FW/ツールのバージョンなど)
Unityで入門書を購入し、そのコードを書いていたときに、急に難しい文法が出てきて、挫折してしまいました。解説を読んでも、Serializableというものが何なのか、なぜ新しいクラスを作成しているのかなどの説明がなく、ここに質問をしたら解決するかもしれないと思い、質問させていただきました。初めての質問なので説明不足なところがあるかもしれませんが、よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー