Unity3D oyununda güneşi otomatik hareket ettirmek

Bu makalede Unity3D oyun sahnesinde yer alan güneşi nasıl otomatik hareket ettireceğimizi inceleyeceğiz.

Unity3D oyununda sahnenin aydınlanmasını sağlayan ışık kaynağı yani güneş aslında sahnede yeralan Directional Light nesnesidir.

Bu makalede Directional Light nesnesini gündüz ve geceyi oluşturacak şekilde nasıl hareket ettireceğimizi göreceğiz.

Hemen Unity3D açalım ve yeni bir proje oluşturalım (ben projeye GunesDogudanDogarBatidanBatar ismini verdim)

Unity3D oyun projesi oluşturma

Eğer Directional Light nesnesini Hierarchy panelinden seçip, Rotation değerleri ile oynayarak döndürecek olursak, sahnemizin gündüz / gece geçişleri gibi aydınlanıp / karardığını görebiliriz.

Unity3D oyun projesinde Directional Light ile güneş yapma

Yapmamız gereken, bir C# Script oluşturup, Directional Light nesnesine atamak ve bu dönüşü programatik olarak yaptırmak;

Hemen Hierarchy panelinde Directional Light seçili iken Inspector panelinde Add ComponentNew ScriptSunController.cs yazıp Enter tuşuna basalım.

Yeni oluşturduğumuz SunController.cs dosyasını açalım ve içine aşağıdaki kodları yazalım;

Böylece oyun başladığı andan itibaren güneş (Directional Light) otomatik olarak dönmeye ve gece / gündüz etkisi oluşturmaya başlayacak.

Gece ve gündüz geçişinin hızı ile oynamak isterseniz koddaki 0.01f değeri ile oynamanız gerekiyor

Not: Bu makaleyi yazarken internette yaptığım araştırmalardan ve bulduğum kod örneklerinden, yöntemlerden de faydalandım :)

blog comments powered by Disqus

Engin Polat hakkında

Senior Software Engineer, @Microsoft

Ada ve Ege'nin babası ;)

Kategoriler

İstatistik

Makale Adedi: 484

Creative Commons Lisansı