목표

  • 선형 보간방법에 대해 배워본다.

선형보간

  • 선형보간이란 끝점의 값이 주어졌을 때 그 사이에 위치한 값을 추정하기 위하여, 직선 거리에 따라 선형적으로 계산하는 방법을 말한다.
  • Unity에서는 Lerp 함수에서 선형보간을 지원한다.
  • 예를들어, 두점 V1(1,2,3)에서 V2(5,6,7)이 주워진 경우 Lerp의 결과는 아래와 같다.
    • 1과 5 사이의 75% 지점이 4이기 때문에
    • 2과 6 사이의 75% 지점이 5이기 때문에
    • 3과 7 사이의 75% 지점이 6이기 때문에
Vector3 from = new Vector3 (1f, 2f, 3f);
Vector3 to = new Vector3 (5f, 6f, 7f);

// Here result = (4, 5, 6)
Vector3 result = Vector3.Lerp (from, to, 0.75f);

선형보간 활용

  • 선형보간은 시간에 따라 부드럽게 움직이는 값을 나타낼때 사용한다.
  • 서서히 밝아지는 빛을 만들고 싶은 경우, 아래와 Lerp을 활용할 수 있다.
public class LightManager : MonoBehaviour
{
    public Light light;
    public float time;

    // Use this for initialization
    void Start()
    {
        light = this.GetComponent<Light>();
    }

    // Update is called once per frame
     public void Update()
    {
        if (time <= 1.0)
        {
            time += 1.0f * Time.deltaTime;
            light.intensity = Mathf.Lerp(0, 1, time);
        }
    }
}

+ Recent posts