VRMConverterForVRChat icon indicating copy to clipboard operation
VRMConverterForVRChat copied to clipboard

bug:VRChatアバターからVRMに出力できない

Open RearAlice opened this issue 2 years ago • 8 comments

VRChatアバターからVRMに出力できない

Unity Editor: 2019.4.31f1
VRM Converter for VRChat: 38.2.1
UniVRM: 0.99.4

System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
  at System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) [0x00029] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.ThrowHelper.ThrowArgumentOutOfRangeException () [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.List`1[T].get_Item (System.Int32 index) [0x00009] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Linq.Enumerable+SelectListIterator`2[TSource,TResult].ToList () [0x00017] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x0001f] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at Esperecyan.UniVRMExtensions.VRMInitializer.Initialize (System.String prefabPath, UnityEngine.GameObject prefabInstance) [0x000ac] in C:\GIthub\Nae\Library\PackageCache\[email protected]\VRMInitializer.cs:40 
  at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String version, System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary`2[TKey,TValue] presetVRChatBindingPairs, System.Boolean keepUnusedShapeKeys) [0x00245] in C:\GIthub\Nae\Library\PackageCache\[email protected]\Editor\VRChatToVRM\VRChatToVRMConverter.cs:188 
  at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\GIthub\Nae\Library\PackageCache\[email protected]\Editor\UI\VRChatToVRMWizard.cs:315 
  at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke(System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00032] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) [0x00029] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.ThrowHelper.ThrowArgumentOutOfRangeException () [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.List`1[T].get_Item (System.Int32 index) [0x00009] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Linq.Enumerable+SelectListIterator`2[TSource,TResult].ToList () [0x00017] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x0001f] in <351e49e2a5bf4fd6beabb458ce2255f3>:0 
  at Esperecyan.UniVRMExtensions.VRMInitializer.Initialize (System.String prefabPath, UnityEngine.GameObject prefabInstance) [0x000ac] in C:\GIthub\Nae\Library\PackageCache\[email protected]\VRMInitializer.cs:40 
  at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String version, System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary`2[TKey,TValue] presetVRChatBindingPairs, System.Boolean keepUnusedShapeKeys) [0x00245] in C:\GIthub\Nae\Library\PackageCache\[email protected]\Editor\VRChatToVRM\VRChatToVRMConverter.cs:188 
  at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\GIthub\Nae\Library\PackageCache\[email protected]\Editor\UI\VRChatToVRMWizard.cs:315 
  at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke(System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00032] in <eae584ce26bc40229c1b1aa476bfa589>:0 

RearAlice avatar Jan 16 '23 23:01 RearAlice

ご報告有り難うございます。 こちらの問題を再現できる手順はありますか?

esperecyan avatar Jan 17 '23 00:01 esperecyan

ご返信ありがとうございます。 たしか、VCC→コンバーター→苗ちゃんでインポートして、ツールのvrm出力したらこうなりました。

RearAlice avatar Jan 22 '23 03:01 RearAlice

こちらのモデルでしょうか。

オリジナル3Dモデル「猫山苗(ねこやま なえ)」 - ツクルノモリ公式 - BOOTH https://tsukurunomori.booth.pm/items/2381911

当該モデルを所持していないため、当方では問題を再現可能か確かめることができません。

上記モデル通常版のunitypackageをインポートした直後のプレハブを、VRM Converter for VRChatでVRMへ変換しようとしたときに、エラーが発生したということで、間違いありませんか?

当該プレハブをUniVRMの「Export to VRM 0.x」でVRMエクスポートした場合にもエラーは発生しますか?

esperecyan avatar Jan 22 '23 04:01 esperecyan

少し忙しくてこのissue放置気味になっていましたが少し試してみました。

苗ちゃんだとエラー発生するけど、他のモデルでは問題でない場合があるということがわかりました。

もしかしたら苗ちゃんのモデルの設定が悪さしてるんですかね...

RearAlice avatar Mar 18 '23 10:03 RearAlice

苗ちゃんだとエラー発生するけど、他のモデルでは問題でない場合があるということがわかりました。

こちらは、UniVRMの「Export to VRM 0.x」でVRMエクスポートした場合の話でしょうか?

esperecyan avatar Mar 19 '23 08:03 esperecyan

@webarai 問題を再現できる手順はありますか?

esperecyan avatar May 08 '23 07:05 esperecyan

ご返信ありがとうございます。 該当の問題を再現する手順ですが、正直不明です。 アバター自体に改変は加えているんですが、同じ手順を追ってもエラーが発生する場合と、そうでない場合があり、また出力に成功してもプレハブ等は生成されていない…といった状態です。

webarai avatar May 08 '23 08:05 webarai

UniGLTFのメッシュの取り扱いが大きく変わり、VRM Converter for VRChat内のメッシュ処理コードがかなり減りました。 もしかしたらこちらの問題が解消しているかもしれません。 VRM Converter for VRChat v41.0.0でも問題が発生するか試してもらえないでしょうか?

esperecyan avatar Feb 23 '24 08:02 esperecyan

返信がないため閉じます。

esperecyan avatar Jun 15 '24 10:06 esperecyan