Unity(二)——MonoBehavior中的重要内容

延迟(延时)函数

一、什么是延迟函数

延时执行的函数,指定某个函数在具体时间执行

二、延迟函数的使用

1.Invoke

注意:1.第一个参数是函数名字的字符串,一定不能填错

2.延迟函数没法传参数,只会调用无参函数,只能包裹一层,在另一个无参函数中填入参数,调用另一个脚本中的方法同样如此

2.延迟重复执行的函数

InvokeRepeating

3.取消延迟函数

CancelInvoke

三、延迟函数受对象失活的影响

脚本依附对象失活或者脚本失活,延迟函数可以继续执行

脚本依附对象销毁或者脚本移除,延迟函数无法继续执行

这样就可以做到失活之后不执行

协同程序

一、Unity是否支持多线程

是支持的 注意

要记得关闭线程

二、协同程序是什么

本质就是一个迭代器,不是多线程

但是是一个可以让主线程卡顿的耗时的逻辑分时分步执行

三、协同程序和线程的区别

线程与主线程并行执行

协程是在原程序上,进行分步执行

四、协程的使用

1.申明协程函数

返回值为IEnumerator接口类型及其子类

函数中通过yield return返回值进行返回

2.开启协程

不能够直接执行

3.关闭协程

五、yield return不同内容含义

1.等待指定秒后执行

yield return new WaitForSeconds(5f)

2.下一帧执行

yield return +数字

yield return +null

3.等待下一个固定物理帧更新执行

yield return new WaitForFixedUpdate()

4.等待摄像机和GUI之后执行

yield return new WaitForEndOfFrame()

主要用来截图时使用

5.跳出协程

yield break

六、协程受对象和组件失活销毁的影响

物体失活不执行,脚本失活执行

物体跟脚本销毁不执行

相关推荐
aqiu~6 小时前
VSCode编辑器用于Unity项目
vscode·unity
小贺儿开发14 小时前
Unity3D 心理沙盘互动演示
unity·ai·pdf·人机交互·工具·互动·心理沙盘
CuPhoenix16 小时前
【沧海拾昧】Unity 导入中文字体文字缺失的解决方法
unity
南無忘码至尊17 小时前
Unity学习90天-第1天-认识Transform + 坐标系
学习·unity·游戏引擎
南無忘码至尊17 小时前
Unity学习90天-第1天-认识Unity并书写我们的第一个脚本
学习·unity·游戏引擎
风酥糖18 小时前
Godot游戏练习01-第26节-轮次结束后弹出升级选项
游戏·游戏引擎·godot
雪域迷影18 小时前
Hazel游戏引擎结构分析
c++·游戏引擎·hazel
Nuopiane20 小时前
C#基础(1)堆栈、GC与Marshal
unity·c#
weixin_409383121 天前
godot创建两种敌人僵尸 一种吐舌头 一种在角色脚下生成圆形伤害圈 两种僵尸均继承enemy脚本 理解继承
游戏引擎·godot
mxwin1 天前
Unity Shader 跨平台兼容性:处理纹理坐标翻转与精度差异
unity·游戏引擎