परिचय
इस गाइड में pet चुनना, अपने PicoPixel प्रोजेक्ट में जोड़ना और हार्डवेयर पर होने वाली घटनाओं के अनुसार उससे प्रतिक्रिया दिलाना सीखें।

मूल अवधारणा समझने के लिए स्प्राइट क्या है? पढ़ें। अपना pet साझा करना हो तो pet भेजने की गाइड देखें। यह लेख पहले से बने pet को अपने प्रोजेक्ट में इस्तेमाल करने के बारे में है।
एनिमेशन का अनुभव ज़रूरी नहीं। Add to project दबाना और विजेट को कैनवास पर खींचना आता है तो आप अपने ESP32 या LVGL प्रोजेक्ट में प्रतिक्रिया देने वाला किरदार जोड़ सकते हैं।
Pet क्या है?
Pet एक स्प्राइट है: एक विजेट में कई एनिमेशन, जिनके बीच आप ज़रूरत के अनुसार बदलते हैं। हर एनिमेशन को मोड, स्थिति या चरण कहते हैं, जैसे “Idle”, “Run right” या “Jumping”।
Codex या Petdex जैसे पैक से आने वाले pet में आम तौर पर 9 मोड होते हैं: Idle, Run right, Run left, Waving, Jumping, Failed, Waiting, Running और Review। हर मोड फ़्रेम का अलग क्रम है जो दोहराता रहता है। आप तय करते हैं कि कौन-सा मोड कब चले।
यानी एक विजेट, कई व्यवहार — आपके प्रोजेक्ट की स्थितियों के अनुसार।
LVGL में कई स्थितियों वाले स्प्राइट की सीधी सुविधा नहीं है। PicoPixel इसे Animated Image विजेट के ऊपर बनाता है, ताकि सभी मोड पहले से जुड़े मिलें। विस्तार से स्प्राइट गाइड में पढ़ें।
Pet क्यों इस्तेमाल करें?
स्थिर चेहरे या हमेशा एक जैसा चलने वाले एनिमेशन की जगह pet डिवाइस की गतिविधि पर प्रतिक्रिया देता है।
इसकी प्रेरणा कोडिंग में साथ दिखने वाले किरदार से आई: सोचते समय Idle, बदलाव पढ़ते समय Review और बिल्ड टूटने पर Failed। किरदार बताता है कि ऐप क्या कर रहा है।
PicoPixel में आप यही तरीका अपने डिवाइस की घटनाओं पर लागू कर सकते हैं:
- तापमान तय सीमा से ऊपर जाए तो Jumping चलाएँ।
- API से डेटा आने तक Running, फिर Idle दिखाएँ।
- सेंसर को हलचल मिले तो Waving, या अनुरोध का समय खत्म हो जाए तो Failed दिखाएँ।
इस तरह बिना एनिमेशन का कोड लिखे प्रोजेक्ट की स्थिति दिखाई जा सकती है।
गैलरी से pet चुनें
PicoPixel खाता बनाएँ और picopixel.io/pets खोलें। पसंद का किरदार चुनकर उसका विवरण पेज खोलें।

Add to project दबाएँ। PicoPixel उसे सीधे आपके डैशबोर्ड में इम्पोर्ट कर देता है। अलग से फ़ाइल या सेटअप सँभालने की ज़रूरत नहीं है।

इम्पोर्ट करने पर क्या मिलता है?
एक नया प्रोजेक्ट बनता है जिसमें एक Sprite विजेट होता है। उसके सभी मोड पहले से तैयार होते हैं। खोलने पर कैनवास में स्प्राइट और दाएँ पैनल में मोड, फ़्रेम की संख्या और अवधि दिखती है।

मोड, फ़्रेम और अवधि समझने के लिए स्प्राइट गाइड देखें।
Assets टैब में वही स्प्राइट लोकल लाइब्रेरी में दोबारा इस्तेमाल होने वाले कंपोनेंट के रूप में मिलता है। इससे उसे अपने असली प्रोजेक्ट में ले जा सकते हैं।

