Popüler Yayınımıza da Göz Atabilirsiniz
Unity ile Arkaplan Rengini Sürekli Değiştirmek Color.Lerp
- Bağlantıyı al
- X
- E-posta
- Diğer Uygulamalar
Unity'de Image , Sprite veya kamera rengini yumuşak , hafif geçişler yaparak değiştirmeyi ve güzel farklı bir görünüm yapıp elde etmeyi sizlere göstereceğim. Bu işlem için Color.Lerp ' den faydalanıyoruz. Peki Color.Lerp nedir? Ne işe yarar? Nasıl kullanırız?
Bunun için örnekler göstereceğim ayrıca size scripti de ücretsiz olarak paylaşacağım.
Color duzenlenmis_renk = Color.Lerp(mevcut_renk , hedef_renk , deger);
Deger değişkeni 0 ile 1 arasında bir float değer olmalı. Eğer sürekli bir renk değişimi istiyorsanız. Update , FixedUpdate veya bir IEnumerator içinde çalıştırabilirsiniz.
mevcut_renk = Color.Lerp(mevcut_renk , hedef_renk , deger);
Bu şekilde yaparak da belli rengi sürekli yumuşatabilirsiniz.
Bu fonksiyona göre mevcut renginiz ve hedef renginiz arasında belirlediğiniz renge göre bir renk belirliyor ve onu düzenlenmiş renk olarak uyguluyor. Peki nasıl yapıyor?
Bir sayı doğrusu düşünelim. Mevcut rengimize 0 , hedef renge 1 diyelim. Eğer değerimizde örneğin 0.5f ise düzenlenmiş değer 0.5f olacaktır. 0.3f ise 0.3f olacaktır. Aslında oran mantığı ile çalışıyor. Güncellediğimiz değeri tekrar lerp edersek bu sefer 0.5f ile 1f arasında oran oluşur değerimizde 0.5f olduğu içi 0.75f olacaktır. Yani mecut ve hedef rengin ortasında vermiş olduğunuz değere göre oran yapıyor sürekli. Bu da işlemi yumuşatıyor. Eğer değerimiz ne kadar 1'e yakın olursa o kadar hızlı olur. Ne kadar 0'a yakın olursa o kadar yavaş olacaktır.
Ayrıca işlem sürekli olduğunda sayı doğrusu küçüldüğü için renk değişimi de göze farklı gelmeyecek şekilde değişecektir.
Scripti buradan indirebilirsiniz: https://github.com/RehaStudio/ChangeColorContinuous
- Bağlantıyı al
- X
- E-posta
- Diğer Uygulamalar
Yorumlar
Yorum Gönder