유니티

[Unity] AnimationCurve

simstealer 2024. 5. 2. 10:01

- Script를 만들어서 오브젝트를 만들어서 붙여주고 x, y ,z 값을 입력해줍니다.

using UnityEngine;

namespace AnimationCurvePractice
{
    public class AnimationCurveTest : MonoBehaviour
    {
        [SerializeField] private AnimationCurve x_animationCurve;
        [SerializeField] private AnimationCurve y_animationCurve;
        [SerializeField] private AnimationCurve z_animationCurve;

        private float curTime;
        [SerializeField] private float period = 2f;


        void Update()
        {
            curTime += Time.deltaTime;
            if (curTime >= period)
            {
                curTime -= curTime;
            }


            float xValue = x_animationCurve.Evaluate(curTime);
            float yValue = y_animationCurve.Evaluate(curTime);
            float zValue = z_animationCurve.Evaluate(curTime);

            transform.position = new Vector3(xValue, yValue, zValue);
        }
    }

}

 

- Period 값만큼 쉬고 오브젝트가 움직이는걸 확인할 수 있습니다.