كيفية استخدام الإضافة مع الشخصيات المخصصة
يأخذك هذا الدليل خلال عملية إعداد Runtime MetaHuman Lip Sync للشخص يات غير MetaHuman. تتطلب هذه العملية الإلمام بمفاهيم التحريك والريغينغ. إذا كنت بحاجة إلى مساعدة في تنفيذ هذا لشخصيتك المحددة، يمكنك التواصل للحصول على دعم احترافي على [email protected].
ملاحظة هامة حول نماذج Lip Sync
يتم دعم الشخصيات المخصصة فقط مع النموذج القياسي (الأسرع).
تم تصميم النموذج الواقعي (جودة أعلى) حصريًا لشخصيات MetaHuman ولا يمكن استخدامه مع الشخصيات المخصصة. طوال هذا الدليل، يجب عليك اتباع تعليمات النموذج القياسي من دليل الإعداد الرئيسي عند الإشارة إليها.
إضافة مطلوبة: لاستخدام النموذج القياسي مع الشخصيات المخصصة، يجب عليك تثبيت إضافة Standard Lip Sync Extension كما هو موضح في قسم المتطلبات الأساسية من دليل الإعداد الرئيسي.
هذه الإضافة مطلوبة لجميع تطبيقات الشخصيات المخصصة الموضحة في هذا الدليل.
المتطلبات الأساسية
قبل البدء، تأكد من أن شخصيتك تستوفي هذه المتطلبات:
- تمتلك هيكل عظمي صالح
- تحتوي على أهداف تشكيل (blend shapes) للتعبيرات الوجهية
- من الناحية المثالية، تمتلك 10+ أهداف تشكيل تحدد visemes (كلما زادت visemes، كانت جودة lip sync أفضل)
تتطلب الإضافة تعيين أهداف التشكيل لشخصيتك إلى visemes القياسية التالية:
Sil -> Silence
PP -> Bilabial plosives (p, b, m)
FF -> Labiodental fricatives (f, v)
TH -> Dental fricatives (th)
DD -> Alveolar plosives (t, d)
KK -> Velar plosives (k, g)
CH -> Postalveolar affricates (ch, j)
SS -> Sibilants (s, z)
NN -> Nasal (n)
RR -> Approximant (r)
AA -> Open vowel (aa)
E -> Mid vowel (e)
IH -> Close front vowel (ih)
OH -> Close-mid back vowel (oh)
OU -> Close back vowel (ou)
ملاحظة: إذا كان لشخصيتك مجموعة مختلفة من الفيزيمات (وهو أمر محتمل)، فلن تحتاج إلى تطابق دقيق لكل فيزيم. غالبًا ما تكون التقريبات كافية — على سبيل المثال، تعيين فيزيم SH
لشخصيتك إلى فيزيم CH
للإضافة سيعمل بفعالية لأنها أصوات لثوية غارية متقاربة.
مرجع تعيين الفيزيمات
فيما يلي تعيينات بين أنظمة الفيزيمات الشائعة والفيزيمات المطلوبة للإضافة:
- Apple ARKit
- FACS-Based Systems
- نظام بريستون بلير
- نظام الفونيمات في 3ds Max
- الشخصيات المخصصة (Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe)
يوفر ARKit مجموعة شاملة من أشكال الوجه الممزوجة للرسوم المتحركة للوجه، بما في ذلك عدة أشكال للفم. إليك كيفية تعيينها إلى فيزيمات RuntimeMetaHumanLipSync:
فيزيم RuntimeMetaHumanLipSync | المكافئ في ARKit | ملاحظات |
---|---|---|
Sil | mouthClose | الوضع المحايد/الراحة |
PP | mouthPressLeft + mouthPressRight | للأصوات الشفوية، استخدم كلا شكلَي الضغط معًا |
FF | lowerLipBiteLeft + lowerLipBiteRight (أو mouthRollLower) | الشفة السفلية تلامس الأسنان العلوية، كما في أصوات "f" و "v" |
TH | tongueOut | لدى ARKit تحكم مباشر في اللسان |
DD | jawOpen (خفيف) + tongueUp (إذا كان لديك هيكل للسان) | اللسان يلمس الحافة السنخية؛ انخفاض طفيف في الفك |
KK | mouthLeft أو mouthRight (خفيف) | سحب خفيف لزاوية الفم يقارب الأصوات اللهوية |
CH | jawOpen (خفيف) + mouthFunnel (خفيف) | اجمع بينهما للأصوات اللثوية الغارية |
SS | mouthFrown | استخدم عبوسًا خفيفًا للأصوات الصفيرية |
NN | jawOpen (خفيف جدًا) + mouthClose | فم شبه مغلق مع انفتاح خفيف للفك |
RR | mouthPucker (خفيف) | تدوير خفيف لأصوات الـ r |
AA | jawOpen + mouthStretchLeft + mouthStretchRight (أو jawOpen + mouthOpen) | فم مفتوح على مصراعيه لصوت "ah" |
E | jawOpen (خفيف) + mouthSmile | وضعية متوسطة الانفتاح مع ابتسامة خفيفة |
IH | mouthSmile (خفيف) | انتشار خفيف للشفتين |
OH | mouthFunnel | شكل مفتوح مدور |
OU | mouthPucker | شفاه مدورة بإحكام |
يستخدم FACS (نظام ترميز حركة الوجه) وحدات الحركة (AUs) لوصف حركات الوجه. العديد من أنظمة الرسوم المتحركة المحترفة تستخدم منهجيات قائمة على FACS:
فيزيم RuntimeMetaHumanLipSync | وحدات حركة FACS | ملاحظات |
---|---|---|
Sil | Neutral | لا توجد وحدات حركة نشطة |
PP | AU23 + AU24 | ضاغط الشفاه + مشدّد الشفاه |
FF | AU22 + AU28 | قمع الشفاه + مص الشفاه |
TH | AU25 (خفيف) + AU27 | شفاه منفصلة + تمدد الفم |
DD | AU25 + AU16 | شفاه منفصلة + خافض الشفة السفلية |
KK | AU26 + AU14 | هبوط الفك + مكون النقرة |
CH | AU18 + AU25 | تجعيد الشفاه + شفاه منفصلة |
SS | AU20 | ممدد الشفاه |
NN | AU25 (خفيف جدًا) | انفصال خفيف جدًا للشفاه |
RR | AU18 (خفيف) | تجعيد خفيف للشفاه |
AA | AU27 + AU26 | تمدد الفم + هبوط الفك |
E | AU25 + AU12 | شفاه منفصلة + ساحب زاوية الشفة |
IH | AU12 + AU25 (خفيف) | ساحب زاوية الشفة + انفصال خفيف للشفاه |
OH | AU27 (خفيف) + AU18 | تمدد خفيف للفم + تجعيد الشفاه |
OU | AU18 + AU26 (خفيف) | تجعيد الشفاه + هبوط خفيف للفك |
نظام بريستون بلير هو معيار كلاسيكي للرسوم المتحركة يستخدم أسماء وصفيّة لأشكال الفم:
RuntimeMetaHumanLipSync Viseme | Preston Blair | ملاحظات |
---|---|---|
Sil | Rest | وضع الفم المغلق المحايد |
PP | MBP | شكل الفم الكلاسيكي "MBP" |
FF | FV | وضعية "FV" مع الأسنان على الشفة السفلية |
TH | TH | لسان يلامس الأسنان الأمامية |
DD | D/T/N | وضعية مشابهة لهذه الحروف الساكنة |
KK | CKG | وضعية الحرف الساكن القاسي |
CH | CH/J/SH | انبعاج طفيف لهذه الأصوات |
SS | S/Z | وضعية الأسنان المفتوحة قليلاً |
NN | N/NG/L | مشابه لـ D/T ولكن بوضعية لسان مختلفة |
RR | R | شفاه مدوّرة لصوت R |
AA | AI | فم مفتوح على مصراعيه |
E | EH | فم مفتوح بشكل متوسط |
IH | EE | شفاه مفرودة |
OH | OH | فتحة متوسطة مدوّرة |
OU | OO | شفاه مدوّرة بإحكام |
يستخدم 3ds Max نظامًا قائمًا على الفونيمات لاستوديو الشخصيات الخاص به:
RuntimeMetaHumanLipSync Viseme | 3ds Max Phoneme | ملاحظات |
---|---|---|
Sil | rest | وضع الفم الافتراضي |
PP | p_b_m | مكافئ مباشر |
FF | f_v | مكافئ مباشر |
TH | th | مكافئ مباشر |
DD | t_d | مكافئ مباشر |
KK | k_g | مكافئ مباشر |
CH | sh_zh_ch | شكل مجتمع |
SS | s_z | مكافئ مباشر |
NN | n_l | مجتمع لهذه الأصوات |
RR | r | مكافئ مباش ر |
AA | ah | صوت علة مفتوح |
E | eh | علة متوسطة |
IH | ee | علة أمامية مغلقة |
OH | oh | علة خلفية مدوّرة |
OU | oo | علة خلفية مغلقة |
يمكن عادةً ربط الشخصيات المخصصة ذات أشكال المزج (morph targets/blend shapes) الخاصة بالشفاه أو الفم (مثل Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe، إلخ) بنظام الفيزيمات الخاص بالإضافة بتقريبات معقولة.
إنشاء أصل وضعية مخصص
اتبع هذه الخطوات لإنشاء أصل وضعية مخصص لشخصيتك والذي سيتم استخدامه مع العقدة Blend Runtime MetaHuman Lip Sync
:
1. حدد موقع الشبكة الهيكلية لشخصيتك
ابحث عن الشبكة الهيكلية التي تحتوي على أهداف التشكيل (blend shapes) التي تريد استخدامها لرسوم متحركة لمزامنة الشفاه. قد تكون هذه شبكة للجسم بالكا مل أو فقط شبكة للوجه، اعتمادًا على تصميم شخصيتك.
2. تحقق من أهداف التشكيل والمنحنيات
قبل المتابعة، تحقق من أن شبكتك الهيكلية تحتوي على أهداف تشكيل (blend shapes) ومنحنيات مقابلة مناسبة لرسوم متحركة لمزامنة الشفاه.
تحقق من أهداف التشكيل:
تحقق من أن شبكتك الهيكلية تحتوي على أهداف تشكيل (blend shapes) يمكن استخدامها كفيزيمات لرسوم متحركة لمزامنة الشفاه. يجب أن تحتوي معظم الشخصيات التي تدعم تحريك الوجه على بعض أهداف تشكيل الفونيمات/الفيزيمات.
مهم: التحقق من علامة تبويب المنحنيات (Curves) هذه الخطوة مهمة بشكل خاص للشخصيات المُصدَّرة من Blender أو برامج خارجية أخرى:
- افتح علامة التبويب Curves في محرر Skeletal Mesh
- تحقق مما إذا كان يمكنك رؤية منحنيات تتوافق مع أهداف التشكيل الخاصة بك
- إذا كانت علامة تبويب Curves فارغة ولكن أهداف التشكيل موجودة، أضف منحنيات جديدة يدويًا باستخدام نفس الأسماء تمامًا لأهداف التشكيل الخاصة بك
ملاحظة: تحدث هذه المشكلة بشكل شائع مع تصديرات Blender حيث تستورد أهداف التشكيل بنجاح ولكن لا يتم إنشاء منحنيات الرسوم المتحركة تلقائيًا. بدون منحنيات مطابقة، لن يتم ملء الرسوم المتحركة بشكل صحيح بعد الخَبز إلى Control Rig.
حل بديل: لمنع هذه المشكلة أثناء التصدير من Blender، حاول تمكين Custom Properties و Animation في إعدادات تصدير FBX الخاصة بك، مما قد يساعد في تضمين منحنيات الرسوم المتحركة جنبًا إلى جنب مع أهداف التشكيل.
3. إنشاء رسوم متحركة لوضعية مرجعية
- انتقل إلى
Create Asset -> Create Animation -> Reference Pose
- أدخل اسمًا وصفيًا لتسلسل الرسوم المتحركة واحفظه في موقع مناسب
- سيفتح تسلسل الرسوم المتحركة المُنشأ تلقائيًا، مع عرض رسوم متحركة فارغة تعمل في حلقة
- انقر على زر
Pause
لإيقاف تشغيل الرسوم المتحركة لتسهيل التحرير
4. تحرير تسلسل الرسوم المتحركة
- انقر على
Edit in Sequencer
->Edit with FK Control Rig
- في حوار
Bake to Control Rig
، انقر على زرBake to Control Rig
دون تغيير أي إعدادات
- سيتحول المحرر إلى
Animation Mode
مع فتح علامة التبويبSequencer
- عيّن
View Range End Time
إلى 0016 (مما سيضبط تلقائيًاWorking Range End
إلى 0016 أيضًا) - اسحب الحافة اليمنى للشريط المنزلق إلى النهاية اليمنى لنافذة المُسلسل (sequencer)
5. تحضير منحنيات الرسوم المتحركة
- ارجع إلى أصل تسلسل الرسوم المتحركة وحدد أهداف التشكل في قائمة
Curves
(إذا لم تكن مرئية، أغلق وأعد فتح أصل تسلسل الرسوم المتحركة) - احذف أي أهداف تشكل غير مرتبطة بـ visemes أو حركات الفم التي تريد استخدامها لمزامنة الشفاه (Lip Sync)
6. خطط لتعيين الفونيمات البصرية (viseme mapping)
أنشئ خطة تعيين لمطابقة فونيمات الشخصية الخاصة بك مع المجموعة المطلوبة من قبل الإضافة (plugin). على سبيل المثال:
Sil -> Sil
PP -> FV
FF -> FV
TH -> TH
DD -> TD
KK -> KG
CH -> CH
SS -> SZ
NN -> NL
RR -> RR
AA -> AA
E -> E
IH -> IH
OH -> O
OU -> U
لا حظ أنه من المقبول وجود تعيينات متكررة عندما لا تحتوي مجموعة الفيزيمات لشخصيتك على تطابقات دقيقة لكل فيزيم مطلوب.
7. تحريك كل فيزيم
- لكل فيزيم، قم بتحريك منحنيات هدف التشكل (morph target) ذات الصلة من 0.0 إلى 1.0
- ابدأ تحريك كل فيزيم على إطار (frame) مختلف
- قم بتكوين منحنيات إضافية حسب الحاجة (فتح الفك/الفم، موضع اللسان، إلخ) لإنشاء أشكال فيزيمات تبدو طبيعية
8. إنشاء أصل وضعية (Pose Asset)
- انتقل إلى
Create Asset
->Pose Asset
->Current Animation
- أدخل اسمًا وصفيًا لأصل الوضعية واحفظه في موقع مناسب
- سيتم فتح أصل الوضعية المُنشأ تلقائيًا، مع عرض أوضاع مثل
Pose_0
،Pose_1
، إلخ، كل منها يقابل فيزيماً (viseme) - قم بمعاينة أوزان الفيزيمات للتأكد من عملها كما هو متوقع
9. إنهاء أصل الوضعية (Finalize the Pose Asset)
- أعد تسمية كل وضعية لتطابق أسماء الفيزيمات من قسم المتطلبات الأساسية
- احذف أي أوضاع غير مستخدمة
إعداد معالجة الصوت والمزج
بمجرد أن يصبح أصل الوضعية (Pose Asset) جاهزًا، تحتاج إلى إعداد عُقد معالجة الصوت والمزج:
- حدد موقع أو أنشئ مخطط الرسوم المتحركة (Animation Blueprint) لشخصيتك
- قم بإعداد معالجة الصوت والمزج باتباع نفس الخطوات الموثقة في دليل إعداد الملحق القياسي
- في عقدة
Blend Runtime MetaHuman Lip Sync
، حدد أصل الوضعية المخصص (Pose Asset) الخاص بك بدلاً من أصل وضعية MetaHuman الافتراضي
الدمج مع رسوميات الجسم
إذا كنت تريد تنفيذ مزامنة الشفاه (Lip Sync) إلى جانب رسوميات الجسم الأخرى:
- اتبع نفس الخطوات الموثقة في دليل الملحق القياسي
- تأكد من تقديم أسماء العظام الصحيحة لهيكل عنق شخصيتك بدلاً من استخدام أسماء عظام MetaHuman