新しいLive2D公式コミュニティ(日本向け)が公開されました!
ぜひご利用ください!
Live2D公式コミュニティ

■このコミュニティの今後について
このコミュニティ(forum.live2d.com)につきましては、しばらくの間新コミュニティと並行して運営しますが、2023年夏ごろを目処に方針を決定する予定です。
(2022/12/27追記 2022年内を目処に閉鎖 から変更しております)
内容については決定次第お知らせいたします。
海外向けコミュニティについては変更ございません。
Live2Dに関するユーザーのみなさま同士の交流・ご質問・不具合の報告・提案・要望などについて是非お寄せください。
※Live2D公式スタッフからの発言や回答については確約できないことを予めご了承ください。

Live2D ヘルプ

Cubism Editorダウンロード / 動作環境
Cubism SDKダウンロード / 対応表
Cubism 製品利用ライセンス(SDK含)

Cubism 製品のライセンスについてのお問い合わせはこちら
nizima 及び nizima 製品についてのお問い合わせはこちら
【各最新OSの対応状況について】
Cubism Editorは 4.1.02 正式版以降でWindows 11 及び macOS Monterey に対応しております。ぜひ最新版をご利用ください。
※macOSをお使いの方でOSアップデートする際は必ずCubism Editorのライセンスを解除してください。
Cubism EditorをインストールしているmacOSをアップグレードしたい
Cubism SDKについては各SDKのREADMEまたはNOTICEをご確認ください。

【Mac各機種への対応状況について】
現在、Cubism EditorはApple M1チップ搭載機種には対応しておりません。
詳細は 動作環境 をご参照ください。
関連するお問い合わせへの対応はこの文章をもって代えさせていただきます。
Cubism 製品のマニュアル・チュートリアルはこちら
 
Cubism Editorマニュアル    Cubism Editorチュートリアル    Cubism SDKマニュアル    Cubism SDKチュートリアル

追従と物理演算の設定

live2d viewer上で表示している追従と物理演算をunity上でも同じことを実行したいのですが、
公式サイトにあるように
画像・.moc3・.model3.json・.physics3.jsonをプロジェクト内に読み込みモデルも表示するところまではでき、
cubism look controllerなどを使用して追従自体はできるのですが物理演算を行う方法がよくわからず質問させていただきました。
(今はパーツを1つずつにcubism look parameterをアタッチしている為他に良い方法があるならそれも教えていただきたいです。)

cubism3のリファレンスにはここら辺の使用方法が詳しく書かれておらず詰まっているので何卒お願いしたいです。

コメント

  • @morita さん

    モデルをCubism 3 SDK for Unityを用いてプロジェクトにインポートしたとき、.model3.jsonに.physics3.jsonの参照が記述されている場合、生成されるPrefabには自動で物理演算が設定されます。
    もしPrefabに物理演算が設定されていない場合、model3.jsonにphysics3.jsonの参照が記述されているかをご確認ください。

    また、各コンポーネントが実行される順序はUnityが制御しております。
    その順序によっては、視線追従と物理演算が両立しないこともございます。
    こちらは、Player SettingsでScript Execution Order Settingsを設定したり、AttributeのDefaultExecutionOrderを利用するなど、ユーザ側で各コンポーネントの実行順を制御していただくことで回避することが可能です。
  • @y_a_s_(Dev Staff)


    ご返信ありがとうございます。

    無事追従と物理演算ができました。

    ですがviewer上ではできていたz軸の追従なのですがunity上では再生時にlook parameterに設定した値分最初から傾いてしまうのですが

    look parameterの設定ではいけないということでしょうか?

  • 編集済: 3月 2019
    @morita さん

    CubismLookParameter.AxisにZが設定された場合、パラメータにはLookAtに入力した座標のZを用いて計算された値が設定されます。
    Unity版のSDKでは3次元空間から追従する座標を指定することができるためZ軸の値を利用していますが、Cubism 3 Viewer for OWやUnity以外のSDKでは入力がスクリーン上のマウスカーソルの座標のみのため、入力された座標のXとYから算出した値を用いています。

    Unity版のSDKで同様の動作にする場合、CubismLookParameter.TickAndEvaluate()を以下のように修正してください。
            internal float TickAndEvaluate(Vector3 targetOffset)
            {
                var result = (Axis == CubismLookAxis.X)
                    ? targetOffset.x
                    : targetOffset.y;
    
    
                if (Axis == CubismLookAxis.Z)
                {
                    result = targetOffset.x * targetOffset.y * (-1.0f);
                }
    
    
                return result * Factor;
            }
コメントするにはサインインまたは登録して下さい。