Choose your operating system:
Windows
macOS
Linux
サーバー と クライアント の両側から見るために、 [Play] ダウンリストで、 [Number of Clients (クライアント数)] フィールドを 2 に設定します。
レプリケートされた変数の値に対応してロジックを実行させたい場合がしばしばあります。 RepNotify とマークされている変数には、ネットワーク権限のあるマシンとリモートマシンの両方で変数が変更されると自動的に呼び出される特別な関数があります。
このサンプルでは、ネットワーク権限のあるマシンが、街頭が RepNotify 変数を使って何色を表示するかを示すスカラー値の変更を制御します。値が変更されると、自動生成 OnRep 関数が呼び出され、このサンプルではマテリアル パラメータが更新されます。
ブループリントの詳細
BP_Stoplight_Variable_RepNotify ブループリントのイベント グラフ (下の画像) では、 ライト切り替えロジックを処理するために、スクリプトがネットワーク権限のあるマシンのみを呼び出しているのが分かります。ライトのステートを表す Streetlight Scalar 変数は特別に RepNotify とマークされ、値が変わるとクライアントとサーバーの両方が OnRep_StreetlightScalar 関数を呼び出します。
クリックしてフルサイズで表示
OnRep_StreetlightScalar 関数はその後、街頭の外見の更新処理するので、すべてのマシン上で有効になります。
RepNotify への変数の設定は、 [Replication (レプリケーション)] ドロップダウン メニューの変数の [Details (詳細)] パネルで行えます。
この設定をしておくと、ゲーム内で再生された時、クライアントとサーバの両方で街灯に対して同じシーケンスが実行されます。