Unity C# | Time & time & deltaTime

更新於 發佈於 閱讀時間約 2 分鐘

前言

  這篇文章將會講述時間系統,以及 time 和 deltaTime 兩個時間類型。

Time | 時間系統

  時間在遊戲中是舉足輕重的核心變數,分別為遊戲完整的時間和每幀時間。

time | 時間

  這是一個唯獨浮點數,自遊戲啟動以來的秒數,在 Awake() 期間並不會被定義,如果遊戲暫停,這個時間並不會繼續計時,通常用於遊戲中關於整場遊戲計時的計算。
  它在遊戲暫停的時候,也會隨之暫停,所以很適合用於競速類遊戲的倒數計時計算,如果希望記錄遊戲完整時間(包含暫停),在後面我們最講到這部分。

deltaTime | 每幀時間

  這是一個唯獨浮點數,值為上一幀到當前幀的間隔(以秒為單位),因此它會記錄每幀所花費的秒數,使用 Time.time
運用它的特性,我們可以用來製作計時器和倒數裝置,也能很好的紀錄某些技能的時間變化,是相當常用的一個變數。
  在使用 OnGUI 的時候不要使用 deltaTime,因為 Unity 可能每幀會多次呼叫它,因此要做 deltaTime 的累加會變得不準確。

Time.time | 時間

  這是一個唯獨浮點數,可以記錄時間,並檢查時間是否超過某個時間,運用這個方式,能製作出「當遊戲經過幾分鐘,觸發事件。」這種事情。

遊戲遊玩時間

  遊戲在遊玩的過程中,Time 會持續累加,因此只要監測這個值的變化就可以了,也可以直接運用這個值去做數值運算,不過因為是唯獨的關係並不能直接修改這個值。

遊戲實際時間

  如果希望取得包含暫停時間在內的所有遊戲實際時間,可以考慮使用另外一個變數「realtimeSinceStartup」,它會記錄遊戲從開始後的所有時間,很適合記錄遊戲實際時間。

Time.deltaTime | 每幀時間

  每一幀的時間,可以用於累加,產生不同的效果。

每幀時間

  當電腦的效能不同,時間的累加就會產生不同的數值,因此去算每幀時間的累加會比時間的監測更好用,同時,每幀時間也能製作出程式動畫的效果,因為它是每幀的秒數,所以可以寫每秒動幾公尺的做法下去寫。

計時器

  關於計時器,我之前有寫一篇文章很適合,詳情可以參考。

後記

  寫這篇文章意外的花不了多久的時間,可能是因為 deltaTime 本身就是相當常用的一個變數,所以只需要補齊相關的程式內容即可。

瓶裝雪

參考資料

《Unity API | Time.time》

《Unity API | Time.realtimeSinceStartup》

《Unity API | Time.deltaTime》

