using UnityEngine;

namespace KindRetargeting.EnumsList
{
    /// <summary>
    /// 손가락 복제 방식을 정의하는 열거형
    /// </summary>
    public enum FingerCopyMode
    {
        [Tooltip("손가락 복제를 수행하지 않습니다")]
        None,           // 손가락 복제 안 함
        
        [Tooltip("Unity의 Muscle 시스템을 사용하여 손가락을 복제합니다")]
        MuscleData,     // 머슬 데이터 기반 복제
        
        [Tooltip("Transform의 rotation 값을 직접 복제합니다")]
        Rotation,       // 회전값 기반 복제
    }

    /// <summary>
    /// 모션 필터링 방식을 정의하는 열거형
    /// </summary>
    public enum MotionFilterMode
    {
        [Tooltip("필터링을 적용하지 않습니다")]
        None,
        
        [Tooltip("평균 기반 필터링을 적용합니다")]
        Average,
        
        [Tooltip("가중치 기반 필터링을 적용합니다")]
        Weighted
    }

    /// <summary>
    /// 러프 모션 적용 방식을 정의하는 열거형
    /// </summary>
    public enum RoughMotionMode
    {
        [Tooltip("러프 모션을 적용하지 않습니다")]
        None,
        
        [Tooltip("선형 보간을 사용한 러프 모션을 적용합니다")]
        Linear,
        
        [Tooltip("스프링 시스템을 사용한 러프 모션을 적용합니다")]
        Spring
    }

    /// <summary>
    /// 프랍 종류를 정의하는 열거형
    /// </summary>
    public enum PropType
    {
        None,
        Object,
        Chair,
        Hand
    }
}