Unity的特性(Attribute)系列详解——ExecuteInEditMode


前言

今天在看unity官方的demo的代码,看到了这样的一个特性[ExecuteInEditMode],查了下官方的API(官方API链接),记录下自己的理解。


一、Unity的模式

在介绍[ExecuteInEditMode]之前,先来看下了解下Unity 的三种模式

1.Edit Mode

就是大家通常说的编辑器模式下,不用点击Play运行项目。

2.Play Mode

按下Play正常运行项目的时候,就是Play Mode。

3.Prefab Mode

就是在编辑预制体Prefab的时候,就是Prefab Mode。


二、[ExecuteInEditMode]及相关特性介绍

1.[ExecuteInEditMode]

字面翻译就是在编辑器模式下调用。在正常运行的时候还是可以调用的。
在编辑器模式下调用的时候,有的函数跟直接在运行模式下调用是不一样的。
Update是只有在场景改变时,才会调用,切进程也会调用。
AwakeStart是脚本加载的时候才会调用,就是手动挂载脚本的时候才会调用。
OnGUI当GameView接收到Event时才调用。
OnRenderObject和其他的渲染回调函数,是当SceneView或者GameView重绘时才会调用,比如鼠标移动的时候,OnRenderObject会被调用。
在正常运行模式下调用还是正常的调用。

2.[ ExecuteAlways]

字面意思就是在所有模式下调用。使脚本的实例在播放模式期间以及编辑时始终执行(包括在编辑Prefab的情况下)。
它的函数调用基本和[ExecuteInEditMode]一样,只是额外加上在编辑预制体的模式下也可以调用,其他的和[ExecuteInEditMode]都一样。


总结

欢迎大佬多多来给萌新指正,欢迎大家来共同探讨。
如果各位看官觉得文章有点点帮助,跪求各位给点个“一键三连”,谢啦~

声明:本博文章若非特殊注明皆为原创原文链接
https://editor.csdn.net/md/?articleId=123003814
————————————————————————————————

💢💢版权声明

版权声明:本博客为非营利性个人原创
所刊登的所有作品的著作权均为本人所拥有
本人保留所有法定权利,违者必究!
对于需要复制、转载、链接和传播博客文章或内容的
请及时和本博主进行联系
对于经本博主明确授权和许可使用文章及内容的
使用时请注明文章或内容出处并注明网址
转载请附上原文出处链接及本声明

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值