using System; using System.Collections.Generic; using UnityEngine; namespace VRM { [Serializable] public class VRMExportSettings : ScriptableObject { /// /// エクスポート時に強制的にT-Pose化する /// [Tooltip("Option")] public bool ForceTPose = false; /// /// エクスポート時にヒエラルキーの正規化を実施する /// [Tooltip("Require only first time")] public bool PoseFreeze = true; /// /// BlendShapeのシリアライズにSparseAccessorを使う /// [Tooltip("Use sparse accessor for blendshape. This may reduce vrm size")] public bool UseSparseAccessor = false; /// /// BlendShapeのPositionのみをエクスポートする /// [Tooltip("UniVRM-0.54 or later can load it. Otherwise fail to load")] public bool OnlyBlendshapePosition = false; /// /// エクスポート時にBlendShapeClipから参照されないBlendShapeを削除する /// [Tooltip("Remove blendshape that is not used from BlendShapeClip")] public bool ReduceBlendshape = false; /// /// skip if BlendShapeClip.Preset == Unknown /// [Tooltip("Remove blendShapeClip that preset is Unknown")] public bool ReduceBlendshapeClip = false; public UniGLTF.MeshExportSettings MeshExportSettings => new UniGLTF.MeshExportSettings { UseSparseAccessorForMorphTarget = UseSparseAccessor, ExportOnlyBlendShapePosition = OnlyBlendshapePosition, }; public GameObject Root { get; set; } } }