1. कोई सामान्य सर्वोत्तम अभ्यास नहीं है।
यदि आपको अपने खेल में बहुत सारे (जटिल आकार के) तत्व, कण आदि मिले हैं, तो बिटमैप बफर दृष्टिकोण बहुत तेज होने वाला है। बिटमैप बफर भी आपके स्प्राइट्स की बढ़ती जटिलता के साथ बेहतर होगा। वेक्टर रेंडरर अधिक जटिल आकृतियों या ट्वीन (आकार के आकार) एनिमेशन के साथ धीमा हो जाएगा , इसके कुछ अन्य लाभ हैं:
- आप गुणवत्ता के नुकसान के बिना स्वतंत्र रूप से अपनी संपत्ति को माप सकते हैं या दृश्य में ज़ूम कर सकते हैं।
- घुमाव या अन्य परिवर्तन जैसे कि तिरछा करना वेक्टर ग्राफिक्स पर प्रदर्शन करना बहुत आसान होगा
इसलिए निष्कर्ष में, यह उबलता है कि आप किस तरह के खेल का निर्माण कर रहे हैं।
2. बिटमैप स्प्राइट-शीट के बजाय मूवी क्लिप्स का उपयोग करना
मुझे लगता है कि आपका मतलब "बिटमैप स्प्राइट-शीट" है न कि एएस 3 स्प्राइट क्लास?
इससे वास्तव में फर्क नहीं पड़ता। आप हमेशा अपने मूवीक्लिप आधारित एनिमेशन को एनिमेटेड बिटमैप में बदल सकते हैं। या तो मैन्युअल रूप से, मूवी को फ्रेम में निर्यात करके और उन्हें एक स्प्राइट-शीट में बदल दें , या गतिशील रूप से, रनटाइम पर अपनी मूवीक्लिप से स्प्राइट शीट प्रदान करके। यहां बताया गया है कि मैं यह कैसे करूंगा:
- MovieClip और
stop()
इसे का एक उदाहरण बनाएँ ।
new BitmapData
Movieclip के समान चौड़ाई और ऊंचाई के साथ एक ऑब्जेक्ट बनाएं ।
- ड्राट () विधि का प्रयोग करें , मूवीक्लिप को बिटमैपडेटा में रेंडर करने के लिए।
- BitmapData ऑब्जेक्ट को किसी ऐरे या वेक्टर में स्टोर करें।
- अपने मूवीक्लिप के अगले फ्रेम पर जाएं और स्टेप 2 - 4 को दोहराएं, ऐसा तब तक करें जब तक आप अपने मूवीक्लिप के आखिरी फ्रेम तक नहीं पहुंच जाते। अपने MovieClip फ्रेम की अधिकतम चौड़ाई और अधिकतम ऊंचाई के साथ दो चर को अपडेट करना भी एक अच्छा विचार है (क्योंकि ये फ्रेम से फ्रेम में बदल सकते हैं)।
- अब आप एक स्प्राइट-शीट में सभी संग्रहीत BitmapData वस्तुओं को जोड़ सकते हैं (उपयोग BitmapData.copyPixels () )
3. स्प्राइट-आधारित एनिमेशन
जैसा कि आपके पहले प्रश्न के उत्तर में बताया गया है, इसका कोई निश्चित उत्तर नहीं है। यदि आपको अपनी वस्तुओं के साथ बहुत अधिक परिवर्तन करने की आवश्यकता है, जैसे। स्केलिंग और रोटेटिंग आप संभवतः फ़्लैश देशी रेंडरर का उपयोग करके बेहतर कर रहे हैं। यदि आपको पूर्व-परिभाषित एनिमेशन मिले हैं जो स्प्राइट-शीट (मैन्युअल या गतिशील रूप से) के लिए बेक किए जा सकते हैं, और यदि आपको एक ही समय में सैकड़ों स्प्राइट प्रदर्शित करने की आवश्यकता है, तो बिटमैप-रेंडरिंग इंजन के लिए जाएं।