vrm-c / UniVRM

UniVRM is a gltf-based VRM format implementation for Unity. English is here https://vrm.dev/en/ . 日本語 はこちら https://vrm.dev/

Home Page:https://vrm.dev/en

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

KeyNotFoundException when exporting VRM1.0

AzoSBear opened this issue · comments

Environments (please complete the following information):

  • UniVRM version: 0.119.0
  • Unity version: Unity-2022.3.6f1
  • OS: Windows 10

Describe the bug

When exporting VRM1.0 it raises KeyNotFoundException

LOG:

KeyNotFoundException: The given key 'Hips (UnityEngine.GameObject)' was not present in the dictionary.
System.Collections.Generic.Dictionary2[TKey,TValue].get_Item (TKey key) (at <eef08f56e2e042f1b3027eca477293d9>:0) UniVRM10.ModelExporter+<>c__DisplayClass10_0.<CreateSkin>b__0 (UnityEngine.Transform x) (at Assets/VRM10/Runtime/IO/Model/ModelExporter.cs:306) System.Linq.Enumerable+SelectArrayIterator2[TSource,TResult].ToList () (at :0)
System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable1[T] source) (at <de4a1a1490a74771a34fee0d1d586658>:0) UniVRM10.ModelExporter.CreateSkin (UniGLTF.INativeArrayManager arrayManager, UnityEngine.SkinnedMeshRenderer skinnedMeshRenderer, System.Collections.Generic.Dictionary2[TKey,TValue] nodes, UnityEngine.GameObject root) (at Assets/VRM10/Runtime/IO/Model/ModelExporter.cs:306)
UniVRM10.ModelExporter._Export (UniGLTF.INativeArrayManager arrayManager, UnityEngine.GameObject root) (at Assets/VRM10/Runtime/IO/Model/ModelExporter.cs:135)
UniVRM10.ModelExporter.Export (UniGLTF.INativeArrayManager arrayManager, UnityEngine.GameObject root) (at Assets/VRM10/Runtime/IO/Model/ModelExporter.cs:31)
UniVRM10.VRM10ExportDialog.ExportPath (System.String path) (at Assets/VRM10/Editor/Vrm10ExportDialog.cs:274)
UnityEngine.Debug:LogException(Exception)
UniVRM10.VRM10ExportDialog:ExportPath(String) (at Assets/VRM10/Editor/Vrm10ExportDialog.cs:307)
UniGLTF.ExportDialogBase:EndGUI() (at Assets/UniGLTF/Editor/UniGLTF/ExportDialog/ExportDialogBase.cs:162)
UniGLTF.ExportDialogBase:OnGUI() (at Assets/UniGLTF/Editor/UniGLTF/ExportDialog/ExportDialogBase.cs:82)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

Self fixed by adding prefab to scene and editing values manually