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

第一章方式:

函数前面 + [ContextMenu("Play")] ,Inspector面板右键调用

第二种方式:

OnValidate() ,值改变自动执行

cs 复制代码
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);
        });
    }
}
相关推荐
小年糕是糕手11 分钟前
【C++】C++入门 -- inline、nullptr
linux·开发语言·jvm·数据结构·c++·算法·排序算法
郝学胜-神的一滴16 分钟前
Python中一切皆对象:深入理解Python的对象模型
开发语言·python·程序人生·个人开发
csbysj202038 分钟前
JSP 隐式对象
开发语言
星期天242 分钟前
3.2联合体和枚举enum,还有动态内存malloc,free,calloc,realloc
c语言·开发语言·算法·联合体·动态内存·初学者入门·枚举enum
梵克之泪1 小时前
【号码分离】从Excel表格、文本、word文档混乱文字中提取分离11位手机号出来,基于WPF的实现方案
开发语言·ui·c#
charlie1145141911 小时前
面向C++程序员的JavaScript 语法实战学习4
开发语言·前端·javascript·学习·函数
夫唯不争,故无尤也1 小时前
Python广播机制:张量的影分身术
开发语言·python
qq_479875431 小时前
X-Macros(3)
java·开发语言
列逍1 小时前
深入理解 C++ 异常:从概念到实战的全面解析
开发语言·c++
java1234_小锋2 小时前
简述Mybatis的插件运行原理?
java·开发语言·mybatis