Unity基礎(chǔ)-Time模塊

1.UnityEngine.Time模塊

減慢游戲播放時間,以便在幀之間保存屏幕截圖
Time.captureFramerate
上一幀渲染幀完成所用的時間秒
Time.deltaTime
上一幀固定幀完成所用的時間秒
Time.fixedDeltaTime
自游戲開始計時到最近的一次FixedUpdate時間,以秒記。
Time.fixedTime
已經(jīng)執(zhí)行的幀率的總數(shù)
Time.frameCount
在物理幀和其他幀更新中,一幀能獲取的最大時間
Time.maximumDeltaTime
一個平滑淡出的Time.deltaTime
Time.smoothDeltaTime
從游戲開始到現(xiàn)在所消耗的時間
Time.time
時間的消耗速率,可以減慢運動效果。
Time.timeScale
從上次加載管卡完成到現(xiàn)在所用的時間
Time.timeSinceLevelLoad
不受timeScale系數(shù)影響的Time.deltaTime
Time.unscaledDeltaTime
不受timeScale系數(shù)影響的Time.time
Time.unscaledTime

2.System.DateTime模塊

名稱 說明
Date 獲取此實例的日期部分。
Day 獲取此實例所表示的日期為該月中的第幾天。
DayOfWeek 獲取此實例所表示的日期是星期幾。
DayOfYear 獲取此實例所表示的日期是該年中的第幾天。
Hour 獲取此實例所表示日期的小時部分。
Kind 獲取一個值,該值指示由此實例表示的時間是基于本地時間、協(xié)調(diào)世界時 (UTC),還是兩者皆否。
Millisecond 獲取此實例所表示日期的毫秒部分。
Minute 獲取此實例所表示日期的分鐘部分。
Month 獲取此實例所表示日期的月份部分。
Now 獲取一個 DateTime 對象,該對象設(shè)置為此計算機上的當(dāng)前日期和時間,表示為本地時間。
Second 獲取此實例所表示日期的秒部分。
Ticks 獲取表示此實例的日期和時間的計時周期數(shù)。
TimeOfDay 獲取此實例的當(dāng)天的時間。
Today 獲取當(dāng)前日期。
UtcNow 獲取一個 DateTime 對象,該對象設(shè)置為此計算機上的當(dāng)前日期和時間,表示為協(xié)調(diào)通用時間 (UTC)。
Year 獲取此實例所表示日期的年份部分。

Example

//今天
DateTime.Now.Date.ToShortDateString();
//昨天,就是今天的日期減一
DateTime.Now.AddDays(-1).ToShortDateString();
//明天,同理,加一
DateTime.Now.AddDays(1).ToShortDateString();

//本周(要知道本周的第一天就得先知道今天是星期幾,從而得知本周的第一天就是幾天前的那一天,
        //要注意的是這里的每一周是從周日始至周六止
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
//如果你還不明白,再看一下中文顯示星期幾的方法就應(yīng)該懂了
//由于DayOfWeek返回的是數(shù)字的星期幾,我們要把它轉(zhuǎn)換成漢字方便我們閱讀,
        //有些人可能會用switch來一個一個地對照,其實不用那么麻煩的 
string[] Day = [new]string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
Day[Convert.ToInt16(DateTime.Now.DayOfWeek)];

//上周,同理,一個周是7天,上周就是本周再減去7天,下周也是一樣
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
//下周
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
//本月,很多人都會說本月的第一天嘛肯定是1號,最后一天就是下個月一號再減一天。當(dāng)然這是對的
//一般的寫法
DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"; //第一天
DateTime.Parse(DateTime.Now.Year.ToString() + 
        DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最后一天

DateTime.Now.ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();

//上個月,減去一個月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//下個月,加去一個月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();
//7天后
DateTime.Now.Date.ToShortDateString();
DateTime.Now.AddDays(7).ToShortDateString();
//7天前
DateTime.Now.AddDays(-7).ToShortDateString();
DateTime.Now.Date.ToShortDateString();

//本年度,用ToString的字符格式化我們也很容易地算出本年度的第一天和最后一天
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();
//上年度,不用再解釋了吧
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();
//下年度
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();

//本季度,很多人都會覺得這里難點,需要寫個長長的過程來判斷。其實不用的,我們都知道一年四個季度,一個季度三個月
//首先我們先把日期推到本季度第一個月,然后這個月的第一天就是本季度的第一天了
DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
//同理,本季度的最后一天就是下季度的第一天減一
DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).
        ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).
        ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//上季度
DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).
        ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容