Fusion Unreal Intro
概述
Photon Fusion Unreal 是一個基於狀態複製的高性能網路編碼 SDK。它基於分散式授權架構,與傳統的 Unreal 內建網路編碼用戶端 - 伺服器模型相比,兼具成本效益和較低的操作複雜性。
與此同時,它採用「引擎優先」的方法,大多數(如果不是全部)主機引擎功能應該都能直接使用。
用戶端 - 伺服器架構的替代方案
Unreal 引擎包含內建的用戶端 - 伺服器複製功能,可覆蓋許多重要的使用場景。然而,維護專用伺服器會帶來更高的成本和複雜的協調工作,而讓遊戲用戶端 / 玩家作為主機,由於品質不一致,也不是一個可行的解決方案。
Fusion Unreal 專門採用共享拓撲,其中用戶端對其生成的角色擁有授權,並且透過我們具成本效益且經過實戰考驗的 Photon Cloud 作為遊戲狀態分發、興趣管理和其他功能的中央樞紐。
以下是 Fusion 共享授權模型與 Unreal 內建用戶端 - 伺服器網路編碼的對比表。Fusion 在合作遊戲、VR 和行動端表現特別出色,在這些領域中,執行成本和可擴展性是重要因素。
Unreal 優先方法
Fusion Unreal 作為 Unreal 外掛程式運行,無需編譯引擎的分支或進行其他複雜操作。只需將外掛程式納入您的專案,即可開始開發。
它還尊重現有的 Unreal 網路編碼語義,因此將 UProperties 設定為 Replicate/RepNotify 會自動使它們也被 Fusion 複製,並達到預期效果。
也無需繼承任何特殊類型,可以在 C++ 中或直接透過 Blueprints 定義角色、元件和屬性。編寫遊戲邏輯也是如此,也可以直接從現有的 UE Tick()(包括 C++ 和藍圖)進行。
遠端程序呼叫(RPC)與內建的非常相似,但由於需要指定目標的特殊共享授權語義,Fusion 為這些呼叫定義了自訂的 Blueprint 節點。
透過閱讀快速入門指南可以了解更多詳細資訊。
預測:分散式物理預測
Fusion Unreal 包含我們最先進的分散式物理預測模組,名為 Forecast。它直接與 Unreal 的 Chaos Physics 整合,當複製的角色使用物理時會自動啟用。以下是快速入門指南中的一個範例,展示了兩個角色與一個基於物理的球體無縫互動:
它也可以完全禁用,或進行調整以更好地適應特定需求,但預設設定非常適用於互動物件和車輛等。
伺服器端邏輯(引擎程式碼之外)
儘管 Fusion 在某種意義上是「無伺服器」的,因為它不需要 Unreal Engine 實例作為伺服器,但它也不是點對點系統。遊戲會話實例透過 Photon Cloud 基礎架構託管,其遊戲狀態由我們的伺服器管理。
這不僅立即支援與遊戲無關的興趣區域和物件優先級設定,還允許在必要時未來添加輕量級伺服器程式碼。
使這成為可能的關鍵 Fusion 功能是類型佈局和數據都會上傳到 Photon Cloud。這允許將一些關鍵程式碼路徑卸載到 Photon 伺服器上高效運行(透過企業託管),例如:延遲補償、視線檢查、角色移動速度驗證、對特定網路角色或元件的自訂更改等。
如果您有興趣在該功能完全推出後進行評估,請與我們聯繫。
接下來去哪裡
要開始使用 Photon Fusion Unreal,我們強烈建議從快速入門指南開始,它會教您所有必要的基礎知識,以啟動您的第一個專案。
Back to top