為什麼會看到廣告
avatar-img
106會員
247內容數
對設計師如何成長為設計師好奇嗎? 2020年九月,我進入大學學習當一位設計師,從開始到沉寂,再到重燃熱忱,我將在方格子紀錄我的成長歷程、理念、心情,分享我在這段旅程中所經歷的故事。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
瓶裝雪的沙龍 的其他內容
這篇文章將會講述企劃撰寫給程式員的邏輯流程圖。
這篇文章將會講述 Unity Event 的介紹及基礎使用方法。
這篇文章將會介紹企劃使用的文件格式與其特性。
這篇文章將會講述圓形波的設計思路、製作流程和應用方向。
這篇文章將會講述光元件的類型。
這篇文章將會講述彈簧物件的物件介紹、製作流程、展示影片。
這篇文章將會講述企劃撰寫給程式員的邏輯流程圖。
這篇文章將會講述 Unity Event 的介紹及基礎使用方法。
這篇文章將會介紹企劃使用的文件格式與其特性。
這篇文章將會講述圓形波的設計思路、製作流程和應用方向。
這篇文章將會講述光元件的類型。
這篇文章將會講述彈簧物件的物件介紹、製作流程、展示影片。
你可能也想看
Google News 追蹤
Thumbnail
現代社會跟以前不同了,人人都有一支手機,只要打開就可以獲得各種資訊。過去想要辦卡或是開戶就要跑一趟銀行,然而如今科技快速發展之下,金融App無聲無息地進到你生活中。但同樣的,每一家銀行都有自己的App時,我們又該如何選擇呢?(本文係由國泰世華銀行邀約) 今天我會用不同角度帶大家看這款國泰世華CUB
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
這次主角,《Twelve Minutes》(2021)是一隻頗具創意的獨立作品。 Twelve Minutes的每「局」遊戲僅需5-10分鐘,玩家扮演的男主角被困在時間循環中,在遊戲過程中不斷重複這短短的十分鐘。
Thumbnail
這篇內容,將會講解什麼是腳本函式,以及與腳本函式相關的知識。包括腳本的簡介、使用函式(或全域變數)的注意事項、定義全域變數、定義函式、什麼是宣告、局部變數的應用。
Thumbnail
「時間重置」這段文字可以理解為某種情境或狀態的重新開始。以下是幾個可能的解釋: 概念:在許多科幻作品中,「時間重置」指的是一種能夠回到過去或重新開始某個時間點的能力,通常涉及時間旅行或平行宇宙的概念。 心理學意義:在心理學科幻上,「時間重置」可能指的是一種心態上的重啟,讓個體擺脫過去的負擔,重新
Thumbnail
經由定義生命間距而因此產生的時間,發現刻度可以是分秒、事件、現象、領悟或境界,再透過極致活在當下的體驗,在腦海裡描繪各種可能的現在、再套用在過去與未來,而讓這一刻的瞬間成為永恆,而產生奇異點。 善用並保護好心地,保持大腦高速運轉的人生。
Thumbnail
沙漏的一端是累積,另一端是流逝,時間在沙漏中同時累積,也同時流逝。 時間被定義成分秒,生命也在分秒中流逝,我們似乎又在分秒中累積甚麼,是我們的思考、產出,又或是一丁一點的轉變?
Thumbnail
完成了Debug.log()的測試,接著還是要跟各位簡單講一下C#的一些規則,之後看程式會(比較)看得懂。 又講到變數? 在Unity中,變數是重要的工具,用來儲存和管理資料。讓開發者能夠靈活調整遊戲的行為和性能,減少代碼的重複性,使得遊戲開發更加高效和簡潔。透過使用變數,開發者可以輕鬆修改資料
Thumbnail
可能包含敏感內容
時間是一種假設、一種建立在人類共同認知上的基本概念。你的情緒刻劃時間的長度,因此時鐘時間是你情感強度稀釋或濃縮了的世界時間,你和同類的時間變化是無法相同的但遵守相同的協議。你自己在不同情緒下的「時間」感受也有巨大的差異,這不是幻覺或自我催眠,實則是你有個很好的理由這麼做。
Thumbnail
程式與頻率時間 看起來這個問題有些奇怪,程式與頻率時間有什麼關係呢?一旦程式完成,似乎就不需要再理會頻率和時間了。實際上,這可能是一些不熟悉程式設計的人所提出的疑問。了解程式設計最重要的一點是,頻率和時間的安排會直接影響程式的效能和展現速度。 時間的利用 舉例來說,假設一個表單的每筆處理時間為
Thumbnail
時間與意識的關係,人們常誤解時間是線性的,但其實它並非如此。這篇文章探討時間、意識與宇宙的本質,提出人們的理解方式是如何受到頭腦的限制,指出宇宙的本質是現在的,開始與結束都在當下的這個瞬間生滅。最後呼籲人們要意識到自己的存在也是一場遊戲,每個人所體驗的痛苦與快樂都是一種指引。
Thumbnail
現代社會跟以前不同了,人人都有一支手機,只要打開就可以獲得各種資訊。過去想要辦卡或是開戶就要跑一趟銀行,然而如今科技快速發展之下,金融App無聲無息地進到你生活中。但同樣的,每一家銀行都有自己的App時,我們又該如何選擇呢?(本文係由國泰世華銀行邀約) 今天我會用不同角度帶大家看這款國泰世華CUB
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
這次主角,《Twelve Minutes》(2021)是一隻頗具創意的獨立作品。 Twelve Minutes的每「局」遊戲僅需5-10分鐘,玩家扮演的男主角被困在時間循環中,在遊戲過程中不斷重複這短短的十分鐘。
Thumbnail
這篇內容,將會講解什麼是腳本函式,以及與腳本函式相關的知識。包括腳本的簡介、使用函式(或全域變數)的注意事項、定義全域變數、定義函式、什麼是宣告、局部變數的應用。
Thumbnail
「時間重置」這段文字可以理解為某種情境或狀態的重新開始。以下是幾個可能的解釋: 概念:在許多科幻作品中,「時間重置」指的是一種能夠回到過去或重新開始某個時間點的能力,通常涉及時間旅行或平行宇宙的概念。 心理學意義:在心理學科幻上,「時間重置」可能指的是一種心態上的重啟,讓個體擺脫過去的負擔,重新
Thumbnail
經由定義生命間距而因此產生的時間,發現刻度可以是分秒、事件、現象、領悟或境界,再透過極致活在當下的體驗,在腦海裡描繪各種可能的現在、再套用在過去與未來,而讓這一刻的瞬間成為永恆,而產生奇異點。 善用並保護好心地,保持大腦高速運轉的人生。
Thumbnail
沙漏的一端是累積,另一端是流逝,時間在沙漏中同時累積,也同時流逝。 時間被定義成分秒,生命也在分秒中流逝,我們似乎又在分秒中累積甚麼,是我們的思考、產出,又或是一丁一點的轉變?
Thumbnail
完成了Debug.log()的測試,接著還是要跟各位簡單講一下C#的一些規則,之後看程式會(比較)看得懂。 又講到變數? 在Unity中,變數是重要的工具,用來儲存和管理資料。讓開發者能夠靈活調整遊戲的行為和性能,減少代碼的重複性,使得遊戲開發更加高效和簡潔。透過使用變數,開發者可以輕鬆修改資料
Thumbnail
可能包含敏感內容
時間是一種假設、一種建立在人類共同認知上的基本概念。你的情緒刻劃時間的長度,因此時鐘時間是你情感強度稀釋或濃縮了的世界時間,你和同類的時間變化是無法相同的但遵守相同的協議。你自己在不同情緒下的「時間」感受也有巨大的差異,這不是幻覺或自我催眠,實則是你有個很好的理由這麼做。
Thumbnail
程式與頻率時間 看起來這個問題有些奇怪,程式與頻率時間有什麼關係呢?一旦程式完成,似乎就不需要再理會頻率和時間了。實際上,這可能是一些不熟悉程式設計的人所提出的疑問。了解程式設計最重要的一點是,頻率和時間的安排會直接影響程式的效能和展現速度。 時間的利用 舉例來說,假設一個表單的每筆處理時間為
Thumbnail
時間與意識的關係,人們常誤解時間是線性的,但其實它並非如此。這篇文章探討時間、意識與宇宙的本質,提出人們的理解方式是如何受到頭腦的限制,指出宇宙的本質是現在的,開始與結束都在當下的這個瞬間生滅。最後呼籲人們要意識到自己的存在也是一場遊戲,每個人所體驗的痛苦與快樂都是一種指引。