objective c - स्प्रिटक किट का उपयोग करके एक SKSpriteNode की छवि को उत्तरदायी रूप से कैसे धूमिल करना है?



objective-c transitions (1)

क्या कोई एक उदाहरण प्रदान करता है कि कैसे एसकेएसआरपीटीएनोड की छवि को एप्पल के स्प्राइट किट का इस्तेमाल करने के लिए धीरे-धीरे धब्बा? उदाहरण के लिए, मान लीजिए कि उपयोगकर्ता स्क्रीन पर एक बटन को छूता है जो फिर पृष्ठभूमि को धीरे-धीरे ट्रिगर करेगा (यानी उत्तरोत्तर) जब तक यह एक विशिष्ट थ्रेशोल्ड तक पहुंच न जाए। आदर्श रूप में, मैं भी प्रक्रिया को उल्टा करना चाहूंगा (उदाहरण के लिए उपयोगकर्ता को उसी बटन को स्पर्श करके छवि को अबाधित करने दें)।


इस पर दो संभावित मार्ग हैं, दोनों का उपयोग SKEffectNodes

SKEffectNodes आपको सीआई फ़िल्टर को एक नोड में लागू करने की अनुमति देते हैं।

गाऊसी ब्लर के लिए सीआई फ़िल्टर है तो एक SKEffectNode बनाएँ, और इसे एक धुंधला फिल्टर असाइन करें, फिर एक बच्चे के रूप में बटन जोड़ें

आप इसे कैसे चेतन करते हैं?

कस्टम क्रिया बनाने के लिए SKAction का उपयोग करें, और फ़िल्टर के मापदंडों को बदल दें, हालांकि, यह धीमा हो सकता है और हमेशा 'प्रगतिशील' धुंधला प्रभाव आपको उम्मीद नहीं दे सकता है, इसलिए मैं यह करता हूं:

मैं ऊपर वर्णित एक फिल्टर और SKEffectNode बना रहा हूं, फिर मैं एसक्यूवीयू.टेक्स्टफोरनोड का उपयोग करते हुए, एक बनावट के लिए परिणाम प्रस्तुत करता हूं। मैं उसके बाद परिणामी बनावट को एक सरणी में जोड़ता हूं, इसके बाद मैं इसे लूप कर देता हूं, पिछले छवि के शीर्ष पर धुंधला प्रभाव को लागू करने के लिए continuinng, जब तक मेरे पास एक निश्चित संख्या फ़्रेम नहीं है। फिर SKAction.animateWithTextures के साथ एनीमेशन बनाने के लिए बनाई गई बनावट का उपयोग करें। मेरे अनुभव में, यह बहुत अच्छी तरह से बाहर आता है





skspritenode