Closed otoneco closed 3 years ago
読み込めない、存在しない項目があるようですが、Boothで購入したもののため、私ではいじるのは困難です。
Unity Editor: 2018.4.20f1 VRChat SDK: 2021.02.23.11.41 VRM Converter for VRChat: 25.3.0 UniVRM: 0.70.0
System.ArgumentNullException: Value cannot be null.
at UniGLTF.TextureExporter+ExportKey..ctor (UnityEngine.Texture src, UniGLTF.glTFTextureTypes type) [0x0000d] in C:\Users\YFdj\Lapis_vrm01\Assets\UniGLTF\Runtime\UniGLTF\IO\TextureIO\TextureExporter.cs:26
at UniGLTF.TextureExporter.ExportMetallicSmoothnessOcclusion (UnityEngine.Texture metallicSmoothTexture, System.Single smoothness, UnityEngine.Texture occlusionTexture) [0x00042] in C:\Users\YFdj\Lapis_vrm01\Assets\UniGLTF\Runtime\UniGLTF\IO\TextureIO\TextureExporter.cs:167
at UniGLTF.MaterialExporter.Export_OcclusionMetallicRoughness (UnityEngine.Material m, UniGLTF.TextureExporter textureManager, UniGLTF.glTFMaterial material) [0x000a2] in C:\Users\YFdj\Lapis_vrm01\Assets\UniGLTF\Runtime\UniGLTF\IO\MaterialIO\MaterialExporter.cs:91
at UniGLTF.MaterialExporter.ExportMaterial (UnityEngine.Material m, UniGLTF.TextureExporter textureManager) [0x00030] in C:\Users\YFdj\Lapis_vrm01\Assets\UniGLTF\Runtime\UniGLTF\IO\MaterialIO\MaterialExporter.cs:32
at UniGLTF.gltfExporter+<>cDisplayClass32_0.2[TSource,TResult].ToList () [0x0002a] in <fbb5ed17eb6e46c680000f8910ebb50c>:0 at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable
1[T] source) [0x0001f] in 1[T] info, System.Collections.Generic.List
1[T] destroy) [0x0028c] in C:\Users\YFdj\Lapis_vrm01\Assets\VRM\Editor\Format\VRMEditorExporter.cs:227
at VRM.VRMEditorExporter.Export (System.String path, UnityEngine.GameObject exportRoot, VRM.VRMMetaObject meta, VRM.VRMExportSettings settings, System.Collections.Generic.IReadOnlyList1[T] info) [0x00008] in C:\Users\YFdj\Lapis_vrm01\Assets\VRM\Editor\Format\VRMEditorExporter.cs:24 at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary
2[TKey,TValue] presetVRChatBindingPairs, Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.DynamicBoneReplacer+ParametersConverter swayingParametersConverter) [0x001e2] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\VRChatToVRM\VRChatToVRMConverter.cs:163
at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\UI\VRChatToVRMWizard.cs:247
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 2[TSource,TResult].ToList () [0x0002a] in <fbb5ed17eb6e46c680000f8910ebb50c>:0 at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable
1[T] source) [0x0001f] in 1[T] info, System.Collections.Generic.List
1[T] destroy) [0x0028c] in C:\Users\YFdj\Lapis_vrm01\Assets\VRM\Editor\Format\VRMEditorExporter.cs:227
at VRM.VRMEditorExporter.Export (System.String path, UnityEngine.GameObject exportRoot, VRM.VRMMetaObject meta, VRM.VRMExportSettings settings, System.Collections.Generic.IReadOnlyList1[T] info) [0x00008] in C:\Users\YFdj\Lapis_vrm01\Assets\VRM\Editor\Format\VRMEditorExporter.cs:24 at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary
2[TKey,TValue] presetVRChatBindingPairs, Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.DynamicBoneReplacer+ParametersConverter swayingParametersConverter) [0x001e2] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\VRChatToVRM\VRChatToVRMConverter.cs:163
at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\UI\VRChatToVRMWizard.cs:247
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
念のためキャラ名や著者等英語で統一しましたが、まだダメなようです。
Sunaoshaderを使っているものがエラーを吐かれる傾向があるようです。
ご報告有り難うございます。 こちらはUniVRM-0.66.0へダウングレードした場合でも発生するでしょうか? https://github.com/vrm-c/UniVRM/releases/tag/v0.66.0
そもそもダウングレードができません それをやるとVRM0が二度と表示されなくなります
univrm同梱バージョンを変更or同梱なしをアップロードしていただけますでしょうか
最新安定版がUniVRM-0.79.0となったため、つい先日対応のための本拡張もv27.0.0へ更新しました。「Assets/UniGLTF」「Assets/VRM」「Assets/VRMShaders」を削除した上で、こちらをインポートしてお試しください。
試してみましたが、やはりダメです (前回のはモデル元の制作者様に直接変換していただいたため、他のモデルで試しました)
Unity Editor: 2018.4.20f1 VRChat SDK: 2021.06.03.14.57 VRM Converter for VRChat: 27.0.0 UniVRM: 0.79.0
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary2[TKey,TValue].get_Item (TKey key) [0x0001e] in <e1319b7195c343e79b385cd3aa43f5dc>:0 at VRM.VRMBoneNormalizer+<>c__DisplayClass2_0.<CopyVRMComponents>b__1 (UnityEngine.Transform x) [0x00000] in C:\Users\YFdj\Lion_vrm01\Assets\VRM\Runtime\SkinnedMeshUtility\VRMBoneNormalizer.cs:179 at System.Linq.Enumerable+SelectListIterator
2[TSource,TResult].ToList () [0x0002a] in 1[T] source) [0x0001f] in <fbb5ed17eb6e46c680000f8910ebb50c>:0 at VRM.VRMBoneNormalizer.CopyVRMComponents (UnityEngine.GameObject go, UnityEngine.GameObject root, System.Collections.Generic.Dictionary
2[TKey,TValue] map) [0x001f5] in C:\Users\YFdj\Lion_vrm01\Assets\VRM\Runtime\SkinnedMeshUtility\VRMBoneNormalizer.cs:179
at VRM.VRMBoneNormalizer.Execute (UnityEngine.GameObject go, System.Boolean forceTPose) [0x00085] in C:\Users\YFdj\Lion_vrm01\Assets\VRM\Runtime\SkinnedMeshUtility\VRMBoneNormalizer.cs:109
at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary2[TKey,TValue] presetVRChatBindingPairs, Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.DynamicBoneReplacer+ParametersConverter swayingParametersConverter) [0x001e6] in C:\Users\YFdj\Lion_vrm01\Assets\VRMConverterForVRChat\Editor\VRChatToVRM\VRChatToVRMConverter.cs:161 at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\Users\YFdj\Lion_vrm01\Assets\VRMConverterForVRChat\Editor\UI\VRChatToVRMWizard.cs:247 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 <e1319b7195c343e79b385cd3aa43f5dc>:0 at System.Collections.Generic.Dictionary
2[TKey,TValue].get_Item (TKey key) [0x0001e] in 2[TSource,TResult].ToList () [0x0002a] in <fbb5ed17eb6e46c680000f8910ebb50c>:0 at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable
1[T] source) [0x0001f] in 2[TKey,TValue] map) [0x001f5] in C:\Users\YFdj\Lion_vrm01\Assets\VRM\Runtime\SkinnedMeshUtility\VRMBoneNormalizer.cs:179 at VRM.VRMBoneNormalizer.Execute (UnityEngine.GameObject go, System.Boolean forceTPose) [0x00085] in C:\Users\YFdj\Lion_vrm01\Assets\VRM\Runtime\SkinnedMeshUtility\VRMBoneNormalizer.cs:109 at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary
2[TKey,TValue] presetVRChatBindingPairs, Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.DynamicBoneReplacer+ParametersConverter swayingParametersConverter) [0x001e6] in C:\Users\YFdj\Lion_vrm01\Assets\VRMConverterForVRChat\Editor\VRChatToVRM\VRChatToVRMConverter.cs:161
at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\Users\YFdj\Lion_vrm01\Assets\VRMConverterForVRChat\Editor\UI\VRChatToVRMWizard.cs:247
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
こちらはUniVRMのメニューからVRM化しようとした場合にも発生しますか?
上部メニュー → VRM0 → Export UniVRM-0.79.0
いいえ、発生しませんでした。
もちろん表情やスプリングボーンはありません。 でも私はこれらを再設定する術を知りません。 テクスチャとか、ダイナミックボーンの変換とか、表情の登録方法とか、何一つ分かりません。 あなたのツールが必要です。
確認ありがとうございます。
エラーをこちらで再現できるunitypackage等を用意してもらうことなどはできますでしょうか?
ごめんなさい。 再配布がNGなので厳しいです。
https://booth.pm/ja/items/2615925 こちらで試しました 価格が高いので参考までにお願いします
https://booth.pm/ja/items/2361882 こちらでも試しましたが同じくダメでした
原因が分かりました。 アバタールート外を参照する不正なDynamicBoneが存在すると、上記と同様の例外が発生し、エクスポートに失敗するようです。
対策を行ったv27.1.0を公開しました。 https://pokemori.booth.pm/items/1025226
ご報告有り難うございました。
Unity Editor: 2018.4.20f1 VRChat SDK: 2021.02.23.11.41 VRM Converter for VRChat: 25.3.0 UniVRM: 0.70.0
UnityEngine.MissingReferenceException: The object of type 'VRMMetaObject' has been destroyed but you are still trying to access it. Your script should either check if it is null or you should not destroy the object. at (wrapper managed-to-native) UnityEngine.Object.SetName(UnityEngine.Object,string) at UnityEngine.Object.set_name (System.String value) [0x00003] in C:\buildslave\unity\build\Runtime\Export\UnityEngineObject.bindings.cs:199 at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary:0
2[TKey,TValue] presetVRChatBindingPairs, Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.DynamicBoneReplacer+ParametersConverter swayingParametersConverter) [0x001e2] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\VRChatToVRM\VRChatToVRMConverter.cs:163 at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\UI\VRChatToVRMWizard.cs:247 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 <e1319b7195c343e79b385cd3aa43f5dc>:0 at (wrapper managed-to-native) UnityEngine.Object.SetName(UnityEngine.Object,string) at UnityEngine.Object.set_name (System.String value) [0x00003] in C:\buildslave\unity\build\Runtime\Export\UnityEngineObject.bindings.cs:199 at Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.VRChatToVRMConverter.Convert (System.String outputPath, UnityEngine.GameObject instance, VRM.VRMMetaObject meta, System.Collections.Generic.IDictionary
2[TKey,TValue] presetVRChatBindingPairs, Esperecyan.Unity.VRMConverterForVRChat.VRChatToVRM.DynamicBoneReplacer+ParametersConverter swayingParametersConverter) [0x001e2] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\VRChatToVRM\VRChatToVRMConverter.cs:163 at Esperecyan.Unity.VRMConverterForVRChat.UI.VRChatToVRMWizard.OnWizardCreate () [0x001c4] in C:\Users\YFdj\Lapis_vrm01\Assets\VRMConverterForVRChat\Editor\UI\VRChatToVRMWizard.cs:247 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