nDisplay システムへのすべての入力は、マスター ノードによってのみ処理されます。レプリケーションがない場合、シーンの変化はマスター ノードででしか見られなくなります。したがって、マスター ノードが、 nDisplay ネットワークの他のすべての部分に対し変更をレプリケートできる必要があります。
これを実現するために、 nDisplay にはアクタにアタッチできる2種類のコンポーネントがあります。
-
DisplayClusterSceneComponentSyncParent コンポーネントは、親コンポーネントの 3D トランスフォームの変更を追跡し、それをネットワーク内の他のクラスター ノードに送信します。 nDisplay システムで使用されるデフォルトの DisplayClusterPawn は、このコンポーネントを使用します。
-
DisplayClusterSceneComponentSyncThis コンポーネントは、子コンポーネントの 3D トランスフォームの変更を追跡し、それをネットワーク内の他のクラスター ノードに送信します。
たとえば、以下に示すアクタでは、 DisplayClusterSceneComponentSyncParent_DefaultSceneRoot コンポーネントが、アクタがレベルを移動するときに親アクタの 3D トランスフォームへの変更を追跡してレプリケートします。また、 DisplayClusterSceneComponentSyncThis コンポーネントは、その子のキューブコンポーネントがシーン グラフのルートを基準にして動くなか、その動きを追跡し、同期します。

シーンに、ゲームプレイ中影響を受ける可能性があるアクタが他にもある場合は、これら2つのコンポーネントのいずれかを使い、変更をすべてのノードにレプリケートする必要があります。そのためには、以下の方法を実行します。
- レベル ビュー ポートまたは [World Outliner] パネルで、レプリケートする必要があるアクタを選択します。
-
[Details] パネルで、 [+ [Add] Component] をクリックします。DisplayClusterSceneComponentSyncParent もしくは DisplayClusterSceneComponentSyncThis のどちらかを検索し、リストから選択します。
これらのコンポーネントによって完全なレプリケーションは実行されません。親アクタまたは子コンポーネントのトランスフォームだけがクラスターに送信されます。
カスタム データをレプリケートする
マスター ノードと残りのクラスタ間に他のカスタム データをレプリケートする必要がある場合、IDisplayClusterClusterSyncObject
インターフェースを実装する独自の C++ クラスをかき出すことができます。nDisplay はこのクラスの各インスタンスがマスター ノードからその他のクラスタ ノードに同期する必要があるかチェックするために、このインターフェースの中に自動的にメソッドを呼び出します。