تكوين الإضافة
تكوين النموذج
التكوين القياسي للنموذج
يستخدم عقدة Create Runtime Viseme Generator إعدادات افتراضية تعمل بشكل جيد في معظم السيناريوهات. يتم التعامل مع التكوين من خلال خصائص عقدة المزج في Animation Blueprint.
للاطلاع على خيارات تكوين Animation Blueprint، راجع قسم تكوين مزامنة الشفاه أدناه.
تكوين النموذج الواقعي
تقبل عقدة Create Realistic MetaHuman Lip Sync Generator معامل Configuration اختياريًا يسمح لك بتخصيص سلوك المولد:
نوع النموذج
يحدد إعداد نوع النموذج أي إصدار من النموذج الواقعي سيتم استخدامه:
| نوع النموذج | الأداء | الجودة البصرية | التعامل مع الضوضاء | حالات الاستخدام الموصى بها |
|---|---|---|---|---|
| مُحسّن للغاية (الافتراضي) | أعلى أداء، أقل استخدام لوحدة المعالجة المركزية | جودة جيدة | قد يُظهر حركات ملحوظة للفم مع ضوضاء الخلفية أو الأصوات غير الصوتية | بيئات صوتية نظيفة، سيناريوهات حساسة للأداء |
| شبه مُحسّن | أداء جيد، استخدام معتدل لوحدة المعالجة المركزية | جودة عالية | استقرار أفضل مع الصوت المشوش | توازن بين الأداء والجودة، ظروف صوتية مختلطة |
| الأصلي | مناسب للاستخدام في الوقت الفعلي على وحدات المعالجة المركزية الحديثة | أعلى جودة | الأكثر استقرارًا مع ضوضاء الخلفية والأصوات غير الصوتية | الإنتاجات عالية الجودة، بيئات صوتية صاخبة، عندما تكون الدقة القصوى مطلوبة |
إعدادات الأداء
خيوط العمليات الداخلية (Intra Op Threads): يتحكم في عدد الخيوط المستخدمة لعمليات معالجة النموذج الداخلية.
- 0 (افتراضي/تلقائي): يستخدم الكشف التلقائي (عادةً 1/4 من نوى وحدة المعالجة المركزية المتاحة، بحد أقصى 4)
- 1-16: حدد عدد الخيوط يدويًا. قد تحسن القيم الأعلى الأداء على الأنظمة متعددة النواة ولكنها تستخدم وحدة معالجة مركزية أكثر
خيوط العمليات المتداخلة (Inter Op Threads): يتحكم في عدد الخيوط المستخدمة للتنفيذ المتوازي لعمليات النموذج المختلفة.
- 0 (افتراضي/تلقائي): يستخدم الكشف التلقائي (عادةً 1/8 من نوى وحدة المعالجة المركزية المتاحة، بحد أقصى 2)
- 1-8: حدد عدد الخيوط يدويًا. عادةً ما يُحتفظ به منخفضًا للمعالجة في الوقت الفعلي
حجم قطعة المعالجة
يحدد حجم قطعة المعالجة عدد العينات التي تتم معالجتها في كل خطوة استدلال. القيمة الافتراضية هي 160 عينة (10 مللي ثانية من الصوت بتردد 16 كيلو هرتز):
- توفر القيم الأصغر تحديثات أكثر تكرارًا ولكنها تزيد من استخدام وحدة المعالجة المركزية
- تقلل القيم الأكبر من حمل وحدة المعالجة المركزية ولكنها قد تقلل من استجابة مزامنة الشفاه
- يُوصى باستخدام مضاعفات 160 للحصول على محاذاة مثالية

