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);
        });
    }
}
相关推荐
瑞雪兆丰年兮1 分钟前
数学实验(Matlab编程基础)
开发语言·算法·matlab·数学实验
TheWindofFate5 分钟前
C# 基础 try-catch代码块
c#·try-catch
努力的小帅19 分钟前
C++_STL_map与set
开发语言·数据结构·c++·学习·leetcode·刷题
alladmin22 分钟前
VSCode CMake Debug
ide·vscode·编辑器
yezipi耶不耶32 分钟前
Rust入门之高级Trait
开发语言·后端·rust
双叶83644 分钟前
(C语言)超市管理系统 (正式版)(指针)(数据结构)(清屏操作)(文件读写)
c语言·开发语言·数据结构·c++·windows
为美好的生活献上中指1 小时前
java每日精进 5.14【参数校验】
java·开发语言·spring boot·tomcat
后青春期的诗go1 小时前
基于Rust语言的Rocket框架和Sqlx库开发WebAPI项目记录(一)
开发语言·后端·rust
景天科技苑2 小时前
【Rust闭包】rust语言闭包函数原理用法汇总与应用实战
开发语言·后端·rust·闭包·闭包函数·rust闭包·rust闭包用法
uyeonashi3 小时前
【Boost搜索引擎】构建Boost站内搜索引擎实践
开发语言·c++·搜索引擎