Bu yazımda size unity3d’de kolayca yapılabilen hedef takip ettirme olayını resimlerle anlatmaya çalışacağım. Anlayışlı olması için herşeyi küplerden yapacağım. Bir küp hedefimiz olacak istediğimiz bir noktada belli aralıklarla küp yaratıp hedefimize doğru, yol almasını sağlayacağız. Bu yöntemi bir çok oyun türünde kullanabilirsiniz.
İlk önce küplerden saçma bir harita yaptım. Kuş bakışı bir kamera koydum ve sol alta bir küp koydum adını target yaptım GameObject>create empty’den bir boş bir gameobject oluşturup onu da sol üst köşeye koydum. Amacım sol üstte bir obje yaratıp sağdan dolaştırıp hedef objemize doğru yol almasını sağlamak
spawn adında oluşturduğumuz boş objeye de aşağıdaki scripti atıyoruz
spawn.cs
using UnityEngine; using System.Collections; public class Spawn : MonoBehaviour { // yaratık oluşması için gereken süre public float interval = 3.0f; float timeLeft = 0.0f; float timeRight = 5.0f; // spawn edilecek objeyi depolayan değişken public GameObject yaratik = null; // oluşan yaratıkların koşacağı hedef nokta public Transform destination = null; void Update () { // yeni yaratık oluşturmanın vakti gelmiş mi? timeLeft -= Time.deltaTime; if (timeLeft <= 0.0f) { // iki tane yaratık oluştur GameObject a = (GameObject)Instantiate(yaratik, transform.position, Quaternion.identity); GameObject b = (GameObject)Instantiate(yaratik, transform.position, Quaternion.identity); NavMeshAgent c = a.GetComponent() ; NavMeshAgent d = b.GetComponent() ; c.destination = destination.position; d.destination = destination.position; // yaratık oluşması için gerekli süreyi başa sar timeLeft=interval; } } }
spawn objesinin oldugu yerde hedefe gidecek objeler olusturcaz demiştik onun için bir küp ve prefab olusturuyoruz küp’e component>navigation>NavMeshAgent yolunu izleyerek oyun içinde hazır bulunan NavMeshAgent scriptini atıyoruz. ve son olarak küpü prefaba atıyoruz ve oyun içinde olusturmaya başlayacagımız için siliyoruz.
spawn objemize tıklıyoruz inspector penceresinden scriptin altında yaratık yazan yere bu oyunda yaratacagımız yaratık yani demin oluşturup sildigimiz project penceresinde duran yaratık isimli prefab objesini atıyoruz destination yazan yere ise yaratıgın nereye gidecegini yani target objemizi atıyoruz
yapacagımız son birşey kaldı o da oluşan yaratığın hangi yolu izleyerek hedefe gidecegi bunun için küpümüzün hareket edeceği terrain’e tıkıyoruz ve inspector penceresinde üstte bulunan static kutusunu işaretliyoruz ardından windows>navigation tıklıyoruz. Navigation ayarlarını yapabilecegimiz bir pencere acılıyor altta bulunan bake yazısına tıklayınca sahnede bulunan static objeleri bakeliyo yani küp static objenin üzerinden en kısa yolu bularak hedefe ulasıyor.
en son bake yapınca boyle bir goruntu olusuyor