تكوين النموذج المدعوم بالمزاج
توفر عقدة Create Realistic MetaHuman Lip Sync With Mood Generator خيارات تكوين إضافية تتجاوز النموذج الواقعي الأساسي:
التكوين الأساسي
الاستباق بالمللي ثانية (Lookahead Ms): توقيت الاستباق بالمللي ثانية لتحسين دقة مزامنة الشفاه.
- الافتراضي: 80 مللي ثانية
- النطاق: من 20 مللي ثانية إلى 200 مللي ثانية (يجب أن يكون قابلاً للقسمة على 20)
- توفر القيم الأعلى تزامنًا أفضل ولكنها تزيد من زمن الوصول
نوع الإخراج: يتحكم في عناصر التحكم في الوجه التي يتم إنشاؤها.
- الوجه الكامل: جميع عناصر التحكم الـ 81 في الوجه (الحواجب، العيون، الأنف، الفم، الفك، اللسان)
- الفم فقط: عناصر التحكم المتعلقة بالفم والفك واللسان فقط
إعدادات الأداء: تستخدم نفس إعدادات Intra Op Threads و Inter Op Threads الخاصة بالنموذج الواقعي العادي.
إعدادات المزاج
المزاجات المتاحة:
- محايد، سعيد، حزين، اشمئزاز، غضب، مفاجأة، خوف
- واثق، متحمس، ملل، مرح، مرتبك
شدة المزاج: تتحكم في مدى قوة تأثير المزاج على الرسوم المتحركة (من 0.0 إلى 1.0)
التحكم في المزاج أثناء التشغيل
يمكنك ضبط إعدادات المزاج أثناء التشغيل باستخدام الوظائف التالية:
- تعيين المزاج (Set Mood): تغيير نوع المزاج الحالي
- تعيين شدة المزاج (Set Mood Intensity): ضبط مدى قوة تأثير المزاج على الرسوم المتحركة (من 0.0 إلى 1.0)
- تعيين الاستباق بالمللي ثانية (Set Lookahead Ms): تعديل توقيت الاستباق للتزامن
- تعيين نوع الإخراج (Set Output Type): التبديل بين عناصر التحكم في الوجه الكامل والفم فقط

دليل اختيار المزاج
اختر المزاجات المناسبة بناءً على محتواك:
| المزاج | الأفضل لـ | نطاق الشدة النموذجي |
|---|---|---|
| محايد | المحادثة العامة، السرد، الحالة الافتراضية | 0.5 - 1.0 |
| سعيد | المحتوى الإيجابي، الحوار المرح، الاحتفالات | 0.6 - 1.0 |
| حزين | المحتوى الكئيب، المشاهد العاطفية، اللحظات الكئيبة | 0.5 - 0.9 |
| اشمئزاز | ردود الفعل السلبية، المحتوى البغيض، الرفض | 0.4 - 0.8 |
| غضب | الحوار العدواني، المشاهد المواجهة، الإحباط | 0.6 - 1.0 |
| مفاجأة | الأحداث غير المتوقعة، الكشف عن الحقائق، ردود فعل الصدمة | 0.7 - 1.0 |
| خوف | المواقف المهددة، القلق، الحوار العصبي | 0.5 - 0.9 |
| واثق | العروض التقديمية المهنية، حوار القيادة، الكلام الحازم | 0.7 - 1.0 |
| متحمس | المحتوى النشط، الإعلانات، الحوار المتحمس | 0.8 - 1.0 |
| ملل | المحتوى الرتيب، الحوار غير المهتم، الكلام المتعب | 0.3 - 0.7 |
| مرح | المحادثة العادية، الفكاهة، التفاعلات الخفيفة | 0.6 - 0.9 |
| مرتبك | الحوار الغني بالأسئلة، عدم اليقين، الحيرة | 0.4 - 0.8 |
تكوين Animation Blueprint
تكوين مزامنة الشفاه
- Standard Model
- النماذج الواقعية
تحتوي عقدة Blend Runtime MetaHuman Lip Sync على خيارات تكوين في لوحة الخصائص الخاصة بها:
| الخاصية | الافتراضي | الوصف |
|---|---|---|
| سرعة الاستيفاء (Interpolation Speed) | 25 | تتحكم في مدى سرعة انتقال حركات الشفاه بين الفونيمات المرئية. تؤدي القيم الأعلى إلى انتقالات أسرع وأكثر حدة. |
| وقت إعادة التعيين (Reset Time) | 0.2 | المدة بالثواني التي يتم بعدها إعادة تعيين مزامنة الشفاه. يكون هذا مفيدًا لمنع استمرار مزامنة الشفاه بعد توقف الصوت. |
رسوم متحركة للضحك
يمكنك أيضًا إضافة رسوم متحركة للضحك ستستجيب ديناميكيًا للضحك المكتشف في الصوت:
- أضف عقدة
Blend Runtime MetaHuman Laughter - قم بتوصيل متغير
RuntimeVisemeGeneratorالخاص بك بدبوسViseme Generator - إذا كنت تستخدم بالفعل مزامنة الشفاه:
- قم بتوصيل الإخراج من عقدة
Blend Runtime MetaHuman Lip SyncبـSource PoseلعقدةBlend Runtime MetaHuman Laughter - قم بتوصيل إخراج عقدة
Blend Runtime MetaHuman LaughterبدبوسResultالخاص بـOutput Pose
- قم بتوصيل الإخراج من عقدة
- إذا كنت تستخدم الضحك فقط بدون مزامنة الشفاه:
- قم بتوصيل وضع المصدر الخاص بك مباشرة بـ
Source PoseلعقدةBlend Runtime MetaHuman Laughter - قم بتوصيل الإخراج بدبوس
Result
- قم بتوصيل وضع المصدر الخاص بك مباشرة بـ

