gpt4 book ai didi

c# - 我想为一个事件创建一个计时器/秒表

转载 作者:太空宇宙 更新时间:2023-11-03 12:02:19 26 4
gpt4 key购买 nike

我有一个代码可以正常工作,但我认为如果我继续遵循相同的策略来做所有相同的事情,它会无缘无故地在处理器上过载

我有一个代表时间的变量,这个变量在游戏对象的速度高于 0.5f 的每一帧中都为 0,所以我不想在每一帧都重置它,而是在它低于 0.5f 时启动计时器

    if (speed >= 0.5f)
{
t = 0;
}

t = t + Time.deltaTime;

最佳答案

您可以使用 bool 值来节省性能。

public static bool isTimerMoving = false;

public void Update()
{
if (speed < 0.5f)
{
t = t + Time.deltaTime;
isTimerMoving = true;
}
else if (isTimerMoving) {
t = 0;
isTimerMoving = false;
}
}

只要速度达到 0.5f,这段代码就会重置计时器.如果你只想暂停计时器,你可以删除 t = 0从它。

附言使用 ><比使用 <= 更快或 >= .不是很多,但我喜欢保持高效 ;)

编辑:提问后,回复表明此声明是错误的,我很抱歉。

关于c# - 我想为一个事件创建一个计时器/秒表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56512130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com