質問: OnMonobitSerializeViewについて 現在、複数人で通信プレイするゲームを作成しています。 Tips(3) : 「MonobitTransformView」「MonobitAnimatorView」よりも「OnMonobitSerializeView()」 を使った方が得策%20:%20%E3%80%8CMonobitTransformView%E3%80%8D%E3%80%8CMonobitAnimatorView%E3%80%8D%E3%82%88%E3%82%8A%E3%82%82%E3%80%8COnMonobitSerializeView()%E3%80%8D%20%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E6%96%B9%E3%81%8C%E5%BE%97%E7%AD%96) という記事を読み、RPC通信で同期させていたプレイヤーのステータス情報を、OnMonobitSerializeViewで同期させようと思い、リファレンスと同じように作成してみたのですが、OnMonobitSerializeViewメソッド内に入らず、上手くいきません。 MonobitEngine.MonoBehaviourは継承しており、プレイヤーオブジェクトはMonobitViewを持ち、Prefab化して、ゲーム開始時に接続人数分の生成するようにしています。 MonobitView以外にUnity上で何か追加しておかなければならないMonobitEngineのComponentがあるのでしょうか? 使用しているバージョンは Unity2018 3.3f1 Mun ver.2.6.1 です。初歩的な質問で大変恐縮ですが、解決策を教えていただけないでしょうか。
回答: 追加しなければならないコンポーネントは MonobitView コンポーネントだけでよいのですが、MonobitView にある Observed Component List に、OnMOnobitSerializeView メソッドを記述したクラススクリプトを追加する必要があります。 MonobitViewコンポーネントの説明欄にある「Observed Component Registration List について」( ) > MonobitEngine.MonoBehaviourを継承したクラス > > クラス内に定義された OnMonobitSerializeView() の処理内容に応じて、オブジェクトが同期されます。 > > OnMonobitSerializeView を機能させるための手順として、MonobitView コンポーネントを追加した後で、さらに以下の2工程が必要です。 手順1. 追加された MonobitView コンポーネント内にある「Add Observed Component List Column」のボタンを押す。 手順2. 項目が1つ増えるので、「None (Component)」と表示されているカラム内に、「OnMonobitSerializeView() メソッドを記述したクラススクリプト」をドラッグ&ドロップで追加する。 このようにすれば、OnMonobitSerializeView メソッドが機能すると思います。