Unity中update与lateupdate使用区别

本文解析Unity中Update与LateUpdate的区别,强调Update立即执行,LateUpdate在一帧最后执行。适用于如摄像头跟随等操作,避免行为判断延迟导致的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Unity中Update()与lateUpdate(),记住关键区别Update()理解成立即触发,lateupdate()是随后触发,可以理解成一帧中立刻执行,另外是一帧最后执行,像一些摄像头跟随这种可以用lateUpdate(),但一些像是人物的行为判断要在update()中,要不然可能一个极细微的时间差会报错。比如我的游戏中,AI_Player中通过实时监控血量值来判断ai是否被杀死,如果发现死了就注销身上带的行为树,然后把整个实例从网络中注销。最开始我放在了LateUpdate()中,结果死亡的一瞬间还执行了一些行为,报51个错,这应该就是这一帧中从Update()到lateUpdate()执行的顺序间隔。
void LateUpdate()
{
if (this.photonView.IsMine == true)
{
//if (this.Health <= 0)
//{
// GetComponent().DisableBehavior();//注销树
// PhotonNetwork.Destroy(gameObject);
//}
if (this.Health <= 0.6f)
{
if (gameitemstable.Contains(“ADDBLOOD”))//如果有血瓶,使用,并删除此血瓶
{
//添加使用血瓶的动画 预留
this.Health = 1f;
gameitemstable.Remove(“ADDBLOOD”);
}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值