Unity3d C#实现编辑器不运行状态下执行的脚本

第一章方式: 
   函数前面 +  [ContextMenu("Play")] ,Inspector面板右键调用

Unity3d C#实现编辑器不运行状态下执行的脚本_第1张图片 

第二种方式:

OnValidate() ,值改变自动执行 

using UnityEngine;
using System.Linq;

public class NightController : MonoBehaviour
{
    public float m_fEmissionInstensity = 0;
    public Material[] m_NightMats;

    // Start is called before the first frame update
    void OnValidate()
    {
        m_NightMats.ToList().ForEach(_ =>
        {
            _.SetFloat("_Emission_Intensity", m_fEmissionInstensity);
        });
    }


    [ContextMenu("Play")]
    void Play()
    {
        m_NightMats.ToList().ForEach(_ =>
        {
            _.SetFloat("_Emission_Intensity", m_fEmissionInstensity);
        });
    }
}

 

你可能感兴趣的:(unity,c#,编辑器,开发语言)