מבוא: בעיות תאימות אופייניות של בקרי VR
נתקלנו במצבים שבהם אפליקציה שעובדת בצורה מושלמת על Quest 2 מאבדת פונקציונליות על Quest Pro. הסיבה היא פרופילי Input Binding שונים ו-API של משוב הפטי (haptic). ללא בדיקות פונקציונליות של בקרים עבור כל דגם קסדה, באג כזה יגיע בוודאות לגרסת ההפצה. הצוות שלנו ביצע למעלה מ-50 פרויקטי בדיקות VR, כולל בדיקות shuttle על 8 דגמי קסדות. אנו מבצעים בדיקות מקצה לקצה—החל מהקמת סביבת הבדיקה ועד לדוח הסופי. החיסכון בתקציב תיקוני באגים יכול להגיע עד 40% בהשוואה לתיקונים לאחר ההפצה.
כיצד להגדיר כראוי Input Mapping עבור כל הבקרים
OpenXR מתקן את הקלט באמצעות OpenXR Input Binding Profiles. ב-Unity עם XR Interaction Toolkit ו-OpenXR Plugin, כל פעולות הבקר ממופות דרך InputActionAsset עם מספר פרופילי binding: Oculus Touch Controller Profile, Valve Index Controller Profile, HTC Vive Controller Profile, Windows Mixed Reality Controller Profile.
בעיה נפוצה: ה-binding מוגדר רק עבור פרופיל אחד. מפתח מוסיף <XRInputBinding path="/user/hand/right/input/trigger/value"> ללא ציון פרופיל—ה-binding חל על הבקר "ברירת המחדל" ואינו עובד על Index Knuckles או בקרי WMR. אנו ממליצים להשתמש ב-bindings מרובי-פרופילים: עבור כל פעולה ב-InputActionAsset, הוסיפו bindings עבור כל הפרופילים הנתמכים. XR Interaction Toolkit מספק נכס Default Input Actions עם bindings מרובי-פרופילים מוגדרים מראש—נקודת התחלה טובה, אך דורש ביקורת עבור הפרויקט הספציפי.
ספציפי ל-Meta Quest Pro: לבקרי Touch Pro יש חיישנים נוספים (מצביע stylus, מגע קיבולי בכפתורים). אם האפליקציה משתמשת ב-OVRInput ישירות במקום ב-OpenXR Actions, עליכם לטפל במפורש ב-OVRInput.Controller.TouchPro כסוג נפרד—אחרת חלק מהכפתורים יחזירו ערכים שגויים. OpenXR Actions עדיפים על OVRInput לתאימות חוצת-פלטפורמות: הם מתאימים את עצמם אוטומטית לפרופיל, ומפחיתים את הסיכון לבאגים.
מעקב ידיים: קלט חלופי שלעתים קרובות מוזנח
Quest 2, 3 ו-Pro תומכים במעקב ידיים ללא בקרים. אם האפליקציה טוענת לתמיכה במעקב ידיים, יש לבדוק זאת בנפרד—למעקב ידיים יש צינור קלט שונה ומגבלות שונות.
ה-XR Hands Package (com.unity.xr.hands) מספק XRHandSubsystem עם נתונים על 26 מפרקים לכל יד. מחוות מיושמות באמצעות רכיבי XRHandGesture או לוגיקה מותאמת אישית. הבעיה: מחוות הצביטה, שיטת האינטראקציה העיקרית ללא בקר, סובלת מהשהיה והפעלות שווא במהלך תנועות אצבע מהירות. בבדיקות שלנו, שיעורי הפעלת צביטה שגויה במהלך פעילות אצבע רגילה יכולים להגיע ל-15%, דבר שאינו מקובל בתרחישי משחק. השהיית התגובה יכולה להיות 30–50 אלפיות השנייה, קריטית למשחקי קצב.
מקרי הבדיקה למעקב ידיים שונים מאלה של בקרים: אנו בודקים דיוק זיהוי בתנאי תאורה נמוכה (מתחת ל-100 לוקס), עם חסימת יד, ובמהלך מחוות מהירות. אנו מתעדים שיעורי הפעלה שגויה ומספקים המלצות לכיול סף רגישות. קבלת ייעוץ על הגדרת מעקב ידיים יכולה להפחית משמעותית את זמן האיתור והתיקון.
מדוע בדיקות הפטיקה הן קריטיות
ל-Touch Pro ו-Touch Plus יש מערכת הפטיקה TruTouch—רטט מדויק יותר עם תמיכה באמפליטודה ובתדר. ל-Touch על Quest 2 יש רטט בסיסי עם פרמטר עוצמה יחיד. ה-API שונים: OVRHaptics עבור Meta מקורי, XRBaseController.SendHapticImpulse(amplitude, duration) עבור OpenXR. על Touch Pro באמצעות Meta XR SDK, OVRInput.SetControllerVibration מציע פרמטרים מורחבים. אם משתמשים רק ב-API ההפטי הבסיסי של OpenXR, TruTouch על בקרי Pro יעבוד כמו רטט רגיל, ולא ינצל את יתרון החומרה. כתוצאה מכך, המשתמש מאבד חוויית immersion, והצוות מבזבז זמן על תיקונים לאחר ההפצה.
בדיקה: השוו הפטיקה על Quest 2 ו-Quest 3/Pro עבור אותם אירועי משחק. מכת חרב—עוצמה שונה? צפוי. הפטיקה חסרה לחלוטין במכשיר אחד—באג, אנו מתעדים אותו.
מטריצת בדיקות: מה כלול בעבודה
בדיקות פונקציונליות מתבצעות באמצעות מטריצה: מכשירים × מקרי בדיקה. מטריצה מינימלית לפרויקט ראשוני של Quest:
| מקרה בדיקה | Quest 2 | Quest 3 | Quest Pro | Index |
|---|---|---|---|---|
| הדק—אחיזה באובייקט | ||||
| Grip—החזקה | ||||
| כפתורי A/B/X/Y | ||||
| תנועה עם מקל שליטה | ||||
| משוב הפטי בעת אינטראקציה | ||||
| מעקב ידיים—בחירה בצביטה | ||||
| מקרי קצה (בקר עם סוללה חלשה) |
כל תא: Pass / Fail / Not Applicable + תיאור במקרה של Fail. זהו מסמך חי שמתעדכן עם כל build. התוצר הוא מטריצת בדיקות עם מקרי Fail מתועדים, עדיפויות והמלצות לתיקון. ההיקף כולל: ביקורת Input Mapping, בדיקות הפטיקה ומעקב ידיים, ובדיקות עומס של תנאי קצה.
רשימת טעויות אופייניות בבדיקת בקרים
- שימוש בפרופיל Input Binding אחד בלבד במקום מרובה-פרופילים
- היעדר בדיקות הפטיקה על דגמים שונים
- התעלמות ממעקב ידיים בתרחישי בקר
- בדיקה רק על מכשיר אחד מתוך הסדרה
לוחות זמנים ופורמט עבודה
בדיקות פונקציונליות של בקרים דורשות גישה פיזית למכשירים. אם ללקוח אין קסדות בדיקה, אנו דנים באפשרות שימוש במכשירים שלנו או השכרה.
| היקף בדיקות | לוחות זמנים משוערים |
|---|---|
| קסדה אחת, מטריצה בסיסית | 2–4 ימים |
| 2–3 דגמי קסדות, מטריצה מלאה | 1–2 שבועות |
| בדיקות ריבוי-פלטפורמות מלאות | 2–4 שבועות |
התוצר הוא מטריצת בדיקות עם מקרי Fail מתועדים, עדיפויות והמלצות לתיקון. העלות מחושבת לאחר קבלת רשימת המכשירים הנתמכים והיקף הפונקציונליות. קבלו ייעוץ—נעריך את ההיקף ואת לוחות הזמנים עבור הפרויקט שלכם.





