UE5/UE4 サーバー(Authority)かクライアント(Remote)マシンなのかを判別して処理をする(Switch Has Authority)
サーバー(Authority)かクライアント(Remote)マシンなのかを判別して処理をする方法です。
公式ドキュメントはこちら。
・ブループリントでアクタをレプリケートする
https://docs.unrealengine.com/4.27/ja/InteractiveExperiences/Networking/Actors/ReplicatingActors/
というわけで、サーバー(Authority)かクライアント(Remote)マシンなのかを判別するには
「Switch Has Authority」ノードを使用します。

サーバー(Authority)であれば「Authority」が実行され、
クライアント(Remote)マシンであれば「Remote」が実行されます。
実際にはこんな感じの記載になりそうです。

そのままですね。
ネットワークゲームを作らなければあまり使わないと思うのですが、いざという時のために知識として知っておくと良さそうです。
公式ドキュメントはこちら。
・ブループリントでアクタをレプリケートする
https://docs.unrealengine.com/4.27/ja/InteractiveExperiences/Networking/Actors/ReplicatingActors/
スクリプトを実行しているのは Authority (サーバー) なのか、
または Remote マシン (クライアント) なのかを判断するために
Switch Has Authority (もしくは Authority Guard) ノードを追加します。
通常は Authority に設定して、プレイヤーのヘルス値やポイントの配分、経験値の調整など、
クライアント マシンでごまかしが行われてはならないゲームプレイの重要なスクリプトは
サーバーのみが実行できるようにします。
というわけで、サーバー(Authority)かクライアント(Remote)マシンなのかを判別するには
「Switch Has Authority」ノードを使用します。

サーバー(Authority)であれば「Authority」が実行され、
クライアント(Remote)マシンであれば「Remote」が実行されます。
実際にはこんな感じの記載になりそうです。

そのままですね。
ネットワークゲームを作らなければあまり使わないと思うのですが、いざという時のために知識として知っておくと良さそうです。
| UE4 | 10:00 | comments:0 | trackbacks:0 | TOP↑