NVIDIA MotionBricks: نموذج واحد يولّد 350 ألف حركة (ويتحكم أيضًا في الروبوتات)

لم يتغير أنيميشن الألعاب منذ 30 عامًا: الانتقالات، علامات الكليبات، آلات الحالة. يستبدل NVIDIA Research كل ذلك بشبكة واحدة — 15,000 صورة/ثانية، مُدرَّبة على 350,000 كليب حركة، ومتصلة بالفعل بالتحكم الكامل لجسم روبوتات GR00T البشرية.

NVIDIA MotionBricks: نموذج واحد يولّد 350 ألف حركة (ويتحكم أيضًا في الروبوتات)

على مدى ثلاثين عامًا، اتبع تحريك شخصيات ألعاب الفيديو نفس الوصفة: يصنع المحركون انتقالات يدويًا، ثم يوسمون مئات المقاطع (مشي، ركض، قفز، هجوم…)، وبعد ذلك يربطون كل ذلك في آلة حالات تقرر أي مقطع يُشغَّل وكيفية الانتقال من واحد إلى آخر. هذا النظام هش وبطيء ولا يتوسع جيدًا. وقد استبدل NVIDIA Research هذا المسار بالكامل بنموذج واحد: MotionBricks.

tl;dr
  • MotionBricks = شبكة عصبية واحدة تولد حركة الشخصية بدلًا من رسم بياني للتحريك مربوط يدويًا
  • مُدرَّب على أكثر من 350 000 مقطع حركة → حوالي 350 000 «مهارة» حركية داخل النموذج نفسه
  • 15 000 صورة/ثانية للتوليد: سريع بما يكفي للوقت الحقيقي، وبعيد جدًا عن تكلفة المسار التقليدي
  • لا مزيد من الوسوم وآلات الحالات: تعطي بعض الأوامر (أين تمشي، ماذا تمسك، أي أسلوب) والنموذج يملأ كل إطار بينهما
  • الكود مفتوح ومدمج بالفعل في GR00T Whole-Body Control
  • نفس «الدماغ» يحرك شخصيات الألعاب و يتحكم في روبوتات بشرية الشكل — الألعاب والروبوتات تتقاربان

1. كيف كنا نحرك سابقًا (ولماذا كان يتعثر)

يعتمد مسار التحريك التقليدي على ثلاثة أعمدة:

  • التقاط / إنشاء المقاطع: التقاط حركة أو تحريك بمفاتيح، مقطع لكل فعل.
  • وسم كل مقطع («مشي»، «ركض»، «خامل»، «قفز»، «التقاط»…) حتى يعرف المحرك ما يشغله.
  • ربط آلة حالات (animation state machine / blend tree): قواعد تقرر الانتقالات وتدمجها لتجنب الانقطاعات.

المشكلة: كل فعل جديد يضاعف الانتقالات التي يجب إدارتها يدويًا. كلما زادت قدرات الشخصية، أصبح الرسم البياني طبق سباغيتي — هش ومكلف وصعب التطوير. وأي تركيبة غير متوقعة («المشي إلى هذا المقعد، تخطيه، ثم الجلوس») يجب توقعها وربطها صراحة.

2. ما يغيّره MotionBricks: شبكة واحدة

يستبدل MotionBricks هذا الرسم البياني بنموذج فريد مُدرَّب على محيط من الحركات. بدل تخزين مقاطع موسومة وقواعد انتقال، تعلَّم الشبكة «فيزياء» الحركة البشرية من أكثر من 350 000 مقطع. النتيجة: يستطيع توليد أي انتقال، لا مجرد إعادة تشغيله.

المسار التقليديMotionBricks
مقاطع موسومة + آلة حالات مربوطة يدويًاشبكة عصبية توليدية واحدة
انتقالات صريحة يجب توقعهاانتقالات مولدة فوريًا، إطارًا بإطار
كل فعل يضيف تعقيدًاحوالي 350 000 مهارة داخل النموذج نفسه
مكلف الصيانة والتوسيعكود مفتوح وقابل لإعادة الاستخدام
مصمم للألعاب فقطيحرك لعبة و يتحكم في روبوت
الرقم15 000 إطار/ثانية. عند 60 إطارًا في الثانية، يكفي ذلك لتحريك حوالي 250 شخصية بالتوازي في الوقت الحقيقي ضمن ميزانية شخصية واحدة — أو ترك هامش كبير للمحاكاة والفيزياء والعرض.

3. كيف نستخدمه: أوامر، لا مقاطع

يكمن التغيير الجوهري في جملة واحدة: لم تعد تصف أي مقطع تشغّل، بل تصف النية. تكفي بعض الأوامر عالية المستوى، والنموذج يملأ كل إطار وسيط:

motionbricks — من الهدف إلى الحركة
# تعطي النية، لا الإطارات
goto      ./banc            # اختر مكانًا للمشي إليه
grab      ./epee            # اختر كائنًا للإمساك به
style     ./furtif          # اختر أسلوب الحركة

# يولد النموذج كل الإطارات بين المراحل:
# -> يمسك الشخصية السيف، يتخطى المقعد، ثم يجلس
render --fps 60 --realtime

في عرض NVIDIA التوضيحي، يمسك شخص سيفًا، يتخطى مقعدًا، ثم يجلس — تسلسل لم يربطه أحد إطارًا بإطار. يقحم الشبكة حركة مقنعة بين كل هدف.

4. المخطط: قبل / بعد

