unity lerp nasıl yapılır

Unity’de Lerp fonksiyonu nasıl kullanılır?

Lerp bir noktadan diğer noktaya belli bir zamanda doğrusal ölçekte gitmemizi yarayan fonksiyondur.

Bu ölçek tamamıyla doğrusal da olabilir artarak gidiyor olabildiği gibi, ayrıca Unity içerisinde bu bahsettiğimiz noktalar Vector de olabilir: -Vector3.Lerp(Vector3 a, Vector3 b, float t) kullanımı örnek gösterilebilir. Ek olarak bu değişken float tipinde de olabilir: Mathf.Lerp(float a , float b, float t) kullanımı örnek gösterilebilir.

Vector3.Lerp() 

Vector3.Lerp(Vector3 a, Vector3 b, float t) şeklinde yazılan fonksiyonumuz şu formül ile çalışır: a+ (b-a) * t  ve bu değeri “return” eder. Bu yüzden kullanım yaparken bu değeri değişmesini istediğiniz değişkene eşitlemeniz gerekir.

Örneğin objenizin pozisyonunu (0,5,0) pozisyonuna lerp işlemi uygulayarak götürmek istiyorsunuz. Bunun kodu şu şekilde olucaktır.

Eğer burdaki “lerpValue” değişkeninin değeriyle oynarsanız nasıl bir grafikle posizyon değiştireceğini görebilirsiniz. Örneğin değeri 1’e yakınlaştırdığınızda veya 1’den büyük yaptığınızda objenizin pozisyonu direkt verdiğiniz pozisyona gidecektir ama değeri 0’a yaklaştırdıkça ise yapmış olduğunuz hareket biraz daha yavaşlayıp “smooth” diye tabir ettiğimiz yumuşak geçişi elde etmiş olucaksınız.

Ufak bir ipucu: Eğer lerpValue değerinizi 0.5 yaparsanız her seferinde kalan yolunun yarısını alarak yoluna devam edecektir.

Mathf.Lerp()

Son bakacağımız fonksiyon olan Mathf.Lerp(float a , float b, float t) ise iki float değerin arasında smooth geçiş olmasını sağlar. Diyelim ki bizim bir değerimiz var:a 2 olsun. Bu değer ve biz bu değeri bir anda değil de smooth bir şekilde 4 yapmak istiyoruz bunun için ne yapabiliriz diye düşündüğünüz anlarda aklınıza hemen Mathf.Lerp() gelmeli. Örneği hemen aşağıda görebilirsiniz:

Vector3.Lerp() için söylediğimiz lerpValue değişkenine hangi değeri verdiğinizde neler olacağı kısmı aynı şekilde burda da geçerli deneyip Inspector penceresinden siz de görebilirsiniz.

Mobidictum Academy YouTube kanalımızda, son dönemin popüler oyunlarından ATM Rush’taki Lerp fonksiyonundan da bahsetmiştik. Aşağıdaki videodan izleyebilirsiniz.