1. 程式人生 > >小功能丨Unity UnityEvent實現程式碼的選擇

小功能丨Unity UnityEvent實現程式碼的選擇

目標:本功能原目標實現點選Collider,觸發某事件

問題:應用場景需要寫很多點選事件,每個點選事件要執行的方法現都已有了,再重複寫到各個指令碼的OnMouseDown事件,掛到各個物體,這很麻煩

解決方法:

1、將要執行的所有點選方法public寫到一個指令碼,掛載到某物體

2、寫如下指令碼

using UnityEngine;
using UnityEngine.Events;

public class Skode_SCtoVuforia : MonoBehaviour {

    public UnityEvent OnClick;

    public virtual void OnMouseDown()
    {
        if (OnClick != null)
        {
            OnClick.Invoke();
        }
    }
}

3、使用第二步的指令碼如同使用Button按鈕一樣,直接拖拽第一步物體,選擇對應方法,當觸發Collider時,便自動呼叫