הגדרת IPD בקוד משחק VR: תמיכת תוכנה

משתמשים מתלוננים על כאבי ראש וראייה מטושטשת במשחק ה-VR שלכם? לעיתים קרובות הסיבה היא הגדרות לא נכונות של מרחק בין אישונים (IPD). אנו מגדירים תמיכת IPD תוכנתית בקוד הפרויקט שלכם, ומבטיחים תמונה נוחה לכל שחקן. הצוות שלנו מספק פתרון מלא—מבדיקת מערך המצלמה הנוכחי ועד ליישום ותמיכה מתמשכת.

היכולות שלנו

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

יישומי 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

הגדרת מרחק בין אישונים (IPD) בקוד המשחק

בפרקטיקה שלנו, ראינו שוב ושוב פרויקטים שבהם לאחר הבדיקות הראשונות, משתמשים התלוננו על כאבי ראש ותמונות מטושטשות. הסיבה—התעלמות ממרחק בין אישונים (IPD). IPD הוא המרחק בין מרכזי האישונים, בממוצע 63–65 מ"מ אצל מבוגרים, אבל הטווח האמיתי הוא 54 עד 74 מ"מ. משקפי VR שאינם מתחשבים ב-IPD הספציפי של המשתמש מספקים תמונות מטושטשות, ראייה כפולה וכאבי ראש תוך 15–20 דקות. הגדרת IPD אינה תכונה אופציונלית—זו דרישה בסיסית לכל יישום VR. הניסיון שלנו מראה שתמיכת IPD נכונה בתוכנה מפחיתה משוב שלילי ב-30% ומגבירה את שימור המשתמשים.

כיצד IPD מיושם: חומרה ותוכנה

רוב משקפי ה-VR מטפלים ב-IPD פיזית: Quest 3 ו-Index כוללים כוונון IPD מכני (Quest 3—שלוש עמדות קבועות: 58, 63, 68 מ"מ; Index—כוונון חלק 58–70 מ"מ). PSVR2 משתמש בכוונון תוכנה ללא מחוון מכני.

בצד התוכנה: גם עם IPD פיזי מוגדר נכון, מנוע המשחק חייב למקם את המצלמות הווירטואליות כראוי. ב-Unity דרך OVR SDK, IPD פיזי נקרא אוטומטית דרך OVRPlugin.GetFloat(OVRPlugin.BoolType.ipd) ומיושם על היסט העיניים—המרחק בין המצלמות השמאלית והימנית. אין צורך לגעת בזה ידנית אלא אם משתמשים במערך מצלמות לא סטנדרטי.

הבעיה נוצרת בפרויקטים עם מערכי מצלמה מותאמים אישית—לדוגמה, כאשר מפתח בונה VRCameraController משלו על גבי OVRCameraRig או XRRig ומקודד היסט עיניים = 0.064f (סטנדרטי). משתמש עם IPD של 57 מ"מ מקבל סטריאו שגוי וחווה מאמץ בעיניים. לאחר מספר ימים—ביקורות שליליות כמו "העיניים שלי כואבות".

כיצד לקבל IPD פרוגרמטית ב-Unity

עבור Meta Quest דרך OVR SDK:

float ipd = OVRPlugin.GetEyeRecommendedResolutionScale() > 0 ? OVRPlugin.ipd : 0.064f; // fallback к стандарту
leftCamera.transform.localPosition = new Vector3(-ipd / 2f, 0, 0);
rightCamera.transform.localPosition = new Vector3(ipd / 2f, 0, 0);

float ipd = OVRPlugin.GetEyeRecommendedResolutionScale() > 0 ? OVRPlugin.ipd : 0.064f; // fallback к стандарту leftCamera.transform.localPosition = new Vector3(-ipd / 2f, 0, 0); rightCamera.transform.localPosition = new Vector3(ipd / 2f, 0, 0); מחזיר את הערך הנוכחי במטרים, נקרא מהחיישן או מהגדרות המערכת. הוא מתעדכן דינמית כאשר IPD פיזי משתנה (במכשירים עם כוונון מכני)—מומלץ להירשם ל-OVRPlugin.ipd או לבדוק ב-OVRManager.DisplayRefreshRateChanged עם הגבלת קצב כל 0.5 שניות.

