• Unity UI (Arayüz) Sistemi

    GÜNCELLEME (30.12.2019): Kod C#’a çevrildi.

    Hepinize yine ve yeniden koca bir merhaba,

    Yazılarımın giriş cümlesi o kadar klişe hale geldi ki her derste girişi nasıl değişik bir hale sokabilirim diye düşünmüyor değilim. Ama bir saniye; konumuz bu değil! Bu dersimizde Unity 4.6 sürümü ile gelen yeni UI (user-interface)(arayüz) sistemini inceleyeceğiz.

    Twitter’da da bolca dile getirdiğim üzere yeni sistemi gerçekten çok sevdim. Sistemin güzel yanları daha az draw call harcaması, multi-touch desteklemesi, 3 boyutlu arayüz yapmayı mümkün kılması ve görsel olarak düzenlenebilmesi. Yani yeni sistemle birlikte artık arayüzü çizdirirken kod yazmanıza gerek yok.

    Hazır mısınız? Harika! O halde derse başlıyorum.

    NOT: Ders boyunca yapacağımız örnek uygulamaları içeren örnek projeyi indirmek için tıklayın: https://www.dropbox.com/s/b64v7wsvbpnth05/UI%20Ders.rar?dl=0

    (daha…)
  • Hepinize merhabalar,

    Twitter’da da paylaşmıştım; oyunlarla alakalı olmayan çok ufak bir ders paylaşacağım. İşte bu ders o ders 😀

    Böyle bir paylaşımda bulunuyorum çünkü bu bilgi benim zaman zaman aradığım bir bilgiydi. Windows’un son sürümlerinde Printscreen tuşuna bastığınız vakit ekran görüntüsü alırsınız ama bu görüntüde fare imleci çıkmaz. Bazı durumlarda fare imlecinin çıkması sizin için çok önemli olabilir. Böyle bir durumda bu işi yapan bir program yükleyebilirsiniz. Ama yok ekstra bir program yüklemekle uğraşamam diyorsanız (ben) o zaman bu bilgi işinize yarayabilir.

    (daha…)

  • GÜNCELLEME (28.09.2019): Örnekteki kodların bir kısmı güncellendi.

    Hepinize merhabalar,

    Yeni bir Unity 3D örneğiyle karşınızdayım. İsminden de anlaşılacağı üzere bu bir infinite runner oyunu örneği. Örnekteki tüm kodlar C# dili ile yazıldı ve olabildiğince comment’lendi. Örnek hem PC hem de mobil platformlarda sorunsuz çalışmakta (bende sıkıntı çıkmadı). Kontroller tasarlanırken Temple Run oyunu baz alındı.

    Buyurun size örnekten bir resim:

    temple run

    Linkler ve açıklamalar için yazının devamını okuyabilirsiniz…

    (daha…)

  • Unity Infinite Road Örneği

    GÜNCELLEME (22.09.2019): Örnek Unity 5 ve sonrasını destekleyecek şekilde güncellendi ve araba script’inde iyileştirmelere gidildi.

    Hepinize yine ve yeniden merhaba,

    Bir başka Unity3D dersiyle karşınızdayım. Bu sefer bir şeyler anlatmayacağım, yapmış olduğum bir örneği paylaşacağım. Bu örnek oyunda bir arabayı dümdüz bir asfalt yolda ilerletiyoruz ve yol asla bitmiyor (infinite road). Infinite road yapmak için elbette çeşitli yollar vardır ve benimkisi de bunlardan biri.

    Eğer merak ettiyseniz alın size örnekten bir resim:

    1

    Daha fazla açıklama ve örneğin linkleri için yazının devamını okuyabilirsiniz…

    (daha…)
  • Unity Sıkça Sorulan Sorular (S.S.S)

    SON GÜNCELLEME: 23.05.2020

    • Unity’i ücretsiz olarak nereden indirebilirim?

    Tabi ki kendi sitesinden: http://unity3d.com/unity/download

    • Unity ücretsiz mi?

    Yıllık geliriniz 100.000$’dan az ise ücretsiz. Aksi taktirde, eğer yıllık geliriniz 200.000$’dan az ise Plus sürümü, daha çok ise Pro sürümü kullanmak zorundasınız. Bu sürümlerin ücretleri ve sunduğu ilave özellikleri şuradan görebilirsiniz: https://store.unity.com/compare-plans

    Free sürüm ile sadece PC’ye değil, aynı zamanda Android’e, iOS’a, Windows Phone 8.1’e ve WebGL’e de oyunlarınızı ücretsiz bir şekilde çıkarabilirsiniz. iOS’a build almak için Mac bilgisayar, Windows Phone 8.1’e build almak için ise minimum Windows 8 gereklidir haberiniz ola.

    • Free (Personal) sürümde yaptığım oyunları yayınlayabilir ve onlardan para kazanabilir miyim?

    Evet! Free (Personal) sürümde oluşturduğunuz oyunlardan dilediğinizce para kazanabilirsiniz. Bu paradan Unity Technologies’e tek kuruş komisyon ödemiyorsunuz. Ancak yukarıda da bahsettiğim gibi, yıllık geliriniz 100.000$’ın üzerindeyse Free sürümü kullanamazsınız.

    (daha…)
  • GÜNCELLEME (01.09.2018): Kodlar C#’a çevrildi ve OnLevelWasLoaded fonksiyonu, SceneManager fonksiyonları ile değiştirildi.

    Hepinize merhaba,

    Bu dersimizde, Unity 3D‘de bir objenin sahneler (scene) arası geçiş yapmasını ve ne olursa olsun o objeden aynı anda sadece bir tane olmasını nasıl sağlayacağınızı göreceğiz.

    Örneğin oyununuz çok zor bir runner oyunu ve oyuncu ortalama 5-10 saniyede bir ölüp duruyor. Oyuncu ölünce Application.LoadLevel ile bölüme restart atıyorsunuz diyelim. Eğer oyununuzun bir arkaplan müziği varsa her restart atışınızda bu müzik başa saracaktır ve kısa bir süre sonra bu oyuncuyu gıcık edecektir. Onun yerine oyuncu ölüp bölüme restart atılsa bile müziğin kaldığı yerden devam etmesini istiyorsunuz diyelim. İşte burada iki prensip bir arada kullanılmakta:

    1- Müzik objesi scene’ler arası geçişte yok olmuyor, böylece müzik kaldığı yerden çalmaya devam ediyor

    2- Bölüme restart atınca müzik objesinden elinizde iki tane oluyor: birisi önceki scene’den gelen ve çalmaya devam eden müzik objesi, öteki ise scene’e restart atınca sıfırdan oluşan müzik objesi. Bu sıfırdan oluşan müzik objesinin çalmasını istemiyoruz (singleton prensibi)

    Anlayacağınız üzere, singleton prensibi bir objeden aynı anda sadece bir tane olmasını (ve bu objenin de scene’ler arası geçiş yaparken bizimle gelen obje olmasını) sağlar. Saydığım bu iki özelliği de oyununuzda uygulamak çok basit.

    (daha…)
  • NOT: Unity’nin yeni UI sistemi otomatik olarak multi-touch desteklediği ve OnGUI‘ye göre daha performanslı çalıştığı için, artık OnGUI veya GUI Texture kullanmak yerine UI sistemini kullanmanızı öneririm.

    Hepinize merhaba,

    Unity’nin OnGUI fonksiyonuyla oluşturulan arayüz elemanları (butonlar, sliderlar vb.) ve GUI Texture‘larla oluşturulan butonlar multi-touch desteklemez. Yani diyelim ekranda iki buton varsa, bu ikisine aynı anda basamazsınız çünkü ekranda birden çok parmak olduğunda GUI elemanları düzgün çalışmazlar. Örneğin araba oyunlarında direksiyonu tutarken bir yandan da gaza basabilmek için butonlarınızın multi-touch desteklemesi gereklidir.

    (daha…)

Son Yorumlar