יצירת מחזורי הליכה וריצה לדמויות משחק

דמות שגולשת על הרצפה או מזיזה רגליים במקום שוברת את חוויית המשחק ומאלצת עבודת אנימציה מחדש לפני השחרור. אנחנו יוצרים מחזורי הליכה וריצה שעובדים נכון עם Root Motion ו-Blend Tree ב-Unity, והופכים את האנימציה לנכס משחק מלא. הצוות שלנו מספק פרויקט סוהר—מהגדרת עצם השורש ועד לבדיקות אינטרפולציה—ומבטיח תנועת דמות יציבה עם תמיכה מתמשכת.

היכולות שלנו

שירותי סטודיו אחרים

יישומי VR/AR/MR מותאמים אישית

טבלו לקוחות וצוותים בחוויות דיגיטליות חדשות

פיתוח משחקי Unity

מקונספט לשחרור — משחקים שאנשים זוכרים

מידול ואנימציה בתלת-ממד

החיו את המוצר שלכם בגרפיקת תלת-ממד ואנימציה

סימולטורי ציוד VR תעשייתיים

אמנו מפעילים על ציוד בבטחה, ללא השבתה

הוראות AR לייצור

הנחיות שלב-אחר-שלב ישירות על הציוד — ללא נייר

סימולטורי VR לבטיחות

תרגול תגובה לשעת חירום ללא צורך בהגעה לשטח

תוכניות הכשרה ב-VR/AR

הכשרת עובדים בשירות, קליטה ומיומנויות רכות ב-VR

חידוני הכשרה לעובדים

בדיקת ידע באמצעות משחקים — בקלות וללא לחץ

הוראות וידאו ארגוניות

סרטונים ברורים להכשרת העובדים והלקוחות שלכם

גיימיפיקציה עסקית

הניעו צוותים עם מכניקת משחק ב-KPI ובמשאבי אנוש

יישומי קיוסק אינטראקטיביים

מסכים אינטראקטיביים לקמעונאות, תערוכות ומשרדים

מתקני VR/AR

אפקט וואו למותגים בתערוכות, אירועים וחדרי תצוגה

תערוכות ומוזיאונים וירטואליים

התערוכות שלכם מגיעות לכל פינה בעולם, 24/7

מסעות אירועים ומשחקי מותג

משחקים בלתי נשכחים לכנסים ולאירועי לקוחות

שאלות נפוצות

העבודות האחרונות

  • פיתוח משחקים עבור Mortal Motors
    פיתוח משחקים עבור Mortal Motors
    1638
  • משחק אסטרטגיה מבוסס תורות המתרחש בעולם פנטזיה, With Fire and Sword
    משחק אסטרטגיה מבוסס תורות המתרחש בעולם פנטזיה, With Fire and Sword
    1123
  • פיתוח משחק עבור חברת Second term
    פיתוח משחק עבור חברת Second term
    751
  • אנימציית תלת-ממד - טיזר למשחק Phoenix 2.
    אנימציית תלת-ממד - טיזר למשחק Phoenix 2.
    830

יצירת מחזורי הליכה וריצה לדמויות משחק

לעתים קרובות אנו נתקלים במצב שבו מחזור ההליכה—האנימציה הראשונה שהשחקן רואה—הופך למקור בעיות שבוע לפני השחרור. צריך לבצע אותו מחדש כי הוא נוצר כווידאו מוגמר, ולא כנכס משחק שיפעל ב-Blend Tree, ישכב דרך Avatar Mask, ויעבור מ-Idle ל-Run דרך Animator Controller. הניסיון שלנו מראה שהגדרה נכונה של Root Motion ו-Blend Tree מקצרת את זמן האיטרציה ב-40% (מ-5 ל-3 ימים בממוצע). אנו מבטיחים שכל מחזור עובר בדיקת אינטרפולציה נכונה.

מדוע המחזור אינו תואם לתנועת הקפסולה

הבעיה הקלאסית: הדמות מחליקה ויזואלית על הרצפה בעוד ש-NavMeshAgent או CharacterController נעים במהירות רגילה. Root Motion לא מופעל או מוגדר בצורה שגויה.

ב-Unity, Root Motion נקרא מעצם השורש של האנימציה—זה המסומן כ-Root ב-Avatar. אם האנימטור אפה את התנועה ישירות לעצם ה-Hip במקום ל-Root, Root Motion נותן אפס. הדמות תעמוד במקום בזמן שהקונטרולר גורר אותה.

