Unity程序运行时长,某一段代码运行时长

3 篇文章 0 订阅

1.从程序开始运行计算,到某一位置的运行时长

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class NewBehaviourScript : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        fun();
        float time = Time.realtimeSinceStartup;    //从程序开始到该位置的运行时长
    }

    void fun()
    {
       
    }
}

2.某一段代码或某一个函数的运行时长

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class NewBehaviourScript : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        fun();
        float time = Time.realtimeSinceStartup;     //fun()、到该位置的运行时间
        fun1();
        float time1 = Time.realtimeSinceStartup - time; //fun1()函数运行时间,做差实现
    }

    void fun()
    {
        
    }
    void fun1()
    {

    }
}

3.某一段代码的运行时间,与2中的方法相同

在DOTween 1.2.000及以上版本中,你可以使用DOPath方法的OnWaypointChange参数,在DOTweenPath到达每个关键点时暂停,并在一定时间后继续运行。具体来说,你可以在OnWaypointChange回调函数中,使用DOVirtual.DelayedCall方法来实现暂停和继续运行的逻辑。 下面是一段示例代码,用于实现DOTweenPath暂停5秒后继续运行的效果: ```c# public DOTweenPath path; // 指定路径对象 public float pauseDuration = 5f; // 暂停的时间度 private bool isPaused = false; // 是否处于暂停状态 void Start() { // 注册OnWaypointChange回调函数 path.onWaypointChange += OnWaypointChange; } void OnWaypointChange(int waypointIndex) { // 判断是否到达路径终点,如果是则退出 if (waypointIndex >= path.wps.Length - 1) { return; } // 判断是否需要暂停 if (!isPaused && waypointIndex % 2 == 0) { // 如果需要暂停,则调用DOVirtual.DelayedCall方法,延迟指定时间后继续运行 DOVirtual.DelayedCall(pauseDuration, () => { isPaused = false; // 恢复运行状态 }); isPaused = true; // 进入暂停状态 } } ``` 在这段代码中,我们首先注册了DOTweenPath的onWaypointChange事件,以便在到达路径上每个关键点时获取回调。在OnWaypointChange回调函数中,我们判断当前到达的关键点是否需要暂停,如果需要暂停,则调用DOVirtual.DelayedCall方法,延迟指定时间后继续运行。在延迟结束后,DOVirtual.DelayedCall方法会调用一个Lambda表达式,其中我们将isPaused变量设置为false,表示恢复运行状态。 需要注意的是,上述代码仅供参考,具体实现方式可能因项目需求而异。如果你需要实现更复杂的暂停和继续运行逻辑,可以根据自己的具体需求进行修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值