Fusion Unreal Intro

概述

Photon Fusion Unreal 是一個基於狀態複製的高性能網路編碼 SDK。它基於分散式授權架構,與傳統的 Unreal 內建網路編碼用戶端 - 伺服器模型相比,兼具成本效益和較低的操作複雜性。

與此同時,它採用「引擎優先」的方法,大多數(如果不是全部)主機引擎功能應該都能直接使用。

用戶端 - 伺服器架構的替代方案

Unreal 引擎包含內建的用戶端 - 伺服器複製功能,可覆蓋許多重要的使用場景。然而,維護專用伺服器會帶來更高的成本和複雜的協調工作,而讓遊戲用戶端 / 玩家作為主機,由於品質不一致,也不是一個可行的解決方案。

Fusion Unreal 專門採用共享拓撲,其中用戶端對其生成的角色擁有授權,並且透過我們具成本效益且經過實戰考驗的 Photon Cloud 作為遊戲狀態分發、興趣管理和其他功能的中央樞紐。

以下是 Fusion 共享授權模型與 Unreal 內建用戶端 - 伺服器網路編碼的對比表。Fusion 在合作遊戲、VR 和行動端表現特別出色,在這些領域中,執行成本和可擴展性是重要因素。

Comparison table between Fusion Shared and Unreal´s built-in client server approaches
Comparison table between Fusion Shared and Unreal´s built-in client server approaches

Unreal 優先方法

Fusion Unreal 作為 Unreal 外掛程式運行,無需編譯引擎的分支或進行其他複雜操作。只需將外掛程式納入您的專案,即可開始開發。

它還尊重現有的 Unreal 網路編碼語義,因此將 UProperties 設定為 Replicate/RepNotify 會自動使它們也被 Fusion 複製,並達到預期效果。

也無需繼承任何特殊類型,可以在 C++ 中或直接透過 Blueprints 定義角色、元件和屬性。編寫遊戲邏輯也是如此,也可以直接從現有的 UE Tick()(包括 C++ 和藍圖)進行。

遠端程序呼叫(RPC)與內建的非常相似,但由於需要指定目標的特殊共享授權語義,Fusion 為這些呼叫定義了自訂的 Blueprint 節點。

透過閱讀快速入門指南可以了解更多詳細資訊。

預測:分散式物理預測

Fusion Unreal 包含我們最先進的分散式物理預測模組,名為 Forecast。它直接與 Unreal 的 Chaos Physics 整合,當複製的角色使用物理時會自動啟用。以下是快速入門指南中的一個範例,展示了兩個角色與一個基於物理的球體無縫互動:

Players interacting with the physics based object
Players interacting with the physics based object

它也可以完全禁用,或進行調整以更好地適應特定需求,但預設設定非常適用於互動物件和車輛等。

伺服器端邏輯(引擎程式碼之外)

儘管 Fusion 在某種意義上是「無伺服器」的,因為它不需要 Unreal Engine 實例作為伺服器,但它也不是點對點系統。遊戲會話實例透過 Photon Cloud 基礎架構託管,其遊戲狀態由我們的伺服器管理。

這不僅立即支援與遊戲無關的興趣區域和物件優先級設定,還允許在必要時未來添加輕量級伺服器程式碼。

使這成為可能的關鍵 Fusion 功能是類型佈局和數據都會上傳到 Photon Cloud。這允許將一些關鍵程式碼路徑卸載到 Photon 伺服器上高效運行(透過企業託管),例如:延遲補償、視線檢查、角色移動速度驗證、對特定網路角色或元件的自訂更改等。

如果您有興趣在該功能完全推出後進行評估,請與我們聯繫。

接下來去哪裡

要開始使用 Photon Fusion Unreal,我們強烈建議從快速入門指南開始,它會教您所有必要的基礎知識,以啟動您的第一個專案。

Back to top