diff --git a/Assets/VRM10/Editor/VRM10ExportSettings.cs b/Assets/VRM10/Editor/VRM10ExportSettings.cs index 7d8fab47e..9b328e5a2 100644 --- a/Assets/VRM10/Editor/VRM10ExportSettings.cs +++ b/Assets/VRM10/Editor/VRM10ExportSettings.cs @@ -10,20 +10,23 @@ namespace UniVRM10 /// /// エクスポート時にBlendShapeClipから参照されないBlendShapeを削除する /// - [Tooltip("Remove blendshape that is not used from BlendShapeClip")] + [Tooltip("not implemented yet. Remove blendshape that is not used from BlendShapeClip")][ReadOnly] public bool ReduceBlendshape = false; /// /// skip if BlendShapeClip.Preset == Unknown /// - [Tooltip("Remove blendShapeClip that preset is Unknown")] + [Tooltip("not implemented yet. Remove blendShapeClip that preset is Unknown")][ReadOnly] public bool ReduceBlendshapeClip = false; + [Tooltip("Use sparse accessor for morph target")] + public bool MorphTargetUseSparse = true; + public GltfExportSettings MeshExportSettings => new GltfExportSettings { - UseSparseAccessorForMorphTarget = true, + UseSparseAccessorForMorphTarget = MorphTargetUseSparse, ExportOnlyBlendShapePosition = true, - DivideVertexBuffer = true, + DivideVertexBuffer = true, }; public GameObject Root { get; set; } diff --git a/Assets/VRM10/Editor/Vrm10ExportDialog.cs b/Assets/VRM10/Editor/Vrm10ExportDialog.cs index 957877c1f..e67e7545f 100644 --- a/Assets/VRM10/Editor/Vrm10ExportDialog.cs +++ b/Assets/VRM10/Editor/Vrm10ExportDialog.cs @@ -277,8 +277,11 @@ namespace UniVRM10 model.ConvertCoordinate(VrmLib.Coordinates.Vrm1, ignoreVrm: false); // export vrm-1.0 - var exporter = new UniVRM10.Vrm10Exporter(new EditorTextureSerializer(), new GltfExportSettings()); - var option = new VrmLib.ExportArgs(); + var exporter = new UniVRM10.Vrm10Exporter(new EditorTextureSerializer(), m_settings.MeshExportSettings); + var option = new VrmLib.ExportArgs + { + sparse = m_settings.MorphTargetUseSparse, + }; exporter.Export(root, model, converter, option, Vrm ? Vrm.Meta : m_tmpObject.Meta); var exportedBytes = exporter.Storage.ToGlbBytes();