अपने प्रोजेक्ट में लाने के तीन तरीके
Pet की फ़ाइल उसे आज़माने और आगे इस्तेमाल करने के लिए है। अपने प्रोजेक्ट में लाने के ये तरीके हैं:
1. लेयर कॉपी और पेस्ट करें
Pet प्रोजेक्ट में स्प्राइट की लेयर चुनकर कॉपी करें। दूसरा प्रोजेक्ट खोलें और पेस्ट करें। सभी मोड साथ आते हैं। केवल एक जगह इस्तेमाल करना हो तो यह सबसे आसान तरीका है।
2. लाइब्रेरी बनाएँ
कई प्रोजेक्ट में इस्तेमाल करना हो तो pet की फ़ाइल को लाइब्रेरी बनाएँ। प्रकाशित करने पर उसके एसेट टीम के दूसरे कार्यक्षेत्रों में उपलब्ध हो जाते हैं।
प्रकाशित करने के लिए:
- Pet प्रोजेक्ट में Assets खोलें और Add Library चुनें।
- Publish दबाएँ।
दूसरे प्रोजेक्ट में इस्तेमाल करने के लिए:
- नया या मौजूदा कार्यक्षेत्र खोलें।
- Add Library चुनें।
- Shared libraries से pet की लाइब्रेरी जोड़ें।

अब pet उस कार्यक्षेत्र के Assets में मिलेगा। उसे कैनवास पर खींचें; सभी मोड और सेटिंग पहले से तैयार होंगे।

लाइब्रेरी टीम के भीतर दोबारा इस्तेमाल के लिए है; उसे प्रकाशित करने से वह पूरी दुनिया के लिए उपलब्ध नहीं होती। लाइब्रेरी और कंपोनेंट गाइड में पूरी जानकारी पढ़ें।
3. Pet के प्रोजेक्ट की सेटिंग बदलें
आप उसी प्रोजेक्ट का स्क्रीन आकार और लक्ष्य बोर्ड बदलकर अपने डिवाइस के लिए काम शुरू कर सकते हैं। यह संभव है, लेकिन पहले दो तरीके बेहतर हैं: pet का प्रोजेक्ट उसे दिखाने के लिए बना है, और उसमें सीधे काम करने से मूल pet तथा आपके उत्पाद का काम एक ही फ़ाइल में मिल जाता है।
इवेंट जोड़कर pet से प्रतिक्रिया दिलाएँ
केवल Idle चलाने के बजाय इवेंट एडिटर से तय करें कि मोड कब बदले। तरीका है: यह घटना हो तो यह मोड चलाएँ। ट्रिगर में बटन दबना, वैल्यू बदलना या टाइमर चुनें, फिर Set Sprite Mode एक्शन और चलाने वाला मोड चुनें।
नीचे उदाहरण में JUMP! बटन के Clicked इवेंट से Jumping मोड चलता है।

इसी तरह अपने प्रोजेक्ट के सेंसर, API का काम पूरा होने या टाइमर को ट्रिगर बना सकते हैं। सभी ट्रिगर और एक्शन की जानकारी इवेंट एडिटर गाइड में है।
हार्डवेयर पर चलाते समय
- बेकार मोड हटाएँ। हर मोड के फ़्रेम मेमोरी लेते हैं। खासकर छोटे बोर्ड पर केवल वे मोड रखें जिन्हें चलाना है।
- इवेंट जोड़ना न भूलें। Pet खुद नहीं जानता कि क्या करना है। हर बदलाव की शर्त इवेंट एडिटर में तय करें।
- पर्याप्त मेमोरी रखें। एनिमेटेड इमेज के फ़्रेम रखने के लिए RAM चाहिए। एक्सपोर्ट की गई
README.mdअपने कोडिंग असिस्टेंट को दें या उसकी मदद से LVGL मेमोरी सेटिंग खुद जाँचें। फ़्लैश करने के बाद स्प्राइट न दिखे तो अक्सर यही वजह होती है।
सभी 9 मोड और बड़े फ़्रेम वाला pet छोटे माइक्रोकंट्रोलर की मेमोरी भर सकता है और दिखना बंद हो सकता है। केवल ज़रूरी मोड रखें और पक्का करें कि LVGL में एनिमेटेड इमेज के लिए पर्याप्त RAM है।
आगे क्या पढ़ें
- स्प्राइट क्या है?: मोड, फ़्रेम और अवधि समझें।
- इवेंट एडिटर: pet की प्रतिक्रिया तय करें।
- लाइब्रेरी और कंपोनेंट: एक बार सहेजकर कई जगह इस्तेमाल करें।
- Pet भेजें: अपना किरदार समुदाय के साथ साझा करें।
- Pets गैलरी: दूसरे pet देखें।