मैं एक 2 डी "स्पॉटलाइट" प्रभाव बनाने के लिए देख रहा हूं जो कई संस्थाओं पर स्पॉटलाइट की अनुमति देता है। यानी, जैसे कि कई स्प्राइट मशालें पकड़े हुए थे। एक इकाई (एक स्पॉटलाइट) के लिए, मैं एक तकनीक का उपयोग करता हूं जहां मैं एक ढाल स्प्राइट को ओवरले करता हूं और उस इकाई का केंद्र बिंदु पीछा करता हूं। यह तकनीक एकल स्पॉटलाइट के लिए ठीक काम करती है। यहाँ स्क्रीनशॉट के बारे में बताया गया है कि मैं किस बारे में बात कर रहा हूँ:
एकल स्पॉटलाइट - काम करता है
मैं जिस समस्या को चलाता हूं वह यह है कि यह तकनीक कई संस्थाओं तक नहीं पहुंचती है। यदि मैं एक और स्पॉटलाइट छवि को ओवरले करता हूं तो मैं कई समस्याओं में चला जाता हूं। यहाँ एक नकली स्क्रीनशॉट है:
मल्टीपल स्पॉटलाइट्स = समस्याएं
सबसे स्पष्ट समस्या दृश्य कोनों है। यह पूरे स्तर को कवर करने के लिए स्पॉटलाइट इमेज को विशाल बनाकर हल किया जा सकता है, लेकिन यह सही नहीं लगता है। दूसरी और अधिक स्पष्ट समस्या यह है कि मैं इस तकनीक के साथ अंधेरे को प्रभावी ढंग से बढ़ा रहा हूं। इसलिए प्रत्येक स्प्राइट जोड़ा पर हर किसी को काला करने का प्रभाव पड़ता है। स्पष्ट रूप से मैं इस समस्या को गलत तरीके से ले रहा हूं।
कोई विचार?
निरंतर प्रयास
टिप्पणियों में सम्मिश्रण विकल्पों की कुछ चर्चा हुई है। यहां मेरी वर्तमान सोच है। ऊपर मेरे एकल स्पॉटलाइट उदाहरण में, मैं एक छवि फ़ाइल का उपयोग करता हूं जो कुछ इस तरह दिखाई देती है: (मैंने इसे बदलने में आसान बनाने के लिए पारदर्शिता को हरे रंग के साथ बदल दिया है)
जैसा कि ऊपर चर्चा की गई है, समस्या यह है कि अल्फा इस छवि को किसी अन्य छवि के साथ मिश्रित करने से वांछित प्रभाव उत्पन्न नहीं होने वाला है। इसके बजाय यह इसका उत्पादन करेगा:
यह एक सम्मिश्रण विकल्प समस्या के रूप में मुझ पर प्रहार नहीं करता है। यह समस्या मुझे यह प्रतीत होती है कि इस तरह की छवि में पारदर्शिता मुखौटा और छवि (एक काला वर्ग) है, जब उन्हें अलग किया जाना चाहिए।
इसलिए बिल्ट-इन ट्रांसपेरेंसी वाली ब्लैक इमेज के बजाय, मुझे पारदर्शिता मास्क का उपयोग करना चाहिए जो कि ब्लैक स्क्वायर के खिलाफ रन टाइम पर उपयोग किए जाते हैं। ऐसा करते समय, मैं अभी भी एक पारंपरिक सफेद और काले पारदर्शिता मास्क का उपयोग नहीं कर सकता हूं या यह उसी समस्या में चलेगा। यहाँ एक उदाहरण है, इस बार सफेद और काले सफेद और काले रंग का प्रतिनिधित्व करते हैं:
ऐसा लगता है कि समाधान, एक पारदर्शिता मुखौटा लागू करना होगा जो स्वयं पारदर्शिता का उपयोग करता है। कुछ इस तरह: (हरा = पारदर्शी)
इस तरह, कई पारदर्शिता मास्क को एक साथ मिश्रित किया जा सकता है और काले वर्ग के खिलाफ पारदर्शिता मास्क के रूप में उपयोग किया जाता है। यहाँ दो पारदर्शिता मास्क अल्फा का उदाहरण दिया गया है जो एक साथ मिश्रित हैं:
वैसे भी, यह वह तरीका है जिसे मैं लागू करने पर काम कर रहा हूं। यदि यह काम करता है तो मैं परिणाम पोस्ट करूँगा। मैं (वर्तमान में) नहीं जानता कि क्या मैं एक पारदर्शिता मास्क का उपयोग कर सकता हूं जिसमें स्वयं पारदर्शिता है।