以 Azure 擴增遊戲體驗,展現部署彈性

延遲度是遊戲的大敵,當愈來愈多遊戲移往公有雲營運,這個議題更是首當其衝。Azure 在全球擁有多達 54 個資料中心據點,數量之多領先其他公有雲業者,這個先天條件不僅有助於優化玩家的遊戲體驗,也能提升業者的部署彈性。

Xbox 的虛實整合

為了持續拓展前所未見的遊戲體驗,微軟的 Project xCloud 團隊著手發展在 Xbox 串流遊戲的系列工具與 API,例如:觸控轉接套件、Cloud Aware API。除了增進遊戲效能,更重要的是與 Azure 的結合,也就是發展具雲端意識(Cloud Aware)的遊戲,讓遊戲程式得以偵測串流狀態,並針對串流裝置調整合適的字型大小與使用者介面。

值得一提的是,微軟的策略是不影響遊戲開發時所使用的開發工具或腳本,而是從開發者套件開啟新模式,將開發者環境設定對原有環境的影響降至最低。簡言之,遊戲業者的平台以串流伺服器的角色運作,修改範圍只限定在讓遊戲偵測串流狀態即可。

以觸控轉接套件為例,玩家無需使用實際的 Xbox 遊戲手把,而是在觸控螢幕呈現控制介面,控制指令轉為 XInput 的形式輸入遊戲程式,如此一來,就能在免除修改遊戲輸入或介面層的前提下,制訂遊戲的觸控介面。

至於 Cloud Aware API,重點功能之一就是查詢遊戲程式執行在哪個地點的 Azure 資料中心,除了藉此來配對位置相近的玩家,讓玩家之間的通訊幾乎沒有延遲,也能支援將遊戲伺服器集中在同一個資料中心的部署模式。

借鏡「魔法風雲會」

威世智(Wizards of the Coast)的知名作品「魔法風雲會(Magic: The Gathering)」就是百分之百架構於 Azure,使用元件包括虛擬機器、Service Fabric、Event Hub、Cosmos DB、ARM 模組及監控程式。

舉例來說,威世智遊戲架構裡有 25 個不同服務,Service Fabric 可根據服務佔用處理器、記憶體等運算資源的即時狀態進行搬移,確保機器使用率的最大化,避免因為特定服務對個別運算資源的高消耗率而額外購買虛擬機器。由於服務互動相關的後端操作因為 Service Fabric 而大幅簡化,遊戲工程團隊就無需分神管理 DNS、資料流路由協定等基本設定。

威世智將 Cosmos DB 則用於狀態資料儲存,即使每秒要處理超過 2 千次來自世界各地的存取要求,仍能確保遊戲的順暢體驗。最重要的是,威世智的 Cosmos DB 位於加密端點,遊戲服務的私有網路是由後端內網來通訊,資料不會傳送到開放區域,再加上資料庫本身的安全等級保證,免除以額外人力及軟硬體補強資安的鉅額投資。

對遊戲公司而言,運用公有雲架設遊戲必須考量更多因素,包括傳輸量、資料儲存狀態、可擴充性、維運控管,高可用性和故障自動切換機制,以及關鍵的成本費用。Azure 以化繁為簡的配套機制協助遊戲業者化繁為簡,善用及發揮雲端的效益。