網路模擬器 是一個 Studio 測試工具,能夠在遊戲測試客戶端和伺服器之間的連接中添加延遲、抖動和封包丟失。使用它來重現玩家在有線、Wi-Fi 和行動連接中遇到的條件,而無需配置外部的網路限速工具。
在受限條件下進行測試可以揭示在快速開發連接上看似響應迅速的互動,但對某些玩家來說卻變得延遲、混淆或不可靠。使用網路模擬器來評估伺服器確認的操作、複製的狀態、串流行為、預測和修正,以及您的體驗如何容忍偶爾的封包丟失。
網路模擬器僅影響 Studio 測試。它不會改變您已發布的體驗或現場玩家的連接。

網路模擬器的工作原理
模擬器在每個方向上獨立應用條件:
- 入站 流量從伺服器傳送到客戶端。它包括複製的伺服器狀態和伺服器到客戶端的遠端通信。
- 出站 流量從客戶端傳送到伺服器。它包括客戶端請求和客戶端到伺服器的遠端通信。

每個方向都有以下控制項:
| 控制項 | 模擬內容 | 觀察內容 |
|---|---|---|
| 延遲 | 每個封包添加的最小單向延遲。 | 伺服器確認緩慢、狀態更新延遲,以及在等待時看起來卡住的 UI。 |
| 抖動 | 在最小延遲上添加的變化。 | 不均勻的更新時間、可見的修正、動畫或運動不穩定,以及排序假設。 |
| 封包丟失 | 單個封包被丟棄的概率。 | 可靠流量的重傳延遲和設計為容忍丟失的流量的缺失更新。 |
網路延遲是往返測量,因此添加的入站和出站延遲都會有所貢獻。例如,10 毫秒的入站延遲和 10 毫秒的出站延遲大約會使連接的現有往返時間增加 20 毫秒。
配置的值會添加到連接的實際條件中。這在 團隊測試 中尤其重要,因為地理位置和公共互聯網已經會導致延遲和封包丟失。
開啟網路模擬器
要開啟此工具:
- 從 測試 菜單中啟用 設備模擬器。
- 在 3D 視口上方的工具列中,選擇 網路 標籤。
該標籤總結了階段或應用的連接類型和質量。打開它以查看確切的預設和所有六個方向值。
應用預設
內建的預設提供了常見連接類型的可重複起始點。以下表格中的值以 延遲 / 抖動 / 封包丟失 列出。
| 預設 | 標籤 | 入站 | 出站 |
|---|---|---|---|
| 理想光纖 | 局域網 | 8 毫秒 / 0 毫秒 / 0.00% | 8 毫秒 / 0 毫秒 / 0.00% |
| 有線寬頻 | 局域網 | 25 毫秒 / 3 毫秒 / 0.00% | 25 毫秒 / 3 毫秒 / 0.00% |
| 家庭 Wi-Fi | Wifi | 30 毫秒 / 12 毫秒 / 0.20% | 30 毫秒 / 15 毫秒 / 0.30% |
| 標準行動網路 (4G/LTE) | 4G | 45 毫秒 / 20 毫秒 / 0.40% | 55 毫秒 / 30 毫秒 / 0.50% |
| 糟糕的連接 (3G) | 3G | 150 毫秒 / 70 毫秒 / 0.50% | 180 毫秒 / 90 毫秒 / 0.50% |
這些預設代表有用的測試條件,而不是對每種連接類型的保證。實際網路因設備、位置、提供者、擁擠程度和時間而異。
要應用預設:
- 從 預設 中選擇一個預設。
- 檢查預覽的 入站 和 出站 值。標籤也會更新以預覽所選內容。
- 選擇 應用。
- 開始或繼續一個 遊戲測試,並進行客戶端-伺服器互動。
選擇預設僅會階段其值。活動的遊戲測試連接在您選擇 應用 之前不會改變。如果您先關閉彈出窗口,網路模擬器將丟棄階段更改,並將其控制項和標籤返回到應用狀態。
在您選擇 應用 之後,活動的遊戲測試會立即使用新值。您無需重新啟動會話。
配置自定義條件
展開 入站 或 出站 以更改一個方向而不改變另一個方向。這對於將客戶端到伺服器請求路徑中的問題與伺服器到客戶端響應路徑中的問題分開非常有用。
| 控制項 | 範圍 | 顯示精度 |
|---|---|---|
| 延遲 | 0–1000 毫秒 | 0.1 毫秒 |
| 抖動 | 0–1000 毫秒 | 0.1 毫秒 |
| 封包丟失 | 0.00–0.50% | 0.01% |
封包丟失以百分比顯示。值為 0.50% 意味著百分之一,而不是 50%。
編輯任何數值會將 預設 更改為 自定義。編輯保持階段狀態,直到您選擇 應用。
網路模擬器使用與 Studio 設定 的 網路 標籤相同的底層模擬設置。如果在模擬器有階段編輯的情況下,其他地方的這些設置發生變化,則外部值將優先,並且階段交易將被丟棄。
保存自定義預設
要重用自定義配置:
- 編輯一個或多個值。
- 選擇 保存。
- 輸入唯一的預設名稱。
- 選擇 保存並應用。

