Site icon IT Tutorial

Unity ile Oyun Programlamaya Giriş -5

Unity ile Cisimlere Yapay Zeka Kazandırma

Unity ile oluşturulan 3 boyutlu cisimler normal olarak kullanıcının yönlendirmesiyle hareket ederler bunlar genel olarak First Person Controller olarak adlandırılırlar. Bunun dışında cisimlere farklı şekillerde hareket kazandırmak için cisimlere Animasyonlar hazırlanabilir ancak bu yöntemlerin hiç birinde cisimler Akıllı hareket etmezler.

Cisimlere akıllı hareket kazandırmak için javascript yazarak cisimlere belirli nesnelere karşı eğitim verebiliriz.Örneğin oluşturulan bir robot random olarak çıkan yemlerin üzerine doğru hareket etmesi akıllı bir hareket olarak adlandırılabilir.

Bunun için javaScript koduyla öncellikle Random olarak hareket uzayında yemler oluşturulup robotu buna doğru yönlendireceğiz. Şimdi yeme doğru giden cisim için yazılan javascript kodu verilecek.

this.transform.LookAt(bonus.position);

if(mesafe>10)

durum=true;

else

durum=false;

if(durum)

{

animation.CrossFade(“kos”);

transform.Translate(new Vector3(0,0,1));

}

Else

{

animation.CrossFade(“yuru”);

transform.Translate(new Vector3(0,0,.1));

}

mesafe=Vector3.Distance(transform.position,bonus.position);

status.text=”Mesafe : ” + mesafe;

if(mesafe<=2)

{

bonus.transform.position=new Vector3(Random.Range(0,100),0,Random.Range(0,100));

}

 

Bu javascript kodunu incelediğimiz zaman random olarak bir koordinat oluşturulup oraya yem atanıyor. Daha sonra bu kordinati robotun gideceği yön olarak gösteriyoruz

(this.transform.LookAt(bonus.position); ) .

Ardından uygulamayı çalıştırdığımız zaman robot gerçekten de yeme doğru hareket ettiğini göreceğiz.

 

 

 

 

 

 

 

Unity de Network

Unity platformunda network ile ilgili işlemler Network sınıfı altında toplanmıştır. Ağda meydana gelen bir çok olayda önceden network sınıfında belirlenmiş fonksiyonlar koşar. Bu fonsiyonların implementesini biz gerektiği şekilde yaparız.

OnPlayerConnected : Server tarafında çağrılır .Yeni bir bilgisayar oyuna girdiğinde bu fonksiyon çağrılır.

OnServerInitialized :Server kurulumu tamamlandığında çağrılır. Serverda çağrılır.

OnConnectedToServer :Client tarafında çağrılır.Client başarıyla server a bağlandıysa  çağrılır.

OnPlayerDisconnected: Server tarafında çağrılan bu fonksiyonda bir oyuncunun çıkması durumunda çalışır.

OnDisconnectedFromServer: Client tarafında serverla bağlantı koptuğunda server tarafında ise bağlantı sonlandığında çağrılır.

OnFailedToConnect: Client tarafında bağlantı denemesinin başarısız olduğunda çalışır

OnFailedToConnectToMasterServer:Client da yada serverda master server a bağlanmada bir hata olması durumunda çağrılır.

OnNetworkInstantiate:Herhangi bir obje (nesne) networkta Network.Instantiate fonksiyonu ile kopyalandığında çağrılır.

OnSerializeNetworkView:Network view tarafından takip edilen nesnelerin durumlarını senkronize ederken kullanacağımız fonksiyondur. Bu fonfsiyonun içinde nesnenin yeni durumunun alınması ve gönderilmesi işlemleri yapılabilir.

Bu fonksiyonların kullanımı ise yazdığımız script türüne göre syntax da küçük değişiklik olmakla birlikte genel olarak bu isimlerde fonksiyon yazarak içini doldurulması şeklindedir.

Oracle Exadata SQL Server Goldengate Weblogic EBS ve Linux konusunda aşağıdaki konularda 7×24 Uzman Danışmanlara yada Eğitimlere mi
İhtiyacınız var mehmet.deveci@gridgroup.com.tr adresine mail atarak Bizimle iletişime geçebilirsiniz.

– Oracle Veritabanı Danışmanlığı
– Oracle Veritabanı Bakım ve Destek
– Exadata Danışmanlığı
– Exadata Bakım ve Destek
– SQL Server Veritabanı Danışmanlığı
– SQL Server Veritabanı Bakım ve Destek
– Goldengate Danışmanlığı
– Goldengate Bakım ve Destek
– Linux Danışmanlığı
– Linux Bakım ve Destek
– Oracle EBS Danışmanlığı
– Oracle EBS Bakım ve Destek
– Weblogic Danışmanlığı
– Weblogic Bakım ve Destek
– Oracle Veritabanı Eğitimleri
– Oracle VM Server Danışmanlığı
– Oracle VM Server Bakım ve Destek
– Oracle EPPM Danışmanlığı
– Oracle EPPM Bakım ve Destek
– Oracle Primavera Danışmanlığı
– Oracle Primavera Bakım ve Destek
– Oracle Eğitimleri
– SQL Server Eğitimleri
– Goldengate Eğitimleri
– Exadata Eğitimleri
– Linux Eğitimleri
– Oracle EBS Eğitimleri
– Oracle VM Server Eğitimleri
– Weblogic Eğitimleri
– Oracle EPPM Eğitimleri
– Oracle Primavera Eğitimleri

Exit mobile version