عند اكتشاف الضحك في الصوت، سيتحرك شخصيتك ديناميكيًا وفقًا لذلك:
تكوين الضحك
عقدة Blend Runtime MetaHuman Laughter لها خيارات التكوين الخاصة بها:
| الخاصية | الافتراضي | الوصف |
|---|---|---|
| سرعة الاستيفاء | 25 | تتحكم في سرعة انتقال حركات الشفاه بين رسوميات الضحك. القيم الأعلى تؤدي إلى انتقالات أسرع وأكثر فجائية. |
| وقت إعادة التعيين | 0.2 | المدة بالثواني التي يتم بعدها إعادة تعيين الضحك. هذا مفيد لمنع استمرار الضحك بعد توقف الصوت. |
| أقصى وزن للضحك | 0.7 | يقيس أقصى شدة لرسمية الضحك (0.0 - 1.0). |
ملاحظة: كشف الضحك متاح حاليًا فقط مع النموذج القياسي.
عقدة Blend Realistic MetaHuman Lip Sync لها خيارات تكوين في لوحة خصائصها:
| الخاصية | الافتراضي | الوصف |
|---|---|---|
| سرعة الاستيفاء | 30 | تتحكم في سرعة انتقال تعابير الوجه أثناء الكلام النشط. القيم الأعلى تؤدي إلى انتقالات أسرع وأكثر فجائية. |
| سرعة الاستيفاء في وضع الخمول | 15 | تتحكم في سرعة انتقال تعابير الوجه للعودة إلى حالة الخمول/الحياد. القيم الأقل تخلق عودة أكثر سلاسة وتدريجية لوضع الراحة. |
| وقت إعادة التعيين | 0.2 | المدة بالثواني التي يتم بعدها إعادة تعيين مزامنة الشفاه إلى حالة الخمول. مفيد لمنع استمرار التعابير بعد توقف الصوت. |
| الحفاظ على حالة الخمول | false | عند التمكين، يحافظ على الحالة العاطفية الأخيرة خلال فترات الخمول بدلاً من إعادة التعيين إلى الحياد. |
| الحفاظ على تعابير العين | true | تتحكم فيما إذا كانت ضوابط الوجه المتعلقة بالعين محفوظة أثناء حالة الخمول. فعالة فقط عند تمكين الحفاظ على حالة الخمول. |
| الحفاظ على تعابير الحاجب | true | تتحكم فيما إذا كانت ضوابط الوجه المتعلقة بالحاجب محفوظة أثناء حالة الخمول. فعالة فقط عند تمكين الحفاظ على حالة الخمول. |
| الحفاظ على شكل الفم | false | تتحكم فيما إذا كانت ضوابط شكل الفم (باستثناء الحركات الخاصة بالكلام مثل اللسان والفك) محفوظة أثناء حالة الخمول. فعالة فقط عند تمكين الحفاظ على حالة الخمول. |
الحفاظ على حالة الخمول
تتعامل ميزة الحفاظ على حالة الخمول مع كيفية تعامل النموذج الواقعي مع فترات الصمت. على عكس النموذج القياسي الذي يستخدم وحدات مرئية منفصلة ويعود باستمرار إلى قيم صفرية أثناء الصمت، قد تحافظ الشبكة العصبية للنموذج الواقعي على وضعية وجه دقيقة تختلف عن وضع الراحة الافتراضي للـ MetaHuman.
متى يتم التمكين:
- الحفاظ على التعابير العاطفية بين مقاطع الكلام
- الحفاظ على سمات شخصية الشخصية
- ضمان الاستمرارية البصرية في التسلسلات السينمائية
خيارات التحكم الإقليمي:
- تعابير العين: تحافظ على تضييق العين، اتساعها، ووضعية الجفن
- تعابير الحاجب: تحافظ على وضعية الحاجب والجبهة
- شكل الفم: تحافظ على انحناء الفم العام مع السماح لحركات الكلام (اللسان، الفك) بإعادة التعيين
الجمع مع الرسوميات الحالية
لتطبيق مزامنة الشفاه والضحك إلى جانب رسوميات الجسم الحالية ورسوميات الوجه المخصصة دون تجاوزها:
- أضف عقدة
Layered blend per boneبين رسوميات الجسم والإخراج النهائي. تأكد من أنUse Attached Parentمضبوط على true. - قم بتكوين إعداد الطبقة:
- أضف 1 عنصر إلى مصفوفة
Layer Setup - أضف 3 عناصر إلى
Branch Filtersللطبقة، مع أسماءBone Nameالتالية:FACIAL_C_FacialRootFACIAL_C_Neck2RootFACIAL_C_Neck1Root
- أضف 1 عنصر إلى مصفوفة
- هام لرسوميات الوجه المخصصة: في
Curve Blend Option، اختر "Use Max Value". هذا يسمح لرسوميات الوجه المخصصة (التعابير، العواطف، إلخ) بأن تكون مركبة بشكل صحيح فوق مزامنة الشفاه. - قم بعمل الاتصالات:
- الرسوميات الحالية (مثل
BodyPose) → إدخالBase Pose - إخراج رسمية الوجه (من عقد مزامنة الشفاه و/أو الضحك) → إدخال
Blend Poses 0 - عقدة الدمج الطبقي → وضع
Resultالنهائي
- الرسوميات الحالية (مثل

اختيار مجموعة Morph Target
- النموذج القياسي
- النماذج الواقعية
يستخدم النموذج القياسي أصول وضعية تدعم بشكل أساسي أي اصطلاح تسمية لـ morph target من خلال إعداد أصل الوضع المخصص. لا حاجة لتكوين إضافي.
تتضمن عقدة Blend Realistic MetaHuman Lip Sync خاصية Morph Target Set التي تحدد اصطلاح تسمية morph target المستخدم لرسمية الوجه:
| مجموعة Morph Target | الوصف | حالات الاستخدام |
|---|---|---|
| MetaHuman (الافتراضي) | أسماء morph target القياسية لـ MetaHuman (مثل CTRL_expressions_jawOpen) | شخصيات MetaHuman |
| ARKit | أسماء متوافقة مع Apple ARKit (مثل JawOpen, MouthSmileLeft) | الشخصيات القائمة على ARKit |
ضبط سلوك مزامنة الشفاه بدقة
التحكم في بروز اللسان
في نموذج مزامنة الشفاه القياسي، قد تلاحظ حركة لسان مفرطة للأمام أثناء بعض الفونيمات. للتحكم في بروز اللسان:
- بعد عقدة دمج مزامنة الشفاه الخاصة بك، أضف عقدة
Modify Curve - انقر بزر الماوس الأيمن على عقدة
Modify Curveواختر Add Curve Pin - أضف دبوس منحنى بالاسم
CTRL_expressions_tongueOut - اضبط خاصية Apply Mode للعقدة على Scale
- اضبط معامل Value للتحكم في امتداد اللسان (مثل 0.8 لتقليل البروز بنسبة 20%)
التحكم في فتح الفك
قد تنتج مزامنة الشفاه الواقعية حركات فك مفرطة الاستجابة اعتمادًا على محتوى الصوت ومتطلباتك البصرية. لضبط شدة فتح الفك:
- بعد عقدة دمج مزامنة الشفاه الخاصة بك، أضف عقدة
Modify Curve - انقر بزر الماوس الأيمن على عقدة
Modify Curveواختر Add Curve Pin - أضف دبوس منحنى بالاسم
CTRL_expressions_jawOpen - اضبط خاصية Apply Mode للعقدة على Scale
- اضبط معامل Value للتحكم في نطاق فتح الفك (مثل 0.9 لتقليل حركة الفك بنسبة 10%)
الضبط الدقيق الخاص بالمزاج
للنماذج المدعومة بالمزاج، يمكنك ضبط تعابير عاطفية محددة بدقة:
التحكم في الحاجب:
CTRL_expressions_browRaiseInL/CTRL_expressions_browRaiseInR- رفع الحاجب الداخليCTRL_expressions_browRaiseOuterL/CTRL_expressions_browRaiseOuterR- رفع الحاجب الخارجيCTRL_expressions_browDownL/CTRL_expressions_browDownR- خفض الحاجب
التحكم في تعبير العين:
CTRL_expressions_eyeSquintInnerL/CTRL_expressions_eyeSquintInnerR- تضييق العينCTRL_expressions_eyeCheekRaiseL/CTRL_expressions_eyeCheekRaiseR- رفع الخد
مقارنة النماذج والاختيار
الاختيار بين النماذج
عند اتخاذ قرار بشأن نموذج مزامنة الشفاه الذي ستستخدمه لمشروعك، ضع في اعتبارك هذه العوامل:
| الاعتبار | النموذج القياسي | النموذج الواقعي | النموذج الواقعي المدعوم بالمزاج |
|---|---|---|---|
| التوافق مع الشخصية | MetaHumans وجميع أنواع الشخصيات المخصصة | شخصيات MetaHumans (و ARKit) | شخصيات MetaHumans (و ARKit) |
| الجودة البصرية | مزامنة شفاه جيدة مع أداء فعال | واقعية محسنة مع حركات فم أكثر طبيعية | واقعية محسنة مع تعابير عاطفية |
| الأداء | محسن لجميع المنصات بما في ذلك الهاتف المحمول/VR | متطلبات موارد أعلى | متطلبات موارد أعلى |
| الميزات | 14 وحدة مرئية، كشف ضحك | 81 عنصر تحكم في الوجه، 3 مستويات تحسين | 81 عنصر تحكم في الوجه، 12 مزاج، إخراج قابل للتكوين |
| دعم المنصة | Windows, Android, Quest | Windows, Mac, iOS, Linux, Android, Quest | Windows, Mac, iOS, Linux, Android, Quest |
| حالات الاستخدام | التطبيقات العامة، الألعاب، VR/AR، الهاتف المحمول | التجارب السينمائية، التفاعلات القريبة | سرد القصص العاطفي، تفاعل الشخصية المتقدم |
توافق إصدار المحرك
إذا كنت تستخدم Unreal Engine 5.2، فقد لا تعمل النماذج الواقعية بشكل صحيح بسبب خطأ في مكتبة إعادة التشكيل في UE. لمستخدمي UE 5.2 الذين يحتاجون إلى وظيفة مزامنة شفاه موثوقة، يرجى استخدام النموذج القياسي بدلاً من ذلك.
هذه المشكلة خاصة بـ UE 5.2 ولا تؤثر على إصدارات المحرك الأخرى.
توصيات الأداء
- بالنسبة لمعظم المشاريع، يوفر النموذج القياسي توازنًا ممتازًا بين الجودة والأداء
- استخدم النموذج الواقعي عندما تحتاج إلى أعلى دقة بصرية لشخصيات MetaHuman
- استخدم النموذج الواقعي المدعوم بالمزاج عندما يكون التحكم في التعبير العاطفي مهمًا لتطبيقك
- ضع في اعتبارك قدرات الأداء لمنصتك المستهدفة عند الاختيار بين النماذج
- اختبر مستويات التحسين المختلفة للعثور على أفضل توازن لحالة استخدامك المحددة
استكشاف الأخطاء وإصلاحها
المشكلات الشائعة
إعادة إنشاء المولد للنماذج الواقعية: من أجل تشغيل موثوق ومتسق مع النماذج الواقعية، يوصى بإعادة إنشاء المولد في كل مرة تريد فيها تغذية بيانات صوتية جديدة بعد فترة من الخمول. هذا بسبب سلوك وقت تشغيل ONNX الذي يمكن أن يتسبب في توقف مزامنة الشفاه عن العمل عند إعادة استخدام المولدات بعد فترات من الصمت.
على سبيل المثال، يمكنك إعادة إنشاء مولد مزامنة الشفاه في كل بدء تشغيل، مثل كلما استدعيت Play Sound 2D أو استخدمت أي طريقة أخرى لبدء تشغيل موجة صوتية ومزامنة الشفاه:

موقع الإضافة للتكامل مع Runtime Text To Speech: عند استخدام Runtime MetaHuman Lip Sync مع Runtime Text To Speech (كلتا الإضافتين تستخدمان ONNX Runtime)، قد تواجه مشكلات في الحزم المبنية إذا كانت الإضافات مثبتة في مجلد Marketplace الخاص بالمحرك. لإصلاح هذا:
- حدد موقع كلتا الإضافتين في مجلد تثبيت UE الخاص بك تحت
\Engine\Plugins\Marketplace(مثلC:\Program Files\Epic Games\UE_5.6\Engine\Plugins\Marketplace) - انقل كلًا من مجلدات
RuntimeMetaHumanLipSyncوRuntimeTextToSpeechإلى مجلدPluginsالخاص بمشروعك - إذا لم يكن لمشروعك مجلد
Plugins، فأنشئ واحدًا في نفس الدليل الذي يوجد به ملف.uproject - أعد تشغيل محرر Unreal
يعالج هذا مشكلات التوافق التي يمكن أن تحدث عند تحميل إضافات متعددة قائمة على ONNX Runtime من دليل Marketplace الخاص بالمحرك.
تكوين التغليف (Windows): إذا لم تكن مزامنة الشفاه تعمل بشكل صحيح في مشروعك المغلف على Windows، فتأكد من أنك تستخدم تكوين بناء Shipping بدلاً من Development. يمكن أن يتسبب تكوين Development في حدوث مشكلات مع وقت تشغيل ONRX للنماذج الواقعية في الحزم المبنية.
لإصلاح هذا:
- في إعدادات مشروعك → Packaging، اضبط Build Configuration على Shipping
- أعد تغليف مشروعك

في بعض المشاريع التي تعتمد فقط على Blueprint، قد لا يزال Unreal Engine يبني في تكوين Development حتى عند اختيار Shipping. إذا حدث هذا، قم بتحويل مشروعك إلى مشروع C++ عن طريق إضافة فصل C++ واحد على الأقل (يمكن أن يكون فارغًا). للقيام بذلك، انتقل إلى Tools → New C++ Class في قائمة محرر UE وأنشئ فصلًا فارغًا. هذا سيجبر المشروع على البناء بشكل صحيح في تكوين Shipping. يمكن أن يظل مشروعك يعتمد فقط على Blueprint من حيث الوظيفة، فصل C++ مطلوب فقط لتكوين بناء صحيح.
تدهور استجابة مزامنة الشفاه: إذا واجهت أن مزامنة الشفاه تصبح أقل استجابة بمرور الوقت عند استخدام Streaming Sound Wave أو Capturable Sound Wave، فقد يكون هذا ناتجًا عن تراكم الذاكرة. افتراضيًا، يتم إعادة تخصيص الذاكرة في كل مرة يتم فيها إلحاق صوت جديد. لمنع هذه المشكلة، استدع دالة ReleaseMemory بشكل دوري لتحرير الذاكرة المتراكمة، مثل كل 30 ثانية تقريبًا.
تحسين الأداء:
- اضبط حجم جزء المعالجة للنماذج الواقعية بناءً على متطلبات الأداء الخاصة بك
- استخدم أعداد الخيوط المناسبة لأجهزتك المستهدفة
- ضع في اعتبارك استخدام نوع الإخراج Mouth Only للنماذج المدعومة بالمزاج عندما لا تكون رسمية الوجه الكاملة مطلوبة