Merhaba arkadaşlar. Önceki yazılarımda sizlere nasıl bir resim hedefine artırılmış gerçeklik uyguladığımızı anlatmıştım. İlgili yazıya ulaşmak için BU BAĞLANTIYI kullanabilirsiniz.
Bu yazımda da sizlere sahne değişimini anlatmaya çalışacağım.
VİDEOLU ANLATIM VE KODLAR YAZIMIN EN ALTINDADIR
Peki sahne değiştirme işimize nasıl yarayacak?
Örneğin hayvanları anlatan bir proje yapacağımızı varsayalım. Dünyada çeşit çeşit hayvan var. Memeliler, yumurtlayarak çoğalanlar , sürüngenler vb. gibi kategorilerde bir çok hayvan var. Eklediğimiz butonlar sayesinde bu sınıflandırmayı projemize de uygulayabiliriz.
İlk olarak;
Unity’i açalım ve bir proje oluşturalım. Projemize izin verdikten sonra uygulamamızın ayarlarını yapalım. Resim hedefimizi ve 3 boyutlu nesnemizi ekleyelim. Ardından başka bir sahne oluşturup aynı işlemleri o sahneye de oluşturalım. Burada dikkat edilmesi gereken husus sahnelere verilen isimdir. (Buraları BURADAKİ YAZIMDA detaylı olarak açıkladığım için hızlıca geçiyorum.)
Sıra buton eklemeye geldi.
Hierarchy menüsü altına gelip sağ tık/UI/Button eklememiz gerekiyor. Bu botunu inspector menüsünü kullanarak özelleştirmeleri yapabilirsiniz. Buton eklediğimiz sahnemizi kaydettikten sonra aynı işlemleri diğer sahnemize de uygulayalım.
Tüm görsel öğelerimizi konumlandırdıktan sonra sıra kodlarımızı yazmaya geldi. Project menüsüne gelip sağtık/C# script oluşruyoruz. Ardından aşağıdaki kodları yazmamız gerekiyor.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class SahneDegis : MonoBehaviour
{
public void sahnedegis(string sahne)
{
SceneManager.LoadScene(sahne);
}
Bu kodlarımzı yazdıktan sonra hierarchy menüsne gelip sağ tık+Game Object oluşturmamız gerekiyor. Bu objenmizin adını “kodlar” olarak düzenleyebiliriz.
Ardından eklediğimiz butana tıklamamız gerekiyor, kodları eklememiz için. Butona tıkladıktan sonra sağ tarafda inspectör menüsü aktif hale gelecek. Bu kısımda on click seçeneğinden, yani tıklandığında çalışacak olan kodları eklemiz gerekiyor. “+” seçeneğine tıklayalım. “none(Object)” seçeneğinde boş bir alan oluştuğunu göreceksiniz. Bu alana hierarchy menüsünde oluşturduğumuz boş obje vardı. İçerisine kodlarımızı sürükleyip bırakmıştı. İsmini de kodlar olarak değiştirmiştik. Bunu “none(Object)” seçeneğinde oluşan boş alana sürükleyip bırakmamız gerekli.
Ardından tıklandığında çalışacak olan fonksiyonu seçmemiz gerekecek. Bunu da “no function” seçeneğini genişletip “SahneDegis” fonksiyonunu seçerek yapmamız gerekiyor
“Sahnedegis(string) ///String metinsel veri taşıyan değişken türüdür. ///” .
Değşkenler hakkında detaylı anlatım için bu yazımı okuyabilirsiniz.
Fonksiyonumuzu seçtikten sonra bir değişken ismi girmemiz gerekiyor fonkisyonun altında yer alan bölüme. Bu bölüme sahnelerimize verdiğimiz isimlerin aynısını buraya yazmamız gerekiyor. Örneğin biz sahne1’de isek oraya “sahne2” yazmalıyız. Aynı işlemleri de diğer sahne için gerçekleştirmeliyiz.
Daha detaylı bir anlatım için aşağıdaki videoyu izleyebilirsiniz.
ÖNEMLİ NOT
Unity her sürümünde kütüphanelerini güncellemektedir. Bu yazımda ben 18.1.6f1 sürümünü kullandım. Eğer kodlarda hata verirse kullandığınız sürümü yazarsanız ilgili kodu yazmanıza yardımcı olabilirim.
0 Yorum