Derse başlamadan önce, Unity’nin arayüzüne ve script yazmaya az da olsa aşina olmanız çok işinize yarayacaktır.
Öncelikle yeni bir Unity projesi oluşturun. Projeye istediğiniz ismi verin ve “Template” olarak 2D‘yi seçin.
Eğer şimdi Game paneline geçiş yaparsanız arkaplanın boğuk bir mavi renkte olduğunu göreceksiniz. İsterseniz biz bu rengi biraz açalım. Bunun için sahnenizdeki Main Camera‘yı seçip Background değerini 28,191,214 yapın:
Başta oyunun görsellerini bir şekilde kendim hazırlamayı düşünüyordum ama sonradan bu işte yetersiz olduğumu fark ettim ve lanica.co/flappy-clone/‘dan oyunun bir klonunun görsellerini aldım. Klon oyunumuzda da bu görselleri kullanacağız. Bu projeyi öğrenme amaçlı yapacağımız için sorun çıkmayacaktır. Ben proje için gerekli tüm görselleri ve sesleri bir Winrar arşivinde depoladım. Siz direkt onu indirin: https://app.box.com/s/kct22wtzp25s4bi2h1ag (Alternatif link)
NOT: Bir alttaki paragrafı okumadan bu notu okumanızın önemli olduğunu düşünüyorum. Unity’nin yeni sürümleriyle beraber Project panelinin tarzı değişti. Artık iki farklı şekilde görebiliyoruz Project panelini: tek hücreli ve iki hücreli olarak. Yeni bir proje açtığınız zaman Project paneli otomatik olarak iki hücreli şekilde gelir ama ben bu yeni stili sevmiyorum ve eski tek hücreli stili kullanıyorum. Dersi anlatırken de tek hücreli stili kullanarak anlatıyorum. Eğer herhangi bir sıkıntı yaşamak istemiyorsanız siz de tek hücreli Project paneline geçiş yapın. Bunu yapmak çok kolay: Project panelinin sağında bir kilit simgesi, onun da sağında bir menü simgesi var. İşte o menü simgesine tıklayın ve One Column Layout seçeneğini seçin:
Şimdi Project panelinde Create-Folder yolunu izleyerek Sprites adında yeni bir klasör oluşturun ve Winrar arşivindeki sprite’leri bu klasöre atın. Eğer sürükle-bırak işe yaramıyorsa Assets-Import New Asset… yolunu izleyerek tüm sprite’leri tek tek import edin.
Sonra flappy1 spritesini seçip Inspector panelinde yer alan Compression kısmını None olarak değiştirin ve alttan Apply butonuna basın. Bu işlemi flappy2 ve flappy3 spriteleri için de yapın. Eğer bunu yapmazsak kuş biraz eğim aldığında etrafında istenmeyen siyah çizgiler oluşuyor ama artık böyle bir sorun yaşamayacağız.
Kuşu Oluşturmak ve Kanat Çırpmasını Sağlamak
Projenin ilk aşamasında planım kuş objemizi oluşturmak ve ona animasyon vermek. Kuşumuzun kanat çırpma animasyonu üç kareden oluşuyor. İlk karede kanat yukarı kalkmış, ikinci karede kanat ortada ve son karede kanat aşağı inmiş vaziyette. Eğer animasyonumuzu 1-2-3-1-2-3-… diye oynatırsak kuşun kanadı yukarıdan aşağıya iner ve ardından direkt yukarıya geri zıplar. ama eğer 1-2-3-2-1-2-3-… diye zikzak yaptırarak oynatırsak kanat önce aşağı iner, sonra yukarı çıkar ve sonra yine aşağı iner ve bu böyle devam eder. Fark edeceğiniz üzere ikinci yol daha sağlıklı. Bu yüzden bu yolu izleyeceğiz.
Kuşa animasyonunu vermek için script yazacağız. Scriptin başlıca avantajı, kuşun animasyon hızını istediğimiz gibi değiştirebilmek ve animasyonun oynama sırasına karar verebilmek (1-2-3-2-1-… diye). O halde önce kuşumuzu oluşturalım. GameObject-2D Object-Sprite yolunu izleyin. Ardından “flappy1” sprite’sini Assets klasöründen tutup Sprite Renderer‘daki Sprite kısmına sürükleyin:
Bu aşamada kuş ekranınızda belirecektir. Eğer belirmemişse Scene panelinde biraz dışarı doğru zoom yapın. Ya da Hierarchy panelindeki New Sprite objesini seçip fareyi Scene paneline getirin ve klavyeden F tuşuna basın. Kamera kuşa odaklanacaktır. Şimdi Inspector panelinden New Sprite‘ın adını FlappyBird olarak değiştirin. Hemen sonrasında ise Transform componentinin sağında yer alan dişli çarka tıklayıp Reset‘e dokunarak kuşu 3 boyutlu uzayın tam merkezine (origin) yerleştirin:
Bu işlemin ardından Scene panelinde F tuşuna basarak kuşa tekrar odaklanmanız gerekebilir.
Şimdi sıra geldi kuşa animasyon vermeye. Bunun için yeni bir C# script oluşturun (Assets-Create-C# Script) ve adını KusAnimasyon koyun. Bu scripti Project panelinden tutup sürükleyerek Hierarchy‘deki FlappyBird objesine atayın. Artık scripti düzenlemeye hazırız. Scripte çift tıklayarak onu açın ve içini şöyle değiştirin:
Bu scripti hızlıca açıklamaya çalışayım. En başta 6 adet değişken tanımlıyoruz:
saniyedeKareSayisi: Bu değişkenin varsayılan değeri 10. Bunun anlamı, bir saniyede kuş animasyonundaki kareler arasında toplam 10 kere geçiş olacak. Bu değeri artırırsanız kuş daha hızlı kanat çırpar. Kendisi public bir değişken olduğu için Inspector’dan değerini değiştirerek en uygun değeri kolayca bulabilirsiniz.
4 sene önce 8 Yorum Bu yazımızda Metotların tanımı, metot çeşitleri, metot kullanımlarının nasıl yapıldığını ve bununla ilgili örnekler oluşturacağız. Öncelikle Metot ne demektir? Metot ne işe yarar? sorularının cevaplamaya çalışacağım. Metotlar belirli işlemleri yerine getiren kod bloklarıdır. Aynı kodların tekrar tekrar kullanılması gereken durumlarda büyük kolaylık sağlamaktadır. Oluşturulan metot, ismiyle çağırılarak içerisinde bulunan kod bloklarının çalıştırılması sağlanır. Metotların yapısı temel olarak şu şekildedir. Yukarıda görmüş olduğunuz yapıyı biraz inceleyelim. Metotların erişim biçiminin yazılması zorunlu değildir. Yazılmadığı takdirde private olarak kabul edilir. ama istenirse private , public , static vs.. erişim tipini belirleyebilirsiniz. Geri dönüş tipinin metot tanımlanırken mutlaka belirtilmesi gerekir. Burada metottan geriye h...
Mer haba Arkadaşlar; ilk önce unityden menu tasarım yapıyoruz.ekrana 2 buton ekliyoruuz biri sahne geçisi için digeri cıkış yapmak için .Main kameraya yeni C# scrip açıp kodlarımızı yazıyoruz. void uptade'nin altına bunları yazıyoruz; sahne arası geçiş kodu C# public void button1 () { Application.loadLevel ("sahne2"); } Cıkış kodu C# public void btncikis (){ Application.Quit(); }
Yorumlar
Yorum Gönder