unity 关闭自己脚本_Unity 如何停止脚本自动编译

本文介绍了如何在Unity中防止脚本自动编译,以节省开发时间。通过创建一个编辑器脚本并监听编辑器状态变化,可以在进入播放模式时锁定程序集加载,阻止运行时编译,而在退出播放模式后自动编译。这样可以在修改脚本后继续运行,无需中断项目。
摘要由CSDN通过智能技术生成

我们知道unity引擎在我们写好或修改了C#脚本之后,会自动编译。这个编译是比较耗时的。哪怕我们做了一丁点儿修改,这个过程也不可避免。

此时我们就想是不是可以停止脚本自动编译。

尤其是在运行时候我们修改了一下某个脚本,但是并不想结束运行,这时候如果我们顺手切换了一下unity编辑器的话,就会导致运行结束,开始重新编译脚本。

那么我们怎么来实现阻止脚本自动编译

unity提供了一个阻止加载程序集的方法,我们可以利用一下。

首先我们创建一个编辑器脚本,放到Editor文件夹下:

using UnityEditor;using UnityEngine;[InitializeOnLoad]public class CompilerOptionsEditorScript{     static CompilerOptionsEditorScript()     {         EditorApplication.update += OnEditorUpdate;     }     static void OnEditorUpdate()     {         if( EditorApplication.isCompiling )             Debug.Log( "Scripts are compiling" );     }

}

[InitializeOnLoad]属性使得我们的编辑器类可以在unity加载之后不需要玩家操作就可以做一些初始化功能。

然后我们使用EditorApplication.update委托接收编辑器更新的事件。

上面的代码完成之后,如果我们改变了脚本,那么就会在console里输出scripts are compiling。

我们的目的是阻止自动编译。例如我们阻止运行时编译脚本。<

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值