UNITY OYUN MOTORU İLE OYUN YAPIMI

Oyunlar artık ticari amaçlarının dışında hobi olarak da yapılmaktadır. Başlangıç için seçilen Unity oyun motoru mobil,masaüstü ve konsoller için oyun yapabileceğiniz, Unity Technologies tarafından geliştirilen bir oyun motorudur.

Kullanım ve yazılım bakımından rahat bir ortam sunan Unity, modelleme araçlarıyla da bütünlük halinde çalışmaktadır. 3D oyun yazarken zbrush,3DS max gibi ortamlarda tasarladığınız modelleri sorunsuz şekilde unity ortamına aktarabilirsiniz.

Kaynak açısından da rahat bir şekilde istediğiniz kodlara ulaşmanız mümkündür. Daha çok c# ve java dilleri hakimdir.

Oyun yaparken izlenecek en uygun yollardan birisi şöyle olabilir;

– Oyun türüne karar vermek

– Araştırma yapmak

– Sahne skechleri oluşturmak ( basit karalamalar bile işinizi kolaylaştıracak)

– Algoritma oluşturmak

– Hemen başlamak ve sabırlı olmak

BUTONLAR OLUŞTURMAK

Unity ile ister motorun size sunduğu buton seçeneklerini kullanabilir, isterseniz kod yardımıyla buton oluşturabilir ya da sahneye attığınız herhangi bir nesneyi tıklanabilir butonlar haline getirebilirsiniz.

  • Java ile oluşturulmuş klasik bir buton yapısı aşağıdaki gibi görünmektedir

( Unity 5.6.6f2 sürümü ile yapılmıştır,bazı kodlar bazı sürümler için değişiklik göstermektedir);

 

function OnGUI () {

if (GUI.Button  (new Rect (Screen.width / 0.8-Screen.width/2f,Screen.height /1.2f,Screen.width/5f,Screen.width/5f), “BUTON1”))

{

//Tetiklenecek Kod Satırı

}

}

Günümüz cihazlarının ekran boyutları farklı olduğu için buton konumunu ve boyutunu direkt olarak sayılarla belirlediğimiz zaman buton sabit kalır ve ekran boyutuna göre kendini konumlamaz. O yüzden yukarıda görüldüğü gibi ekran boyutlarını alıp, verdiğimiz sayılara bölersek, ekran boyutu ne olursa olsun buton istediğimiz yerde kalır. Yukarıdaki kod bloğunun ekran çıktısı şöyledir ;

Koddaki sayıları değiştirerek butonu istediğiniz konuma ve büyüklüğe çekebilirsiniz. Bu buton tek basımlık bir butondur. İçerisindeki kodun aktif edilmesi için basıldıktan sonra parmağınızı kaldırıp tekrar basmanız gerekir. Basılı tutulduğu süre boyunca kodun çalışmasını isterseniz aşağıdaki gibi RepeatButton olarak tanımlamanız gerekmektedir;

 

function OnGUI () {

if (GUI.RepeatButton  (new Rect (Screen.width / 0.8-Screen.width/2f,Screen.height /1.2f,Screen.width/5f,Screen.width/5f), “BUTON1”))

{

//Tetiklenecek Kod Satırı

}

}

Butonlara Texture atmak için ise nesne tanımlamanız gerekir;

 

var butonresmi : Texture;

function OnGUI () {

if (GUI.RepeatButton  (new Rect (Screen.width / 0.8-Screen.width/2f,Screen.height /1.2f,Screen.width/5f,Screen.width/5f), butonresmi))

{

//Tetiklenecek Kod Satırı

}

}

Oyun tasarımınıza uygun butonu seçip istediğiniz gibi işlemek artık sizin elinizde.

  • Nesneyi buton haline getirmek

Sahnenizdeki herhangi bir objenin üstüne basıldığında kodların işlemesini istiyorsanız çok basit bir yöntem ile bunu gerçekleştirebilirsiniz.

Bunun için şu özellikleri kullancağız ;

  • OnMouseOver () // parmağınız ya da Mouse oku nesnenin üzerinde olduğu sürece çalışır
  • OnMouseUp() // nesneye tıklandıktan sonra parmağınızı ya da Mouse okunuzu kaldırdığınızda çalışır
  • OnMouseEnter() // parmağınız ya da Mouse oku nesnenin üzerinde olduğunda bir kez çalışır
  • OnMouseDrag() // parmağınız ya da Mouse oku nesneye basılı olduğu sürece çalışır
  • OnMouseDown() // // parmağınız ya da Mouse oku nesneye tıkladığı an çalışır

Örnek kullanımı şöyledir;

function OnMouseDrag ()  {

//Tetiklenecek Kod Satırı

}

Buton olmasını istediğiniz nesneye Collider atıp, bu kodların olduğu Script dosyasını direkt olarak nesneye atayın.

Artık oyun yapmaya başlamak için butonlarınız hazır. Butonlara kodlar atayarak nesneleri hareket ettirebilir, yok edebilir, animasyonlar oynatabilirsiniz. Gerisi sizin hayal dünyanız kalmış.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir