二、Unity3D挂载脚本与事件函数

1、如何创建脚本?
与创建材质球一样可以在资源面板中右击创建亦可在菜单栏Assets中创建:

脚本1

可创建Javascript、C#、Boo Script等脚本即Unity所支持的语言。
以后主要研究C#以及Shader!
创建完之后会在资源面板中出现如下脚本:
注:命名和路径不要出现中文!

脚本2

2、挂载脚本

创建好的脚本和组件一样,可以挂载到游戏对象上,一般游戏逻辑的脚本会挂到空对象上。(直接将脚本拖动到GameObject上即可)

挂载

如果想让空对象可见,则要添加网格组件(Mesh Filter)和着色组件(Mesh Renderer),并添加相应的网格形状和贴图!

可见组件

挂载脚本需要注意:
1、需要继承自MonoBehaviour
2、这个脚本需要没有错误,或者其他脚本也没有错误
3、文件名与类名相同

脚本

MonoBehaviour是所有脚本的父类,即要想挂载到游戏对象上就必须继承这个类!!!
默认自动创建又Start 和 Update两个事件函数。

3、事件函数调用顺序
基本的事件函数有:
Awake():唤醒
OnEnable():当前组件是否激活(组件是否被勾选)
Start():开始
FixedUpdate():固定帧更新(用于写物理相关的逻辑)
Update():每一帧更新(用于写与游戏的主要逻辑)
LateUpdate():摄像机相关的逻辑更新
OnDisable():当前组件是否关闭
OnDestroy():销毁

事件

上图中的
Debug.Log();和print();是控制台输出语句。
print();需要当前类继承MonoBehaviour以后才能调用,本质也是调用Debug静态方法!

事件函数的调用顺序如下图控制台输出窗口:

事件函数

点击开始运行后,先执行
1次Awake
1次OnEnable
1次Start
之后执行
FixedUpdate : 0.02S调用一次(可修改)
Update、LateUpdate : 在Start调用完以后,每一帧都会调用的

取消脚本的勾选后 这里写图片描述
会调用
1次OnDisable
再勾选上时又会调用
1次OnEnable
点击停止运行后执行
1次OnDestroy。

如果出现2个脚本同时挂载到一个物体上,那先执行哪个呢?
其实这时可以控制的如下图:
点击脚本再点击其属性面板中的Execution Order

顺序

会出现如下面板
点击 + 号,就会让你选择先执行哪个脚本。
当然即使时先执行Test1脚本,也是先执行Test1的Awake和OnEnable再执行Test2的Awake和OnEnable!然后再执行Test1的Start和Test2的Start,Test1的Update和Test2的Update,以此类推。感兴趣的话可以自己写2个试试。

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值