【Unity入门】12.MonoBehaviour事件函数

【Unity入门】MonoBehaviour事件函数

    大家好,我是Lampard~~

    欢迎来到Unity入门系列博客,所学知识来自B站阿发老师~感谢

(一)常用的事件函数

(1)start和update方法

    之前我们写的脚本,会默认帮助我们继承于MonoBehaviour类,MonoBehaviour是unity的一个基类,类似于cocos的object

MonoBehaviour是Unity引擎中的一个基类,用于编写游戏对象的脚本,开发者可以通过继承MonoBehaviour类并实现其中的方法来实现游戏对象的交互行为和游戏机制

    默认创建的C#脚本会自带两个方法,分别是start和update。我们通知之前的使用知道,start是脚本初始化时候会被调用一次,update会每帧进行调用,而游戏的帧率我们可以通过Application.targetFrameRate来进行设置

    这两个方法我们很熟悉,下面会介绍其他三种常见的事件函数

(2)awake方法

    Awake方法是MonoBehaviour类中的一个回调方法,在游戏对象被创建时调用,用于初始化游戏对象的属性和状态,在Start方法之前执行

Awake方法的作用一般是进行游戏对象的初始设置,例如获取其他组件的引用、初始化变量、设置默认参数等。在Awake方法中进行这些初始化设置可以保证在Start方法之前完成,从而避免在Start方法中出现未初始化的情况

    从上文得知,Awake和Start类似都是会执行一次进行初始化使用。它们的区别在于,Awake在Start之前调用,且哪怕物体是禁用状态,Awake也会执行

    比如小车物体挂载了FirstLogic脚本,我们现在把代码设置禁用状态,设置如下代码

    void Awake()
    {
        Debug.Log("正在执行Awake方法");
    }

    void Start()
    {
        Debug.Log("正在执行Start方法");
    }

    看看执行结果:

     如果我们把代码的勾选项勾上呢,就会出现Awake先比sStart执行的结果

(3)onEnable方法和onDisable方法

    onEnable和onDisable方法会分别在脚本启用和禁用的时候调用

    需要注意的是,onEnable方法和onDisable方法在游戏对象的生命周期中可能会多次被调用,因此在实现时需要注意避免重复注册和清理等情况

     举个栗子,我们加上以下代码:

    private void Awake()
    {
        Debug.Log("正在执行Awake方法");
    }

    private void onEnable()
    {
        Debug.Log("正在执行onEnable方法");
    }

    private void onDisable()
    {
        Debug.Log("正在执行onDisable方法");
    }

    void Start()
    {
        Debug.Log("正在执行Start方法");
    }

    看看结果,只要物体被调用/禁用的时候代码就会执行:

好啦今天就到这里,感谢阅读!!!
点赞,关注!!!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lampard杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值