Oyunlarınızı aydınlatmak için kendi aydınlatma efektlerinizi nasıl yapacağınızı öğrenin.
Dinamik aydınlatma ve gölgeler, Godot oyunlarınızın görsel kalitesini ve oynanış deneyimini yükseltebilir. Oyun dünyanızı daha sürükleyici ve ilgi çekici hale getirerek derinlik, atmosfer ve gerçekçilik katarlar.
Godot'un CanvasModulate ve PointLight2D gibi güçlü özellikleriyle, dinamik aydınlatma ve gölgeler oluşturmak ve özelleştirmek kolay bir iştir.
Godot Oyununu Kurmak
Dinamik aydınlatmaya dalmadan önce, temel bir 2D oyun kurun. Godot oyun motoru. Yeni bir sahne oluşturun ve bir KarakterBody2D oyuncu için.
Bu makalede kullanılan kod bu makalede mevcuttur. GitHub deposu ve MIT lisansı altında ücretsiz olarak kullanabilirsiniz.
İçinde KarakterBody2D, ekle Çarpışma Şekli2D dikdörtgen bir şekle sahip ve Sprite2D oyuncunun karakterini temsil etmek için. Ayrıca, kullanarak bazı platformlar oluşturun. StatikBody2D düğümler.
Şimdi, GDScript'i kullanarak oynatıcı hareketini ve ekran sınırlarıyla çarpışmayı gerçekleştirin:
extends CharacterBody2D
var speed = 200
func _physics_process(delta):
var velocity = Vector2()if Input.is_action_pressed('ui_right'):
velocity.x += 1if Input.is_action_pressed('ui_left'):
velocity.x -= 1if Input.is_action_pressed('ui_down'):
velocity.y += 1if Input.is_action_pressed('ui_up'):
velocity.y -= 1
velocity = velocity.normalized() * speed
move_and_collide(velocity * delta)
Bu kod ile oyuncu, ekran sınırları içinde kısıtlanırken sola, sağa, yukarı ve aşağı hareket edebilir.
Sahnenin Geri Kalanını Karartın
Dinamik aydınlatma efekti elde etmek için ışık kaynakları tarafından aydınlatılan alanlar dışında sahnenin geri kalanını karartmanız gerekir. Bunu Godot's kullanarak yapabilirsiniz. TuvalModülasyon özellik.
extends Node2D
const DARKNESS = 0.7
func _ready():
var canvas_modulate = CanvasModulate.new()
canvas_modulate.color = Color(0, 0, 0, DARKNESS)
add_child(canvas_modulate)
Bu komut dosyasını yenisine ekle Düğüm2D sahnenin köküne eklendi. bu TuvalModülasyon düğümü, ışıklarla aydınlatılan alanlar dışında tüm sahneyi karartan yarı saydam bir siyah kaplama uygulayacaktır.
Sabit bir değişken oluşturun KARANLIK, sahneye uygulanan karanlığın yoğunluğunu belirler. değerini ayarlayarak KARANLIK, ışıklarla aydınlatılmadığında sahnenin ne kadar karanlık olacağını kontrol edebilirsiniz. Daha yüksek bir değer, daha karanlık bir sahne ile sonuçlanırken, daha düşük bir değer, sahneyi daha az karanlık yapar.
Hafif Gölge Yap
Gölge oluşturmak için ayarlamanız gerekir LightOccluder2D ışığı engellemesi gereken engellerin üzerindeki düğümler. Örneğin, gölge yapması gereken duvarlarınız, platformlarınız veya başka nesneleriniz varsa, LightOccluder2D her birine
Yeni bir tane oluştur LightOccluder2D düğümü kaldırın ve oyununuzdaki engelin şekline uyması için şeklini ayarlayın. Ayrıca kapatıcının özelliklerini de ayarlayabilirsiniz. çokgenler Ve segmentler gölge oluşturma davranışına ince ayar yapmak için.
Çok Yönlü Işıklar Ekleyin
Şimdi bir ekleyin NoktaLight2D ışık kaynağınızı temsil edecek bir dokuya sahip düğüm. Nokta ışıkları her yöne ışık yayar ve gerçekçi bir aydınlatma etkisi yaratır.
extends PointLight2D
var light_color = Color(1, 1, 0.8)
func _ready():
energy = 2.5
color = light_color
tarafından yayılan ışığın aralığını ve rengini kontrol etmek için özellikleri özelleştirebilirsiniz. NoktaLight2D.
Ayrıca ışık kaynağınızın şeklini ve görünümünü tanımlamak için özel bir ışık dokusu oluşturabilir veya içe aktarabilirsiniz. Oluşturmak istediğiniz atmosfere bağlı olarak basit bir daire veya daha karmaşık bir şekil olabilir.
Dokuyu uygulamak için NoktaLight2D düğüm, şu adımları izleyin:
- seçin NoktaLight2D sahne ağacındaki düğüm.
- Denetçi panelinde, Doku özelliğinin altındaki Doku özelliğini bulun. Doku bölüm.
- Boş doku kutusuna tıklayın ve dosya tarayıcısından istediğiniz hafif dokuyu seçin.
Artık ışık kaynağınız, dinamik aydınlatmanıza ve gölgelerinize görsel olarak çekici bir dokunuş katarak, tanımlanmış şekil ve renkte ışık yayar.
Ek Özellikler Dahil
Dinamik aydınlatma ve gölgelerin temel kurulumuna ek olarak, görsel çekiciliği ve oyun deneyimini daha da yükseltmek için çeşitli ek özellikler sunabilirsiniz. İşte dikkate alınması gereken bazı fikirler:
Hafif Animasyonlar
Animasyonlar ekleyerek ışık kaynaklarınıza hayat verin. Örneğin, meşaleler veya mumlar için titreyen ışıklar oluşturabilir, bir kamp ateşinin hareketini simüle edebilir ve hatta büyülü kürelere titreşimli bir efekt ekleyebilirsiniz.
Gündüz-Gece Döngüsü
Oyun içi süre ilerledikçe ışıkların yoğunluğunu ve rengini kademeli olarak değiştiren dinamik bir gündüz-gece döngüsü uygulayın. Bu özellik, daldırmayı artırabilir ve günün saatine bağlı olarak farklı ruh halleri yaratabilir.
Işık Solması
Daldırmayı bozabilecek ani geçişlerden kaçınmak için ışık yoğunluğu değişiklikleri için yumuşak geçişler oluşturun. Işıkları kademeli olarak açıp kapatarak daha doğal ve görsel olarak hoş bir etki elde edebilirsiniz.
Dinamik gölgeler
Statik gölgeler kullanmak yerine hareketli nesnelere veya karakterlere dinamik gölgeler eklemeyi düşünün. Bunu, karakterlerin hareketini takip eden ve gerçek zamanlı gölge güncellemeleri yanılsaması veren ek ışık kaynakları kullanarak yapabilirsiniz.
Telif Hakkı Olmayan Ses Efektleri
Ses efektleri, oyun dünyanızı canlı ve dinamik hissettirmede çok önemli bir rol oynar. Dahil etmeyi düşünün telif hakkı içermeyen ses efektleri dinamik aydınlatmanızı ve gölgelerinizi tamamlamak için.
Dinamik Aydınlatma ve Gölgeler İçin En İyi Uygulamalar
Dinamik aydınlatma ve gölgeler oyununuzu büyük ölçüde geliştirebilirken, yanlış uygulama performansı ve görsel kaliteyi olumsuz etkileyebilir. Akılda tutulması gereken bazı en iyi uygulamalar şunlardır:
Işık Kaynaklarını Optimize Edin
Aktif ışık kaynaklarının sayısını, istediğiniz görsel etki için gerekli olan minimumla sınırlayın. Aşırı ışık, özellikle düşük kaliteli cihazlarda performansı önemli ölçüde etkileyebilir.
Hafif Pişirme Kullan
Statik sahneler veya nesneler için, performansı artırmak üzere aydınlatma bilgilerini pişirmeyi düşünün. Hafif pişirme, aydınlatma verilerini önceden hesaplayarak oyun sırasında gerçek zamanlı hesaplamalara olan ihtiyacı azaltır.
Basit Oklüderleri Tercih Edin
kurarken LightOccluder2D düğümler, mümkün olan her yerde basit şekilleri tercih edin. Birçok köşesi olan karmaşık tıkayıcılar, performans sorunlarına yol açabilir. Mümkün olduğunda tıkayıcılar için basit çokgenler veya çizgi parçaları kullanın.
Toplama ve Katmanlama
Işıkların ve gölgelerin yalnızca görünür alanlar için hesaplanmasını sağlamak için Godot'un görünürlük ve katmanlama sisteminden yararlanın. Ekran dışındaki ışıkları ve gölgeleri ortadan kaldırmak, performansı önemli ölçüde artırabilir.
Bu en iyi uygulamaları izleyerek ve ek özellikleri dikkatli bir şekilde uygulayarak, genel kaliteyi yükselten çarpıcı ve büyüleyici dinamik aydınlatma ve gölgeler oluşturabilirsiniz. platform oyununuz.
Dinamik Aydınlatma ve Gölgelerle Godot Oyunlarını Daha İlgi Çekici Hale Getirmek
Dinamik aydınlatma ve gölgeler, oyun dünyanıza hayat verir. Daha sürükleyici ve atmosferik bir ortam yaratarak oyuncuları oyun deneyiminin derinliklerine çekiyorlar. Işık ve gölgenin etkileşimi duyguları harekete geçirebilir, tonu ayarlayabilir ve oyununuzun görsel hikaye anlatımını geliştirebilir.
İster gizemli karanlık bir zindan, ister mehtaplı sakin bir gece olsun, dinamik aydınlatma oyunu zenginleştirir ve oyuncular üzerinde kalıcı bir etki bırakır.