flowchart TB
    subgraph AVANT["خط الأنابيب الكلاسيكي (Pipeline classique)"]
      A1["مقاطع ملتقطة
+ وسوم يدوية (Clips captures
+ tags manuels)"] --> A2["آلة حالات
(انتقالات مربوطة يدويًا) (Machine a etats
(transitions cablees))"] A2 --> A3["التحريك المشغّل (Animation jouee)"] end subgraph APRES["MotionBricks"] B1["أوامر
(هدف، كائن، أسلوب) (Commandes
(but, objet, style))"] --> B2["شبكة واحدة
350 000 مقطع مُتعلَّم (Un seul reseau
350 000 clips appris)"] B2 --> B3["كل إطار مولَّد
15 000 إطار/ثانية (Chaque frame generee
15 000 fps)"] end
./avant-apres — من الرسم البياني المربوط إلى النموذج التوليدي الفريد

5. المنعطف الحقيقي: نفس الدماغ للروبوتات

هنا يصبح الأمر مذهلًا. كود MotionBricks مفتوح ومدمج بالفعل في GR00T Whole-Body Control — حزمة NVIDIA لـالتحكم الكامل بجسم الروبوتات البشرية الشكل. بمعنى آخر، النموذج نفسه الذي يحرك شخصية لعبة يُستخدم أيضًا لتحريك روبوت فيزيائي.

ليس صدفة. توليد حركة بشرية مقنعة والتحكم فيها عبر أهداف هو بالضبط ما يحتاجه الروبوت البشري الشكل للمشي والانحناء والإمساك بكائن والحفاظ على التوازن. أصبحت ألعاب الفيديو والروبوتات تشتركان أخيرًا في نفس الأساس.

لماذا هذا مهميمكن نقل حركة مُتعلَّمة في المحاكاة (مجانية ومتوازية بشكل هائل على GPU) إلى روبوت حقيقي. أصبحت حلقة «محاكاة → تعلم → نشر» أقصر بكثير — وهذا كل رهان NVIDIA مع Isaac وGR00T.

6. ماذا يعني ذلك لك

أنت…ما يتغير
مطور ألعاب / محركرسوم بيانية أقل للربط، وتوجيه فني أكثر عبر النية؛ شخصيات غير لاعبة ترتجل انتقالات مقنعة
مهندس روبوتاتمتحكم جسم كامل قابل لإعادة الاستخدام، مُدرَّب في المحاكاة وقابل للنقل إلى العتاد
طالب ذكاء اصطناعي / تعلم آليمثال تعليمي لنموذج توليدي مطبق على التحكم الحركي (خارج النص والصورة)
مبدع / فضوليإشارة إلى أن الذكاء الاصطناعي التوليدي يخرج من الشاشة للتحكم في أشياء تتحرك في العالم الحقيقي

7. ما يجب تذكره (القيود)

  • بحث، ليس منتجًا نهائيًا. عمل من NVIDIA Research: مذهل في العرض التوضيحي، لكن التكامل في الإنتاج (محركات، روبوتات) يتطلب جهدًا.
  • يتطلب GPU. 15 000 إطار/ثانية للتوليد يفترض عتادًا مناسبًا؛ «مجانية» الوقت الحقيقي لها تكلفة حسابية.
  • الواقع لا يزال صعبًا. نقل الحركة من المحاكاة إلى روبوت فيزيائي («sim-to-real») لا يزال يحمل مخاطره: احتكاك، مستشعرات، أمان.
  • البيانات والتحيز. نموذج مُدرَّب على 350 000 مقطع يعكس ما رآه — الأساليب والأشكال والحركات الممثلة في مجموعة البيانات.
فهم ما يجعل هذا ممكنًا

الشبكات العصبية، النماذج التوليدية، التعلم بالتعزيز، GPU: هذه هي اللبنات وراء MotionBricks. نُدرّسها خطوة بخطوة، من المبتدئ إلى الخبير — ونجمع دفاترنا ونماذجنا في مساحة الموارد.

Voir les formations IA & ML Lire d'autres décryptages

FAQ

هل MotionBricks مولد فيديو؟
لا. إنه نموذج يولد حركة شخصية (هياكل/وضعيات متحركة)، وليس بكسلات فيديو. يُستخدم في محرك لعبة أو للتحكم في روبوت، ثم يُعرض المشهد بشكل منفصل.
ماذا يعني «350 000 حركة» بالضبط؟
دُرّب النموذج على أكثر من 350 000 مقطع حركة. لا «يُكدّس» 350 000 مقطع: بل تعلَّم تمثيلًا مستمرًا يسمح له بتوليد انتقالات جديدة، لا مجرد إعادة تشغيل الموجود.
لماذا 15 000 إطار/ثانية مهم؟
هي سرعة توليد الحركة (وليس العرض). بهذه السرعة يمكن تحريك الكثير من الشخصيات في الوقت الحقيقي، أو الاحتفاظ بميزانية GPU للفيزياء والعرض.
لماذا ربطه بالروبوتات؟
لأن توليد حركة بشرية عبر أهداف هو بالضبط ما يحتاجه الروبوت البشري الشكل. الكود مدمج في GR00T Whole-Body Control، لذا يحرك النموذج نفسه لعبة ويتحكم في روبوت.
هل يمكنني تجربته؟
أُعلن أن الكود مفتوح وموجود في حزمة GR00T Whole-Body Control من NVIDIA. نظرًا لمتطلبات GPU، فهو موجه حاليًا للمطورين والباحثين.

Sources : annonce et démonstration de NVIDIA Research (MotionBricks / GR00T Whole-Body Control). Détails techniques susceptibles d'évoluer — réfère-toi aux publications et au dépôt officiels de NVIDIA.