Animator Kullanımı

      Animator Kullanımı

      Direk konuya giriyorum ;

      Öncelike animasyonlu karakter buluyoruz ... (Başka karakterlerin animasyonunuda alabilirsiniz)

      1 - İlk önce karakteri Unity'e atalım.



      2 -Attığımız karaktere tıklayıp "Inspector" Panelinden "Rig" Kısmına giriyoruz .



      3 - "Animation Type" Seçeneğini > "Humanoid" Yapıp, " Apply" Butonuna basıyoruz .



      4 - Project kısmına gelip sağ click yapıyoruz, "Create > Animator Controller" Diyoruz .



      5 - Oluşturduğumuz "Animator Controller"e çift tıklıyoruz, Karakterin içindeki animasyonu içine sürüklüyoruz .



      6 - Asıl yani kullanıcağımız karakterde "Animator" özelliği olması gerek, içine atıyoruz.



      Oyunu başlattığımızda "Animator" içinde ki ilk animasyon "Default"dur. Yani varsayılan, renkli butonda gösterilir. Başlattığımızda ilk oynatılacak animasyondur. Bir nevi IDLE, yani duruş animasyonu için kullanılırız.

      Gelelim kullanışa burayı kısa kesicem yani tek animasyon için mantıkla yürürseniz zaten gerisini halledersiniz .

      "Animator" > "Parameters" Yerinden, Yeni bool açıyoruz.



      Adını istediğin gibi yapabilirsiniz ;


      Default(Ana) animasyonumuza gelip, Sağ tıklıyıp, "Make Transition" Seçeneğine basıyoruz .



      Tıkladığımız zaman bir işaret çıkıcak, adını siz koyun artık :) Ben bağ diyorum, diğer animasyonumuza tıklıyoruz ve arasında bağ kurmuş oluyoruz .



      Bağ'ya tıklayıp ; Inspector paneline geliyoruz, "Conditions" kısmını ayarlıyoruz ;



      Bu yaptığımız işlem : Bool'a attack ismini verdim mesela, Attack bool'u aktifse Default animasyonunu oynatmayıp bırakıp diğer animasyona geçiş yapıcak bir nevi dururken, yürüme gibi düşünün.

      İsterseniz, true değerini falsede yapabilirsiniz :


      Haliyle bool true ise yürü, false ise dur işlemini yapıcaz. 2 animasyon arasında bu şekilde bağ kurabilirsiniz bizim yaptığımız sadece iletme oldu yani default animasyonundan diğer animasyona geçiş extra olarak tam akisinide yapabiliriz yani ondan default animasyonuna ;



      Åžimdi yeni bir kod açalım ;

      java > var kontrol : Animator;
      c# > public Animator kontrol;

      (Oyun içinde bu kontrol'lerin içine Karakterimizi atıcaz animator'u alması için).

      Update kısmına gelip ;

      if(Input.GetMouseButton(0)) { // sol click basıyosak
      kontrol.SetBool("boolAdı", true); // yani kontrol(Animator), SetBool(Boollar) "boolAdı", true veya false); ben Attack diye açtım yani > kontrol.SetBool("Attack", true); // Attack bool'unu true yapıcam, haliyle diğer animasyona geçiş yapmış olucaz.
      }
      else
      {
      kontrol.SetBool("Attack", false); // basmıyosak, bool'u false yapıcak yani Default animasyonu oynucak
      }

      Bu şekilde çoğaltarak animasyonlarını oynatabilirsiniz, Karakterlerin kesinlikle "Rig"leri Humanoid olmalıdır. Aksi takdirde çalışmaz. Kolay gelsin
      Personal, coderbing.com/
      Kuş modeli 3d, rigli(kemik sistemli)yse eğer yinede "Humanoid" seçip direk Apply dersen bir sorun olmaz, "Configure..."nin sol tarafında X olur insan modeli olmadığı için bunu problem etme animasyonunu oynatabilirsin, benimde modelim var Cin Ali türünden kemik sistemi unityle uyumlu değil fakat Humanoid'e ayar çekmeden direk yapınca bir problem olmuyor, Animasyon yapıp ikinci kuş modelini attığında eklentide ki resim gibi yaparsın yani Humanoid kullanmana gerek kalmaz, Kolay gelsin
      Personal, coderbing.com/