Unity3D学习过程:关于脚本和MonoBehaviour类

Unity中常用脚本类简单分为四大类:

宏观控制类,游戏对象类,组件类,资源类;

宏观控制类:

主要作用是对Unity程序中的某一方面进行宏观控制;

例如:应用程序类(Application)、输入类(input)、图形输出类(GUI)、物理引擎类(Physics)、

资源类(Resources)、时间类(Time)等;

游戏对象类(GameObject)类:表示当前脚本挂在的游戏对象;

组件(Component)类:每一个游戏对象的细节设置与操控都需要借助组件类来完成;

MonoBehaviour类

Unity脚本组件必须继承MonoBehaviour类;

继承自MonoBehaviour的脚本组件可以自动调用其封装好的回调方法;

脚本生命周期:

Unity3D学习过程:关于脚本和MonoBehaviour类_第1张图片
初始阶段

Awake()唤醒:当物体载入时立即调用1次,常用于在游戏开始前进时进行初始化,

可以判断当满足某种条件执行此脚本this. enable = true;

OnEnable()当可用:每当脚本对象启用时调用;

Start()开始:物体载入且脚本对象启用时被调用1次,常用于数据或游戏逻辑初始化,执行时间晚于Awake;

物理阶段

FixedUpdate()固定更新:脚本启用后,固定时间被调用,适用于对游戏对象做物理操作,例如移动等。

设置更新频率:“Edit”-->"Project Setting" -->"Time"-->"Fixed Timestep"值,默认为0.02s;

游戏逻辑

Update()更新:脚本启用后,每次渲染场景时调用,频率与设备性能及渲染量有关;

LateUpdate()延迟更新:在Update函数被调用后执行,适用于跟随逻辑;

场景渲染

OnGui()渲染:渲染和处理GUI事件时调用

OnBecameVisible()当可见:当Mesh Renderer在任何相机上可见时调用;

OnBecameInvisible当不可见:当Mesh Renderer在任何相机上不见时调用;

结束阶段

OnDisable()当不可用:对象变为不可用和附属游戏对象非激活状态时此函数被调用;

OnDestroy()当销毁:当脚本销毁或附属的游戏对象被销毁时调用;

OnApplicationQuit当程序结束:应用程序退出时被调用;

你可能感兴趣的:(Unity3D学习过程:关于脚本和MonoBehaviour类)