Unity 静态类执行Update()

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 静态类执行Update()相关的知识,希望对你有一定的参考价值。

参考技术A

最简单的实现方法,是在一个继承MonoBehaviour的类的Update方法中直接调用静态类的Update(),然后将该脚本挂载到任意游戏物体上并设置为不被销毁。

但这让这个静态类对一个场景物体产生了耦合,这样在更换场景或是不同项目的复用上产生了不便,于是可以把生成游戏物体这个操作由手动转为静态类中自行生成。

这样,在 静态成员被调用 时,静态类的静态构造函数会被执行,然后生成物体并执行Update。

执行效果

抛砖引玉,大鸟勿喷~~

unity中常用脚本生命周期全解

参考技术A 1)Awake:整个生命周期中只执行一次(脚本文件被加载到场景中的时间调用)

2)OnEnable:整个生命周期执行的次数不确定(当游戏对象或者脚本在激活的时间执行该方法)

3)Start:整个生命周期中只执行一次(用于进行初始化操作)

4)FixedUpdate:以帧为单位进行场景的刷新,以固定的时间来进行间隔执行,主要完成与物理相关的更新操作

5)Update:每一帧与每一帧的执行时间可能是不一样的,Update方法执行速率与硬件和渲染的物体有关系,有时间快,有时间慢,主要完成场景中一些数据的更新和数据的逻辑处理操作

6)LateUpdate:当一帧执行结束,在执行下一帧之前,会调用此方法

7)OnGUI:以帧为单位进行反复的执行

8)OnDisable:整个生命周期执行的次数不确定(当对象或脚本处于不可用或不可激活的时间执行该方法,一般会与OnEnable方法配合使用)

9)OnDestory:整个生命周期只执行一次(当对象(或脚本文件)被销毁的时间执行该方法,在执行该方法的时间,一般会先执行OnDisable方法,将对象变为不可用的状态,然后在销毁)

1)一个游戏对象是否只能绑定一个脚本

    一个游戏对象的身上会绑定多个脚本文件

2)如果一个游戏对象可以绑定多个脚本,那么那个脚本先执行,那个脚本最后执行了

    先绑定的脚本最后执行,最后绑定的脚本先被执行

3)场景中如果存在多个游戏对象,多个游戏对象的身上都绑定了脚本文件,执行顺序又是怎样的

    先绑定的脚本最后执行,最后绑定的脚本先被执行,无论游戏对象上绑定了多少脚本组建,脚本的执行和脚本的绑定顺序有关

注意:绑定在游戏物体对象上面的脚本文件可以手动设置Script Execution Order来决定脚本的执行顺序,值越小代表的执行优先级越高

以上是关于Unity 静态类执行Update()的主要内容,如果未能解决你的问题,请参考以下文章

Unity 入门笔记 - 07(完) - 菜单&手机端&静态类&生成游戏

unity,啥时候用静态类,啥时候用单例

Unity3D - 单例模式和静态类

《Unity_API解析》 第九章 Random类

unity中怎样重新开始游戏?

c# 有调用一个类的静态方法,是不是执行这个类的构造函数