modular-avatar/Runtime/ModularAvatarMeshSettings.cs
anatawa12 f4ab86fedc
feat: SetOrInherit mode in MA Mesh Settings for EasySetupOutfit (#981)
* feat: SetOrInherit for MA Mesh Settings

* chore: use SetOrInherit in EasySetupOutfit

* test: fix test data

* Delete Editor/CheckBoneMapping.cs
2024-08-12 18:45:51 -07:00

38 lines
1.1 KiB
C#

using System;
using UnityEngine;
namespace nadena.dev.modular_avatar.core
{
[AddComponentMenu("Modular Avatar/MA Mesh Settings")]
[DisallowMultipleComponent]
[HelpURL("https://modular-avatar.nadena.dev/docs/reference/mesh-settings?lang=auto")]
public class ModularAvatarMeshSettings : AvatarTagComponent
{
internal static readonly Bounds DEFAULT_BOUNDS = new Bounds(Vector3.zero, Vector3.one * 2);
[Serializable]
public enum InheritMode
{
Inherit,
Set,
DontSet,
// Inherit if there is parent settings, set otherwise
SetOrInherit,
}
//[Header("Probe anchor configuration")]
public InheritMode InheritProbeAnchor = InheritMode.Inherit;
public AvatarObjectReference ProbeAnchor;
//[Header("Bounds configuration")]
public InheritMode InheritBounds = InheritMode.Inherit;
public AvatarObjectReference RootBone;
public Bounds Bounds = DEFAULT_BOUNDS;
public override void ResolveReferences()
{
ProbeAnchor?.Get(this);
RootBone?.Get(this);
}
}
}