遊戲 Lag 白皮書 › L2 用戶端 OS 與裝置
顯示器、輸入裝置與畫格生成的延遲 Display, input device and frame generation latency
原因 ID co-display-input · 主要負責 外部(外部) · 協同 遊戲開發團隊(用戶端開發)
在含圖解與實驗的完整版中開啟卡片 →
ping 正常、操作卻很沉重時,可能是電視的影像處理、無線控制器或畫格生成功能在輸入與畫面之間增加了延遲。
為什麼 電視的遊戲模式沒開、使用藍牙或無線控制器,或開啟了畫格生成(DLSS、FSR 畫格生成) → 於是 電視在進行畫質處理時會延後輸出畫格,無線輸入會因傳輸週期與干擾而晚到,畫格生成則要等下一個畫格才能做出中間的畫格 → 畫面上 ping 與 FPS 數字都很好,按下按鍵後卻要過一會兒才反映在畫面上,形成輸入延遲
- 症狀
- 輸入延遲
- 因素
- 延遲
- 誰會遇到
- 只有我
- 何時
- 一直都有
- 負責單位
- 主要負責 外部(外部) · 協同 遊戲開發團隊(用戶端開發)
- 遊戲開發團隊要做的事
- 把畫格生成設為可選選項,並說明開啟後輸入延遲可能增加;使用畫格生成時一併整合顯示卡廠商的低延遲功能(NVIDIA Reflex、AMD Anti-Lag 2);在遊戲中顯示電腦端從輸入到畫面的延遲;Android TV 與機上盒版本用 Window.setPreferMinimalPostProcessing(true) 要求電視進入低延遲模式(ALLM)。
- 外部要做的事
- 引導玩家開啟電視、螢幕的遊戲模式(ALLM),競技類內容改用有線控制器並關閉畫格生成,藍牙裝置放近一點,Wi-Fi 改用 5GHz。
- 數值參考
- 60Hz 畫面光是傳送一個畫格就要 16.7ms,120Hz 則要 8.3ms。舊款 Xbox 控制器每 8ms 讀取並傳送一次輸入。電視影像處理增加的延遲因機種而異,很難用一個數字說明,遊戲模式就是減少這些處理的設定。畫格生成方面,AMD 建議在生成前的畫格率達 60FPS 以上時使用。
- 圖表上
- 一開始就一直偏高 · 從輸入到畫面的延遲
- 查看位置
- 開啟、關閉畫格生成,比較 PresentMon 的 MsAllInputToPhotonLatency(從鍵盤、滑鼠輸入到送往螢幕為止),並用 FrameType(只在驅動程式或 SDK 回報時才會記錄)查看是否混有生成的中間畫格。這個值不包含控制器的無線區段與電視內部的處理,這部分要切換電視遊戲模式、有線控制器來比較
- 符合的跡象
- ping 正常,關閉畫格生成後從輸入到畫面的延遲減少,或改用電視遊戲模式、有線控制器後體感延遲消失
- 不符合的跡象
- 這些設定全部改過仍一樣,且 ping 偏高或飆高時,是網路端問題。電腦端延遲因垂直同步或畫格佇列而偏高時,是「垂直同步(V-Sync)與渲染佇列」
- 確認方式
- 在玩家端環境確認
- 深入了解
- 網路延遲可以從 ping 看出來,這種延遲卻不會反映在 ping 上。因此遇到「ping 很低卻很 lag」的回報時,要先確認這裡。畫格生成會讓畫面上的 FPS 數字提高到約兩倍,但要做出中間的畫格,就得等下一個真正的畫格,所以輸入反映到畫面所需的時間會變長(AMD 表示這在設計上就會增加延遲)。藍牙裝置與 Wi-Fi 使用同樣的 2.4GHz 頻段,受到干擾時輸入可能中斷或跳動。會加大電腦內部延遲的垂直同步與渲染佇列,請參考「垂直同步(V-Sync)與渲染佇列」項目。
出處
- Auto Low Latency Mode (ALLM) HDMI Licensing Administrator
ALLM 讓裝置自動把顯示器切換到低延遲模式(通常是遊戲模式);低延遲模式下,電視會停止部分影像處理以減少延遲 - Xbox Series X: What’s the Deal with Latency? Microsoft
輸入延遲是控制器 → 主機 → HDMI → 電視這整條路徑的總和;舊款控制器每 8ms 讀取並傳送一次輸入;透過 HDMI 傳送一個畫格的時間在 60Hz 為 16.6ms、120Hz 為 8.3ms;透過 ALLM 自動切換電視遊戲模式 - AMD FSR 3 game integrations out now + more details for developers AMD
畫格內插在設計上會增加延遲;建議在內插前畫格率 60 以上時使用;60FPS 輸入最高可輸出 120FPS - AMD FSR Frame Generation AMD
畫格生成建議內插前達 60FPS 以上(應避免低於 30FPS);AMD Radeon Anti-Lag 2 會協調 CPU 與 GPU 的工作,降低系統延遲 - NVIDIA DLSS NVIDIA
DLSS 畫格生成的設計是搭配 NVIDIA Reflex(低延遲功能)維持反應速度 - Resolve Wi-Fi and Bluetooth issues caused by wireless interference Apple
無線干擾會造成 Wi-Fi 與藍牙裝置斷斷續續、效能下降,而藍牙與 Wi-Fi 使用同樣的 2.4GHz 頻段 - PresentMon Capture Application (README-CaptureApplication.md) Intel
MsAllInputToPhotonLatency(從輸入到畫面的延遲)、DisplayLatency(從提交畫格到送往螢幕)、FrameType(區分 App 繪製的畫格與驅動程式或 SDK 內插的畫格) - PresentMon Console Application (README-ConsoleApplication.md) Intel
MsAllInputToPhotonLatency 以鍵盤、滑鼠輸入為準;FrameType 要由 App 或驅動程式送出 Intel-PresentMon 事件才會記錄(--track_frame_type) - Window.setPreferMinimalPostProcessing Android (Google)
遊戲這類延遲很重要的視窗會要求顯示器進行最少的影像處理;以 HDMI 連接時會送出 ALLM、Game Content Type 訊號,把電視切換到低延遲模式
相關原因
同一層:L2 用戶端 OS 與裝置
同一症狀(輸入延遲)在其他層的原因
查看含圖解與實驗的完整版卡片