所有権¶
アクターを複製するときには、1人のプレイヤーのマシン上にオリジナルのアクターが1つ存在することが前提となります。このアクターを、それを複製した全てのアクターのオーナーと呼びます。
複製されたアクターは、複製されたアクターの型の普通のインスタンスに過ぎないため、オリジナルと差がありません。しかし、オーナーには権限が伴うため、オーナーとレプリカのアクターを区別すると便利なことがあります。例えば、全てのプレイヤーアクターに特定のアクションを行わせるメッセージを全てのプレイヤーへ送ると、各プレイヤーが何回か影響を受けてしまうことになります。それは、各プレイヤーアクターは、当然全てのクライアントに複製されているためです。オーナーであるアクターのみでアクションを実行すれば、これを避けることができます。
所有権と複製の確認¶
Strix Replicatorコンポーネントは、特定のアクターがオーナーであるかどうか、アクターが現在複製を持っているかどうかを確認する関数を提供します。
Get Is Owner |
このレプリケーターコンポーネントがオーナーのアクターにアタッチされている場合、trueになります。 |
Get Is Replicating |
このレプリケーターコンポーネントがアタッチされているアクターにレプリカがある場合、trueになります。 |
Get Is Owner And Replicating |
このレプリケーターコンポーネントがアタッチされているアクターにレプリカがあり、かつ、このアクターがオーナーのアクターである場合、trueを返します。 |