
遊戲引擎
遊戲通常在接收使用者輸入與轉譯產生的畫面之間有數個階段,如圖 1 所示。視遊戲而定,這可能從個位數毫秒到數百毫秒不等。 雖然遊戲引擎延遲在串流伺服器和 XBOX 主機之間並無不同,但當它與串流的其餘延遲結合時,使用者可能會更明顯地感受到其影響。最佳化遊戲引擎延遲和畫面播放速率,可以減少使用者在您遊戲中體驗到的延遲。伺服器
在圖 1 中,XBOX 串流伺服器的其餘時間用於準備要傳送到用戶端的畫面。這主要是在擷取階段 (從 GPU 擷取畫面) 和編碼階段 (縮放並壓縮畫面以針對網路頻寬進行最佳化) 期間。網路
XBOX 伺服器會將視訊傳送到串流用戶端,並從網際網路接收傳回的輸入。該網路連線的延遲會根據下列因素而變化。- 用戶端裝置與伺服器之間的實體距離。
- Microsoft 將伺服器部署到全球各地的 Azure 資料中心,以盡可能縮短距離。從自己的 XBOX 主機進行串流的使用者可能距離較遠。
- 使用者網際網路連線的速度。
- 使用者的網際網路連線類型和硬體。
- 例如,2.4 GHz 無線網路連線的延遲通常比 5 GHz 連線更高。某些網際網路服務提供者 (ISP) 也有會增加延遲的緩衝策略。
XGameStreamingGetStreamAddedLatency 會傳回延遲的標準差 (也稱為「抖動」)。
如需模擬串流網路延遲的詳細資訊,請參閱在測試遊戲時模擬延遲。
用戶端
當用戶端收到視訊畫面時,必須解碼該畫面,並透過其自身的圖形堆疊呈現。 用戶端的圖形硬體決定解碼需要多長時間。此外,大部分的用戶端都必須等待本機vSync 計時器才能呈現下一個畫面。在螢幕為 60 赫茲 (Hz) 的用戶端上,平均可能需要 8 毫秒。
如同在連接到電視的 XBOX 主機上遊玩的遊戲,串流用戶端使用的顯示器也有其自身的延遲。
顯示器延遲的範圍可能從只有數毫秒延遲的快速電競顯示器,到需要數百毫秒的低價行動裝置顯示器或沒有遊戲模式的電視。顯示器不一定會回報延遲,因此 XBOX Game Streaming API 不包含用戶端顯示器延遲。
控制器和其他輸入方法 (例如觸控) 也有延遲。控制器的 Bluetooth® 連線可能會增加明顯的延遲。與顯示器延遲一樣,用戶端無法測量輸入延遲,因此 XBOX Game Streaming API 不會呈現此延遲。
