पसंद के मुताबिक टेक्सचर और ऑगमेंटेड फ़ेस के लिए 3D मॉडल बनाना

ऑगमेंटेड फ़ेस को लागू करने के लिए, आपको पसंद के मुताबिक बनाए गए टेक्स्चर और मॉडल की ज़रूरत होगी. इससे, चेहरे की पहचान करने वाले मेश को ओवरले किया जा सकेगा. ये एसेट 3D मॉडलिंग और ऐनिमेशन सॉफ़्टवेयर में कलाकारों ने पहले बनाई हैं, और इन्हें *.fbx फ़ाइलों के तौर पर एक्सपोर्ट किया है.

Android के लिए सीनफ़ॉर्म SDK टूल, canonical_face_mesh.fbx फ़ाइल के साथ शिप किया जाता है. साथ ही, canonical_face_mesh.psd फ़ाइल दी जाती है, जिसकी मदद से कलाकार एसेट बना सकते हैं. ये एसेट ARCore के पता लगाए गए चेहरों पर सही से ओवरले हो जाती हैं. इन फ़ाइलों को assets फ़ोल्डर में देखा जा सकता है.

एसेट बनाने के लिए, *.fbx फ़ाइल का इस्तेमाल करें

*.fbx फ़ाइल में फ़ेस मेश टोपोलॉजी, यूवी टेक्सटाइल निर्देशांक, और रिग होते हैं. ये चेहरे के उन हिस्सों की जानकारी देते हैं जिनके साथ काम करते हैं. ये एसेट बनाने और अटैच करने के लिए इस्तेमाल किए जाते हैं. यह पक्का करने के लिए कि उन्हें ARCore के साथ इस्तेमाल किया जा सके,*.fbx फ़ाइलें काम करने वाली सेटिंग का इस्तेमाल करके सेव की जानी चाहिए. इसके बाद, आप इन फ़ाइलों को अपने प्रोजेक्ट में *.sfb फ़ाइलों के तौर पर इंपोर्ट कर सकते हैं.

इस फ़ाइल में रेफ़रंस facemesh है, जिसे आखिरी *.fbx के हिस्से के तौर पर एक्सपोर्ट नहीं किया जाना चाहिए. ARCore, एक अलग फ़ेस मेश जनरेट करेगा और उसे अपडेट करेगा.

एसेट बनाने के लिए, *.psd फ़ाइल का इस्तेमाल करें

.psd फ़ेस मेश के रेफ़रंस का इस्तेमाल यह देखने के लिए किया जाता है कि किसी कलाकार के रनटाइम की स्थिति में, उपयोगकर्ता के चेहरे की बनावट के साथ किस तरह की लाइन बनाई जाती है. इसमें चार लेयर शामिल हैं:

  • मास्क: यह दिखाता है कि बनावट में आंखें, नाक, और मुंह कहां हैं.
  • लाइन: ऐसे दिशा-निर्देश जो दिखाते हैं कि उपयोगकर्ता के चेहरे की सुविधाएं, रनटाइम के दौरान टेक्स्चर के साथ कैसे जुड़ी हुई हैं.
  • यूवी: 468 पॉइंट वाले चेहरे के टेक्स्चर को त्रिकोण के तौर पर दिखाता है.
  • बैकग्राउंड: अन्य तीन कॉम्पोनेंट को विज़ुअल तौर पर साफ़ करने के लिए, न्यूट्रल स्लेटी बैकग्राउंड लेयर.

अगर आप *.psd फ़ाइल में बदलाव करते हैं, तो एक्सपोर्ट करते ही आपको अपने बदलाव दिखेंगे.

FBX एसेट फ़ॉर्मैट और ज़रूरी शर्तें

हम मॉडलिंग और ऐनिमेशन सॉफ़्टवेयर से एक्सपोर्ट की गई *.fbx फ़ाइलों के लिए, नीचे दी गई सेटिंग का सुझाव देते हैं और इनका समर्थन करते हैं.

  • फ़ाइल फ़ॉर्मैट: FBX 2016/2017 या बाद का

  • ऐक्सिस कन्वर्ज़न: अप ऐक्सिस Y है

  • स्केल फ़ैक्टर: सेंटीमीटर

  • ज्यामिति की ज़रूरी सेटिंग:

    • स्मूदिंग ग्रुप
    • स्मूद मेश
    • पहचान वाले एसेट का कॉन्टेंट
  • ज्यामिति की सुझाई गई सेटिंग:

    • टैनजंट और बाइनॉरल
    • ट्रायंगुलेट
    • नर्ब
  • ऐनिमेशन: चालू किया गया

  • खराब मॉडल सेटिंग:

    • खराब मॉडल
    • स्किन

चेहरे के कैननिकल मेश को अपनी पसंद के मुताबिक बनाना

अगर SDK टूल में शामिल assets/canonical_face_mesh.fbx का इस्तेमाल करके, मॉडल और टेक्सचर बनाए जा रहे हैं, तो *.fbx फ़ाइलें एक्सपोर्ट करते समय भी इन सेटिंग की ज़रूरत होती है:

  • पक्का करें कि सभी पसंद के मुताबिक बनाई गई मेशों को उनसे जुड़ी हड्डियों या क्षेत्रों में स्किन से निकाला गया है.

  • नीचे दिए गए क्रम का इस्तेमाल करें:

    asset
    |__root
    |   |__NOSE_TIP
    |   |__FOREHEAD_RIGHT
    |   |__FOREHEAD_LEFT
    |__facemesh           <-- for reference
    |__                   <-- place additional custom 3D meshes here
  • शामिल किए गए facemesh मॉडल को एक्सपोर्ट न करें. यह मेश सिर्फ़ रेफ़रंस के लिए है. ARCore, रनटाइम पर चेहरे की पहचान के लिए एक अलग मेश बनाएगा. पसंद के मुताबिक चेहरे के मैश वाले स्ट्रक्चर बनाते समय, facemesh में यूवी का इस्तेमाल करें.

  • asset नोड के चाइल्ड के तौर पर कस्टम मेश लगाएं.

  • नेमस्पेस का इस्तेमाल किया जा सकता है.

  • इस एसेट में root और तीन इलाकों वाली चार हड्डियां शामिल हैं: NOSE_TIP, FOREHEAD_RIGHT, और FOREHEAD_LEFT. इन हड्डियों के नाम न बदलें.