查看: 2419|回复: 4
打印 上一主题 下一主题

[其他] MonoBehaviour学习笔记

[复制链接]

2317

主题

54

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
20645
精华
62

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2014-11-29 04:47:25 |只看该作者 |倒序浏览

MonoBehaviour基本函数使用方法(按调用顺序排布):

Awake:当一个脚本实例被载入时Awake被调用
Start:Start仅在Update函数第一次被调用前调用
FixedUpdate:固定间隔时间调用,一般用于更新物理状态
                      在固定的时间间隔执行,不受游戏帧率影响。所以处理Rigidbody的时候最好用FIxedUpdate。
                      修改:Edit -> Project Setting -> time 修改Fixed timestop值
Update:每帧执行,一般用于更新场景和状态
              在每次渲染新的一帧的时候调用,更新频率和设备的性能有关以及被渲染的物体(可认为是三角形的数量)。所以不同机器上效果不一致,Update执行间隔也不一样。
LateUpdate:每帧执行,在Update之后,一般用于更新摄像机状态

:①FixedUpdate和Update具体执行的先后顺序是不确定的。
       ②以上的几个函数是分批次执行的,所有脚本的一个批次执行完了才执行下一批次函数。
          如:所有脚本Awake执行完了,才执行Start。所有脚本Update执行完了,才执行LateUpdate。
       ③继承自MonoBehaviour的类,不需要自己创建它的实例,也不能自己创建(如new类名),unityhi自动创建实例,并且调用被重载的函数。
          普通类,可以用new来创建实例。

延迟调用函数:
Invoke 【函数名,延迟调用时间s】 根据指定时间后调用指定函数
InvokeRepeating 【函数名,延迟调用时间s,执行间隔时间s】 在延迟时间后,按间隔时间循环执行
CancelInvoke 【no param】 取消所有Invoke方式调用
IsInvoking 【函数名】【bool】 某执行函数是否在等待调用

协同程序(详见协同程序):
StartCoroutine 【IEnumerator】【Coroutine】 开始协同程序
StopCoroutine 【函数名】 停止这个动作中是函数名的所有协同程序
StopAllCoroutines 【no param】 停止所有动作的协同程序

分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

hyui    

1

主题

2

听众

6671

积分

高级设计师

Rank: 6Rank: 6

纳金币
2715
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2014-11-29 05:43:06 |只看该作者
Very awesome !!
回复

使用道具 举报

6

主题

1

听众

1473

积分

助理设计师

Rank: 4

纳金币
126
精华
1
板凳
发表于 2014-11-30 15:50:20 |只看该作者
感谢分享!~
回复

使用道具 举报

Ethan    

0

主题

3

听众

3259

积分

中级设计师

Rank: 5Rank: 5

纳金币
1055
精华
0
地板
发表于 2014-12-1 11:34:21 |只看该作者
顶楼主~~~~~~~~~~~~~~~~
回复

使用道具 举报

4

主题

2

听众

1742

积分

助理设计师

Rank: 4

纳金币
110
精华
0

活跃会员

5#
发表于 2014-12-7 04:10:13 |只看该作者
great up !! thakns
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-25 15:54 , Processed in 0.092063 second(s), 32 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部