Birden fazla varlık üzerinde bir spot ışığı sağlayan bir 2D "spot ışığı" efekti oluşturmak istiyorum. Yani, birkaç sprite meşaleler tutuyormuş gibi. Tek bir varlık için (bir spot ışığı), bir degrade hareketli grafiğinin üzerine bindiğim ve o noktadaki merkez noktası kovalamasının olduğu bir teknik kullanıyorum. Bu teknik tek bir spot ışığı için iyi çalışır. İşte neden bahsettiğimi gösteren bir ekran görüntüsü:
Tek Spot Işığı - Çalışır
Karşılaştığım sorun, bu tekniğin birden fazla varlığı kapsamaması. Başka bir spot görüntüyü kaplarsam birkaç sorunla karşılaşırım. Simüle edilmiş bir ekran görüntüsü:
Birden Çok Spot Işığı = Sorun
En belirgin sorun görünür köşelerdir. Bu, spot ışığı görüntüsünü tüm seviyeyi kapsayacak şekilde devasa yaparak çözülebilir, ancak bu doğru hissetmez. İkinci ve daha zor olan sorun, karanlığı bu teknikle etkili bir şekilde çoğaltmam. Yani eklenen her hareketli grafik, herkesi karartma etkisine sahiptir. Açıkçası bu soruna yanlış yaklaşıyorum.
Herhangi bir fikir?
Sürekli Çabalar
Yorumlarda bazı karıştırma seçenekleri tartışıldı. İşte şimdiki düşüncem. Yukarıdaki tek spot ışığı örneğimde, şuna benzer bir görüntü dosyası kullanıyorum: (Daha kolay göstermek için saydamlığı yeşil renkle değiştirdim)
Yukarıda tartışıldığı gibi sorun, bu görüntüyü başka bir görüntüyle harmanlayan alfanın istenen efekti üretmeyeceğidir. Bunun yerine bunu üretecek:
Bu beni bir karıştırma seçenekleri sorunu olarak etkilemez. Sorun, bana öyle geliyor ki, bu tür bir görüntünün, ayrılmaları gerektiğinde yerleşik saydamlık maskesi ve görüntüsüne (siyah bir kare) sahip olmasıdır.
Kesilmiş saydamlığı yerleşik olan siyah bir görüntü yerine, çalışma sırasında siyah kareye karşı kullanılan saydamlık maskeleri kullanmalıyım. Bunu yaparken hala geleneksel beyaz ve siyah saydamlık maskesini kullanamıyorum, yoksa aynı problemle karşılaşır. İşte bir örnek, bu sefer beyaz ve siyah beyaz ve siyahı temsil ediyor:
Çözüm, görünüşe göre, kendisi şeffaflık kullanan bir şeffaflık maskesi uygulamak olacaktır. Bunun gibi bir şey: (yeşil = şeffaf)
Bu şekilde, birden çok saydamlık maskesi alfa harmanlanabilir ve SONRA siyah kareye karşı saydamlık maskesi olarak kullanılabilir. Alfa ile harmanlanmış iki şeffaflık maskesinin iki örneği:
Her neyse, uygulamak için çalıştığım yaklaşım bu. Bu işe yararsa sonuçları gönderirim. Bilmediğim şey (şu anda) şeffaflığı olan bir saydamlık maskesi kullanabilmem.