+1 支持
(130 ポイント)
Live2Dのモデルの動きを同期させることは可能でしょうか?

Live2Dのモデルをプレハブ化したものにMonobitViewとMonobitTransformViewを追加しました。位置情報は同期されているものの、Live2Dのパラメーターによって変化する姿勢や表情は同期されません。

どうすれば同期できるでしょうか?

よろしくお願い致します。

回答 1

+2 支持
(1.4k ポイント)
MonobitViewとMonobitTransformViewには、Live2Dなどの個別のパラメータを同期させるためのパラメータ転送機能が用意されていないようです。

個別のパラメータを転送するためには、OnMonobitSerializeView

http://www.monobitengine.com/doc/mun/contents/FeatureClient/CallbackFunction.htm#OnMonobitSerializeView%20%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89

というメソッドを使って転送するしかないようです。

ちなみにWolfManさんが利用している、Live2Dのモデルを動かすために何を利用されていますか?僕が知っている

http://sites.cybernoids.jp/cubism2/lets-do-it/my-first-lapp/06

の方法だと
Live2DModelUnity.setParamFloat() などで値の設定、
Live2DModelUnity.getParamFloat() などで値の取得ができるので、

using MonobitEngine;

class HogeHoge : MonobitEngine.MonoBehaviour
{
    Live2DModelUnity live2dModel;
   
    public void OnMonobitSerializeView( MonobitStream stream,
                                                         MonobitMessageInfo info )
    {
        if( stream.isWriting )
        {
            // PARAM のパラメータの送信同期
            stream.Enqueue(live2dModel.getParamFloat("PARAM"));
        }
        else
        {
            // PARAM のパラメータの受信同期
            live2dModel.setParamFloat("PARAM", (float)stream.Dequeue());
         }
    }
}

みたいな感じでいけると思います。
...