עבור OpenXR (XR Interaction Toolkit): היסט העיניים מנוהל דרך Update(), שמקבל נתונים מספק ה-XR הספציפי. גישה ישירה ל-IPD דרך XRCameraSubsystem—מחזיר מיקומים של שתי העיניים בקואורדינטות עולם, שמהם מחושב IPD כ-UnityEngine.XR.InputDevice.TryGetFeatureValue(CommonUsages.eyesData, out Eyes eyes).

מדוע IPD שגוי גורם לאי-נוחות

IPD בקוד משפיע לא רק על הנוחות הפיזית אלא גם על תפיסת גודל האובייקטים. היסט העיניים במנוע שולט בפרלקסה—ההבדל בין התמונות לעין שמאל וימין. כאשר היסט העיניים גדול מה-IPD האמיתי, אובייקטים נראים קטנים יותר (אפקט "קנה מידה מאקרו"). כאשר הוא קטן יותר, הם נראים גדולים יותר (אפקט "ענקיות"). זה משמש אמנותית במשחקים—משחקי VR בקנה מידה ענק מפחיתים בכוונה את היסט העיניים.

עבור סימולטורים ריאליסטיים ויישומי VR חינוכיים, סטייה של היסט העיניים מה-IPD האמיתי של המשתמש אינה מקובלת. דיוק הוא קריטי.

טעות נפוצה בפרויקטים של Unity: Vector3.Distance(leftEyePos, rightEyePos) ו-IPD הם דברים שונים. Camera.stereoSeparation הוא פרמטר תוכנה שמתווסף על גבי IPD חומרתי. אם שניהם אינם אפס, נוצר היסט כפול. הערך של stereoSeparation צריך להיות 0.0f ברוב פרויקטי ה-VR אלא אם נעשה שימוש בהיסט אמנותי מכוון.

הגדרת IPD בממשק המשתמש

עבור PSVR2 ומשקפיים אחרים עם IPD תוכנתי, יש צורך במסך הגדרות ביישום. UX סטנדרטי: מחוון אופקי מ-54 עד 74 מ"מ עם צעד של 1 מ"מ, תצוגה מקדימה בזמן אמת. מיושם דרך API ספציפי לספק—עבור PSVR2 זה Unity PS VR2 Plugin עם Camera.stereoSeparation.

בדיקת IPD: מסך ההגדרות מציג שני קווים אנכיים או כוונות—אחד לעין שמאל ואחד לעין ימין. עם IPD נכון, הקווים נראים כאחד. זו טכניקה סטנדרטית שבה משתמשים יצרני המשקפיים עצמם. כוונון תוכנה מדויק פי 1.5 מכני בשל היעדר משחק (play).

השוואה בין IPD מכני ותוכנתי

פרמטר IPD מכני IPD תוכנתי
דיוק כוונון 1–3 מ"מ 0.1 מ"מ
תמיכה במהלך סשן קבוע דינמי
נדרש ממשק משתמש לא כן
עלות יישום מובנה במשקפיים דורש פיתוח

מה כלול בעבודת הגדרת IPD

  • ביקורת על מערך המצלמות הנוכחי עבור היסטי עיניים מקודדים.
  • קריאת IPD דרך OVR SDK או OpenXR.
  • יישום מחוון ממשק משתמש ל-IPD תוכנתי (אם נדרש).
  • אינטגרציה חוצת פלטפורמות (Quest, PSVR2, PC VR).
  • בדיקות עם משתמשים בעלי IPD שונים.
  • תיעוד והדרכת צוות.

אנו מבטיחים שאחרי השדרוג, המשחק שלך יהיה נוח למשתמשים עם כל IPD. המהנדסים שלנו מוסמכים ב-Unity ו-Unreal Engine, ויש להם למעלה מ-10 שנות ניסיון בפיתוח VR. ראה תיעוד Unity OVRPlugin.

משימה זמן משוער
ביקורת ותיקון IPD במערך מצלמות קיים יום עסקים אחד
יישום ממשק IPD תוכנתי עם תצוגה מקדימה 2–4 ימי עסקים
שכבת IPD חוצת פלטפורמות (Quest + OpenXR + PSVR2) 1–2 שבועות

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