zoukankan      html  css  js  c++  java
  • Unity 关于时间

    一、引言

       本篇博客 包括:unity中帧的耗时,时间缩放比例,常用日期时间的获取和计算,测试一段程序的耗时。

     


    二、帧时间

    名称

    描述

    Time.time

    (只读)表示从游戏开发到现在的时间,会随着游戏的暂停而停止计算。

    Time.realtimeSinceStartup

    (只读)表示从游戏开发到现在的时间,不会随着游戏的暂停而停止计算。

    Time.timeSinceLevelLoad

    (只读)表示从当前Scene开始到目前为止的时间,也会随着暂停操作而停止。

     Time.fixedTime

    (只读)表示以秒为单位游戏开始的时间。时间间隔为fixedDeltaTime。来统计游戏总时长。
    Time.deltaTime (只读)表示从上一帧到当前帧时间,以秒为单位。即Updata中每帧的间隔时间。实际情况视机器性能而定。
    Time.fixedDeltaTime (读写)表示以秒计间隔,在物理和其他固定帧率进行更新,在Edit->ProjectSettings->Time的Fixed Timestep可以自行设置。即FixedUpdate中每帧的间隔时间。可以手动设置为固定值。
    Time.timeScale (读写)时间缩放,默认值为1。若设置<1,表示时间减慢;若设置>1,表示时间加快;若设置=0,则游戏暂停。可以用来加速、减速和暂停游戏,非常有用。总之timeScale和 Time.time息息相关。
    Time.frameCount (只读)总帧数

     

     

     

     

     

     

     

     

     

     

     

     

     

     


     三、日期时间

    日期等时间的类,是DateTime。包含 当前时间,年月日时分秒等。

    using System;

    DateTime dt;

    名称

    描述

    样例

    此刻时间:
    DateTime .Now (只读)获得当前时间。 类型:DateTime  DateTime dt = DateTime.Now;    dt: 9/19/2018 7:43:51 PM 
    年月日时分秒:
    dt.Year (只读)当前年份。 类型:int int year = dt.Year;    year:2018
    dt.Month (只读)当前月份。 类型:int 同上
    dt.Day (只读)当前日。 类型:int 同上
    dt.Hour (只读)当前小时。 类型:int 同上
    dt.Minute (只读)当前分钟。 类型:int 同上
    dt.Second (只读)当前秒。 类型:int 同上
    dt.Millisecond  (只读)当前毫秒。 类型:int 同上   1秒 = 1000 毫秒
    dt.Ticks (只读)当前tick。 类型:long 同上   1毫秒 = 10000 ticks
    格式转换:
    ToString()

    将时间数据 由DateTime类型

    转换为 string类型

    dt .ToString();       dt:"9/19/2018 7:43:51 PM"

    增加变量:

    AddYears(int value); 增加 年份 DateTime dt2 = dt.AddYears(1);  dt2: 9/19/2019 7:43:51 PM
    AddMonths(int months); 增加 月份 同上
    AddDays(double value); 增加 日 同上
    AddHours(double value); 增加 小时 同上
    AddMinutes(double value); 增加 分钟 同上
    AddSeconds(double value); 增加 秒 同上
       比较和运算:
    DateTime +(DateTime d, TimeSpan t);  时间 + 某一时间段  
    DateTime -(DateTime d, TimeSpan t);  时间 - 某一时间段  
    TimeSpan -(DateTime d1, DateTime d2);  时间  - 时间 两个时间点的差值
    ==、!=、>、<、>=、<= 两个时间的比较。 类型:bool  

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     


     四、程序运行时间段

     在程序运行前、运行后 分别打上时间戳,然后计算时间差 即某段程序 或者 函数 运行的耗时

    代码:[ 

    DateTime n1 = DateTime.Now;
    DOFun();
    DateTime n2 = DateTime.Now;
    
    TimeSpan sp = n2 - n1;
    long ticks =  sp.Ticks;

     ]

    1 毫秒 = 10000 ticks,足够满足时间精度了。

     

  • 相关阅读:
    print流
    java数据流
    java转换流
    爬虫(二):urllib库文件的基础和进阶(python2.7)
    爬虫实例(二):多线程,多进程对网页的爬取
    Java多线程分析 (二)---- 高并发内存模型和线程安全
    Java多线程分析 (五)---高并发线程池
    Java 多线程分析 (四) ---高并发基础知识)
    Java(生产者与消费者方法)
    Java 多线程分析 (三) --- synchronize 同步
  • 原文地址:https://www.cnblogs.com/01zxs/p/9637842.html
Copyright © 2011-2022 走看看