保存的預設在不同的地方和後續的 Studio 會話中可用於 預設 菜單。如果您輸入現有保存預設的名稱,該操作將更改為 替換並應用。內建預設名稱和 自定義 是保留的。
當選擇保存的預設時,刪除 將替換 重置。刪除它會移除保存的預設並立即應用 理想光纖。應用的網路值在完整的 Studio 重新啟動後不會被保留。
使用腳本配置網路設置
每個網路模擬器控制項對應於 NetworkSettings 屬性,因此您可以從插件或自動化測試驅動相同的條件,而不是從工具列。
| 控制項 | 屬性 | 描述 |
|---|---|---|
| 入站延遲 | InboundNetworkMinDelayMs | 在伺服器到客戶端的方向上為遊戲測試連接添加延遲。 |
| 出站延遲 | OutboundNetworkMinDelayMs | 在客戶端到伺服器的方向上為遊戲測試連接添加延遲。 |
| 入站抖動 | InboundNetworkJitterMs | 在伺服器到客戶端的方向上為遊戲測試連接添加抖動。 |
| 出站抖動 | OutboundNetworkJitterMs | 在客戶端到伺服器的方向上為遊戲測試連接添加抖動。 |
| 入站封包丟失 | InboundNetworkLossPercent | 設置從伺服器到客戶端的遊戲測試連接中封包被丟棄的概率。 |
| 出站封包丟失 | OutboundNetworkLossPercent | 設置從客戶端到伺服器的遊戲測試連接中封包被丟棄的概率。 |
直接設置這些屬性中的任何一個會保持網路模擬器的工具列和標籤同步,因為兩者都從相同的底層設置中讀取。
測試網路敏感的工作流程
在多種條件下使用相同的可重複互動,以便差異可歸因於網路,而不是不同的代碼路徑或場景。
- 選擇一個跨越客戶端-伺服器邊界的玩家旅程,例如啟用伺服器授權的能力、接收庫存更新或觀察複製的移動。
- 定義成功的標準。記錄響應時間、可見反饋、超時行為、修正、重複請求和恢復。
- 應用 理想光纖 並運行該旅程作為基準。
- 應用代表性條件,例如 家庭 Wi-Fi 或 標準行動網路 (4G/LTE),並重複相同的操作。
- 應用 糟糕的連接 (3G) 作為韌性測試。確認即使更新延遲或不均勻,體驗仍然可理解。
- 僅更改入站或出站值,以隔離哪個方向暴露了問題。
- 在修復後,重複相同的運行並比較結果。
有用的問題包括:
- 玩家在等待伺服器確認時是否會收到立即的本地反饋?
- 重複輸入是否能夠提交相同的操作多次?
- 加載和進度狀態是否區分緩慢工作與失敗?
- 超時是否提供安全的重試路徑?
- 當更新不均勻到達時,複製的移動是否仍然可理解?
- 不可靠的更新是否可以跳過而不在螢幕上留下過時的狀態?
- 體驗在恢復到更好的連接後是否能夠恢復?
對於大型比較,在開始互動之前應用條件。在運行測試期間進行大幅延遲變化可能會影響擁擠控制,因此全新的運行提供了更乾淨的比較。
測量和診斷結果
網路模擬器改變測試條件;其他工具有助於解釋結果:
- 開發者控制台 顯示平均延遲和日誌,可以確認連接已更改並揭示重試或超時代碼中的錯誤。
- MicroProfiler 網路捕獲 顯示每幀發送和接收的引擎流量。使用它來識別流量高峰並確定受影響的流量是否主要由複製、物理或其他網路數據主導。
- MicroProfiler 可以幫助區分網路敏感的延遲與同時幀時間問題。
在比較捕獲時,保持場景、遊戲測試模式和觀察方法一致。在不良連接下的單次運行可能會揭示症狀,但重複的基準和受損運行對於測量變更是否有幫助更為有用。