2 Haziran 2016 Perşembe

UNITY LERP FONKSİYONU

Unity de Lerp() fonksiyonu doğrusal ara değer hesaplamayı sağlar.

1. Parametre Başlangıç
2. Parametre Bitiş
3. Parametre Yüzdesel Oran'ı temsil eder

Örnek olarak 

float result = Mathf.Lerp (3f, 5f, 0.5f); 

gibi bir kodda 3 ile 5 rakamları arasında ki rakamlar üzerinde 0.5 oranında (%50) yani tam ortasını bulması isteniyor.Burada result değeri 4 olarak karşımıza çıkacaktır.

float result = Mathf.Lerp (05, 0.2f); 

Bu kodda ise 0 ile 5 arasında 0.2 oranında (%20) bir bölme yapacaktır.Yani result değeri 1 olarak karşımıza çıkar.

Ayrıca bu işlemi Vector üzerinde de uygulayabiliriz.

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);

Burada ilk vector ile ikinci vector'ü x ler ayrı y ler ayrı z ler ayrı şekilde verilen oranla tek tek düzenliyor.Yani

from  x=1 , y=2 , z=3
to      x=5 , y=6 , z=7

From daki x ile to da ki x değerleri yüzde 75 oranında bölünmeye tabi tutulursa sonuç 4 olacaktır.

From daki y ile to da ki y değerleri yüzde 75 oranında bölünmeye tabi tutulursa sonuç 5 olacaktır.

From daki z ile to da ki z değerleri yüzde 75 oranında bölünmeye tabi tutulursa sonuç 6 olacaktır.

Bu işlemin kullanım amacı oldukça çoktur.Şimdilik örnek amaçlı kod yayınlayacağım.İlerleyen zamanlarda açıklama ekleyeceğim.

void Update ()
{
    light.intensity = Mathf.Lerp(light.intensity, 8f, 0.5f* Time.deltaTime);}





Hiç yorum yok:

Yorum Gönder