★お知らせ(2023/12/27)
いつもLive2D公式コミュニティをご利用いただき誠にありがとうございます。
本コミュニティは2023年12月27日 11:00をもって閉鎖いたしました。
今後の運営はすべて新Live2D公式クリエイターズフォーラムに移行します。
閉鎖に伴い、以下機能は利用不可となります。
・アカウントの新規作成
・トピック投稿、返信
たくさんのご利用誠にありがとうございました。

新Live2D公式クリエイターズフォーラムは以下バナーよりご利用いただけます。
Live2D公式クリエイターズフォーラム

なお、本コミュニティに投稿されたトピックはすべて残りますが、今後削除する可能性がございますので予めご了承ください。
閉鎖に関するお問い合わせにつきましてはLive2D公式クリエイターズフォーラムへご連絡ください。

作成したアニメーションをUnity上に配置するとNullReferenceExceptionが発生する

作成したアニメーションをUnity常に配置すると以下のようなエラーが発生します。

NullReferenceException: Object reference not set to an instance of an object
Live2D.Cubism.Rendering.Masking.CubismMaskController+MasksMaskedsPairs.Add (Live2D.Cubism.Core.CubismDrawable masked, Live2D.Cubism.Core.CubismDrawable[] masks) (at Assets/Live2D/Cubism/Rendering/Masking/CubismMaskController.cs:313)
Live2D.Cubism.Rendering.Masking.CubismMaskController.ForceRevive () (at Assets/Live2D/Cubism/Rendering/Masking/CubismMaskController.cs:116)
Live2D.Cubism.Rendering.Masking.CubismMaskController.TryRevive () (at Assets/Live2D/Cubism/Rendering/Masking/CubismMaskController.cs:91)
Live2D.Cubism.Rendering.Masking.CubismMaskController.Live2D.Cubism.Rendering.Masking.ICubismMaskTextureCommandSource.GetNecessaryTileCount () (at Assets/Live2D/Cubism/Rendering/Masking/CubismMaskController.cs:205)
Live2D.Cubism.Rendering.Masking.CubismMaskTexture.AddSource (Live2D.Cubism.Rendering.Masking.ICubismMaskTextureCommandSource source) (at Assets/Live2D/Cubism/Rendering/Masking/CubismMaskTexture.cs:200)
Live2D.Cubism.Rendering.Masking.CubismMaskController.Start () (at Assets/Live2D/Cubism/Rendering/Masking/CubismMaskController.cs:159)

ですがUnityエディターのGame画面では、そのアニメーションは問題なく再生されているように見えます。
Androidに書き出すとこのエラーが原因で落ちてしまいます。


同じエラーに遭遇した方や解決した方いらっしゃいましたら情報をいただきたく思います。
アニメーションファイルを書き出す設定に誤りがある?
配置する時に何かの設定が必要??
何か情報がありましたらお教えいただきたいです。


一応以下の検証、調査はしてみましたが改善されず・・・
・シーンにあらかじめ置いているのがいけないのか?と思いスクリプトからアニメーションを配置してみた
 →解消されず
・アニメーション配置するスクリプトが起動直後がいけない?と思い、任意のタイミングで配置できるように
 ボタンを押下したタイミングで配置するスクリプトを実行して配置
 →解消されず

検証環境:
Live2D cubism3.0
Unity2017.1.1f1
Mac OS 10.12.6

コメント

  • 編集済: 10月 2017
    @taka_appgame さん

    内容を見る限り、アニメーションではなく、クリッピング関連でエラーが出ています。
    アニメーションを再生させるモデルはインポートしたままのものでしょうか? それとも何か変更を加えていますか?
  • @y_a_s_(Dev Staff) 返信ありがとうございます。確かにクリッピングが問題でした。クリッピングを利用しないようにしたらエラーは出なくなりました。
    ですがもう一つ違うエラーが出ていることに気づきました。
    NullReferenceException: Object reference not set to an instance of an object
    Live2D.Cubism.Framework.ComponentExtensionMethods.GetComponentsMany[T] (UnityEngine.Component[] self) (at Assets/Live2D/Cubism/Framework/ComponentExtensionMethods.cs:31)
    Live2D.Cubism.Rendering.CubismRenderController.get_Renderers () (at Assets/Live2D/Cubism/Rendering/CubismRenderController.cs:355)
    Live2D.Cubism.Rendering.CubismRenderController.TryInitializeRenderers () (at Assets/Live2D/Cubism/Rendering/CubismRenderController.cs:371)
    Live2D.Cubism.Rendering.CubismRenderController.OnEnable () (at Assets/Live2D/Cubism/Rendering/CubismRenderController.cs:482)

    こちらのエラーも同様に、生成したアニメーションのプレハブを画面内に置いておくと発生してしまいます。
    このエラーについて何かご存知でしたらお教えいただきたいです。
    よろしくお願いします。
  • @taka_appgame さん

    これも内容はクリッピング関連のエラーです。
    クリッピングを利用しないようにしたとのことですが、どのような処理を行いましたか?
コメントするにはサインインまたは登録して下さい。