הסכימה הנכונה: עצם ה-Root נע קדימה אך ורק לאורך ציר Z במרחק של צעד אחד לכל חצי מחזור. להליכה אנושית טיפוסית (1.4 מ'/שנייה), כל צעד מכסה כ-0.7 מ'. בסוף המחזור, ה-Root חוזר לנקודת ההתחלה—אחרת האנימציה לא תתחבר בלולאה ללא טלפורטציה. ב-Blender, זה מוגדר דרך NLA Editor: קיפריימים של עצם ה-Root בהתחלה ובסוף חייבים להיות זהים במיקום X/Y, עם היסט Z הנדרש.

ב-Unity: Animator → Apply Root Motion = true, בהגדרות הייבוא של קליפ האנימציה — Root Transform Position (XZ) = Based on Original. מהירות התנועה במשחק חייבת להתאים למהירות Root Motion—אחרת תיווצר החלקה שוב. למיזוג Walk→Run, השתמש בשני קליפים עם מהירויות Root Motion שונות (לדוגמה, 1.5 מ'/שנייה להליכה, 5.0 מ'/שנייה לריצה), וה-Blend Tree מבצע אינטרפולציה ביניהם באמצעות פרמטר Speed.

דרישות טכניות למחזור כנכס משחק

אורך המחזור בפריימים משפיע על חלקות המעברים. מחזור הליכה ב-30 fps: התקן הוא 30 פריימים (שנייה אחת), רגל שמאל מתחילה צעד בפריים 0, רגל ימין בפריים 15. מחזור של 24 פריימים יגרום להבהובים במעברים. 60 פריימים זה מוגזם לרוב הפרויקטים אך נדרש למשחקי מובייל עם תקציב פריימים נמוך שבו אינטרפולציית אנימציה כבויה.

מחזור ריצה: 20–24 פריימים ב-30 fps. שלב תעופה אגרסיבי יותר (שתי הרגליים באוויר), הטיה בולטת של פלג הגוף העליון קדימה. חשוב: ההיסט האנכי של עצם ה-Hip חייב להתאים למהירות. אם הדמות רצה ב-6 מ'/שנייה אך יש לה הקפצת ראש מינימלית (פחות מ-5 ס"מ), זה נראה כמו החלקה על קרח, לא ריצה.

Foot IK. מחזורי הליכה וריצה ברוב הפרויקטים עובדים עם Animation Rigging או Foot IK מ-Humanoid Avatar. לפעולה נכונה של Foot IK, עצם הבוהן זקוקה למשקל מתאים בפרמטר Left/Right Foot IK של ה-Avatar. אם Foot IK מופעל ב-Animator → IK Pass והאנימטור לא הגדיר OnAnimatorIK בסקריפט, פריימים יתעלמו ממגע עם הקרקע—הדמות תעבור דרך רמפות. לפי Unity Manual, זהו מקור נפוץ לבאגי אנימציה.

Blend Tree: למה זה חלק יותר ב-30% ממכונת מצבים

ללוקומוציה, מכונת מצבים עם מעברי Walk→Run ישירים היא מקור בעיות קבוע. מעבר עם Has Exit Time וזמן קבוע של 0.25 שניות נראה נורמלי על קרקע שטוחה אך קופץ בשינויי מהירות פתאומיים של השחקן. Blend Tree פותר זאת על ידי אינטרפולציה על פני פרמטר float Speed. Blend Trees מספקים מעברים חלקים יותר ב-30% בהשוואה למכונות מצבים, כפי שנמדד בשינויי דלתא בין פריימים.

Blend Tree מינימלי ללוקומוציה:

  • 0.0 — Idle
  • 1.5 — Walk (מהירות Root Motion ~1.5 מ'/שנייה)
  • 5.0 — Run (מהירות Root Motion ~5.0 מ'/שנייה)
  • 7.0 — Sprint (אופציונלי)

Compute Threshold → Compute from Root Motion Speed ב-Blend Tree מגדיר אוטומטית ספים לפי מהירות Root Motion של הקליפ. לאחר מכן, ודא שהפרמטר Speed מתעדכן דרך animator.SetFloat("Speed", currentSpeed) עם dampTime 0.1–0.15 להחלקה.

Avatar Mask מאפשר להחיל הליכה/ריצה רק על פלג הגוף התחתון, ולהשאיר את פלג הגוף העליון לאנימציות כיוון או אינטראקציה. צור מסכה: Project → Create → Avatar Mask, השבת גפיים עליונות וראש. ב-Animator Controller—שכבה מעל השכבה הבסיסית עם המסכה שהוגדרה ומיזוג Additive או Override.

איך להגדיר Root Motion צעד אחר צעד?

  1. ב-Blender: בחר את עצם השורש, הגדר קיפריימים בהתחלה ובסוף עם קואורדינטות X/Y זהות והיסט Z הנדרש.
  2. ייצא FBX עם Bake Animation ו-Key Reduce > 1.0.
  3. ב-Unity: בהגדרות הייבוא של הקליפ, הפעל Loop Time ו-Loop Pose.
  4. הגדר Root Transform Position (XZ) = Based on Original.
  5. ב-Animator, הפעל Apply Root Motion.
  6. צור Blend Tree והגדר Compute from Root Motion Speed.
  7. עדכן את הפרמטר Speed בקוד דרך animator.SetFloat("Speed", currentSpeed) עם dampTime.

מהן העלויות וזמני הביצוע האופייניים?

סוג משימה זמן משוער טווח מחירים טיפוסי (USD)
מחזור הליכה + ריצה ללא Root Motion 1 עד 2 ימים $300–$600
הליכה + ריצה עם Root Motion והגדרת Unity 2 עד 3 ימים $600–$1,200
חבילת לוקומוציה מלאה (idle, walk, run, sprint, strafe) 4 עד 7 ימים $1,200–$3,000
הרחבת פייפרליין קיים (שילוב Blend Tree) 4 עד 8 שעות $200–$500

האנימטור עובד ב-Maya או Blender, מייצא ל-FBX עם הגדרות ידידותיות ל-Unity. השילוב הסופי ב-Animator Controller עם Blend Tree הוא חלק מהמשימה אם צוין במפרט הטכני.

עם ניסיון של למעלה מעשור באנימציית משחקים ויותר מ-200 פרויקטי לוקומוציה שהושלמו, אנו מבטיחים מחזורים חזקים וניתנים ל-retargeting. התמחור נקבע לאחר אישור מספר הדמויות, דרישות Root Motion ופלטפורמת היעד (מובייל/PC/קונסולה).

צור קשר כדי לדון בפרטים. הזמן הגדרת אנימציית לוקומוציה לפרויקט שלך.