פיתוח באמצעות Unreal Engine ל-Android XR

מכשירי XR רלוונטיים
ההנחיות האלה יעזרו לכם ליצור חוויות למכשירי XR מהסוגים הבאים.
משקפי XR
משקפי XR עם חיבור חוטי

התמיכה של Unreal Engine בפיתוח XR מבוססת על תקן OpenXR, כדי להבטיח שהתכונות של OpenXR שנתמכות ב-Android XR נתמכות באופן מובנה ב-Unreal.

המדריך הזה כולל את הפרקים הבאים:

  • תמיכה של Unreal Engine ב-Android XR
    • מידע בסיסי על Unreal Engine XR
    • פיתוח ופרסום של אפליקציות ל-Android XR
    • פלאגינים של Unreal Engine ל-Android XR
    • קבלת תמיכה
  • קלט ואינטראקציה
  • סיומות נתמכות

תמיכה של Unreal Engine ב-Android XR

כשמפתחים אפליקציות Unreal ל-Android XR, אפשר להשתמש ביכולות המחשוב המרחבי של הגרסה העדכנית של Unreal Engine 5. ‫Unreal Engine 5 מספק תמיכה במפרט הליבה של OpenXR, ותוספי Android XR ל-Unreal מספקים תמיכה ב-Android XR ובתוספים ספציפיים אחרים שיעזרו לכם להתחיל לעבוד במהירות.

מידע בסיסי על Unreal Engine XR

אם אין לכם הרבה ניסיון ב-Unreal או בפיתוח XR, תוכלו לעיין במאמרי העזרה למפתחים של Unreal בנושא XR כדי להבין מושגים בסיסיים ותהליכי עבודה. הנה כמה תחומים מרכזיים שכדאי לבדוק:

לפתח ולפרסם אפליקציות ל-Android

ב-Unreal Engine יש מגוון מאמרי עזרה לפיתוח, לבנייה ולפרסום של אפליקציות ל-Android. המסמכים האלה עוסקים בניהול הרשאות Android בתוך המנוע, בקביעת הגדרות ה-build של Android (דרך הגדרות הפרויקט > Platforms > Android) ובשימוש ב-Unreal Automation Tool‏ (UAT).

בנוסף, כדאי לעיין במסמכי התיעוד בנושא אריזה והפצה של אפליקציות ל-Android XR כדי להכיר את הדרישות הספציפיות שחלות על אפליקציות מרחביות שמופצות בחנות Google Play. כדי לספק חוויית משתמש עקבית ונוחה ב-Android XR, חשוב לוודא שהאפליקציה עומדת גם בהנחיות האיכות לחוויות סוחפות.

פלאגינים של Unreal Engine ל-Android XR

יש שני פלאגינים עיקריים שמספקים תמיכה בפיתוח אפליקציות Unreal ל-Android XR. הפלאגינים האלה מנוהלים דרך התפריט "פלאגינים" (עריכה > פלאגינים).

פלאגין Android XR OpenXR

הפלאגין Android XR OpenXR הוא ממשק המנוע הראשי שמוסיף תמיכה ב-Android XR ל-Unreal. הוא מיישם את התוספים של OpenXR שנדרשים למעקב מרחבי, להבנת הסביבה ולתפיסה. כדי ללמוד איך להוסיף ולהגדיר את הפלאגין הזה, עיינו במסמכי התיעוד של Unreal Engine OpenXR.

‫Android XR Extensions for Unreal

‫Android XR Extensions for Unreal (גרסה 1.1.0, תומכת ב-Unreal Engine 5.6.x וב-5.8.x) הוא פלאגין לתמיכה הבסיסית ב-OpenXR, שכולל תכונות נוספות שיעזרו לכם ליצור חוויות סוחפות, כמו ישויות מרחביות, הטלת קרניים מרחבית ובעומק, ריכוך קצוות של אזור התצוגה, מפת קוביות להערכת תאורה, נתונים מתקדמים של רשת תלת-ממדית של היד ואופטימיזציות ספציפיות לחומרה. כדי ללמוד איך לייבא ולהגדיר את החבילה הזו, פועלים לפי המדריך למתחילים של Android XR Extensions או מעיינים במאמרי העזרה של ה-API של Android XR Extensions for Unreal.

קבלת תמיכה

אם נתקלתם בבעיות, אתם יכולים להיעזר בקטע התמיכה של Unreal Engine בדף התמיכה שלנו.

קלט ואינטראקציה

כדי ליצור חוויות מרחביות אינטראקטיביות, צריך למפות תנועות פיזיות לפעולות דיגיטליות. Unreal Engine משתמש במערכת Enhanced Input בשילוב עם OpenXR כדי לטפל גם בבקרי תנועה וגם במעקב ידיים. הגדרת פעולות קלט והקשרים של מיפוי קלט מאפשרת ליצור אינטראקציות גמישות, כמו אחיזה, הצבעה וניווט בממשק המשתמש, שפועלות בצורה חלקה בשיטות קלט שונות של Android XR.

במסמכי התיעוד של Unreal Engine בנושא יצירת חוויות XR אינטראקטיביות יש מדריך מקיף ליצירת המכניקה הזו.

ב-Android XR יש תמיכה בשיטות האינטראקציה הספציפיות הבאות ב-Unreal Engine:

פרופילי אינטראקציה

אפשר להגדיר פרופילי אינטראקציה בקטע OpenXR ב-Project Settings (הגדרות הפרויקט). כך האפליקציה יכולה לשמור על מיפוי קלט עקבי בין שלטים ושיטות מעקב שונות.

אינטראקציה באמצעות הידיים

האינטראקציה עם הידיים מתבצעת באמצעות התוסף OpenXR Hand Tracking. אתם יכולים לגשת לנתונים ולתנוחות של מפרקי הידיים דרך רכיבי המעקב של XR ב-Blueprints או ב-C++‎.

אינטראקציה באמצעות מבט

אפשר לאחזר את נתוני המבט כקלט סטנדרטי של תנוחה, וכך להפעיל תכונות של מיקוד בממשק המשתמש או של נוכחות חברתית. לשם כך נדרשת ההרשאה android.permission.EYE_TRACKING_FINE.

שליטה בעכבר ובמקלדת בעזרת תנועות של הפנים

גישה לנתונים של הבעות פנים בזמן אמת כדי להנפיש דמויות או ליצור אינטראקציות חברתיות. הפעולה הזו משתמשת בתוסף XR_ANDROID_face_tracking.

סיומות נתמכות

התוספים הבאים של OpenXR נתמכים כשמפתחים ל-Android XR ב-Unreal:

תכונה או יכולת מחרוזת התוסף של OpenXR סופק על ידי

שמירת עוגנים במכשיר

XR_ANDROID_device_anchor_persistence

‫Android XR Extensions for Unreal (גרסה 1.0.0)

Raycast

XR_ANDROID_raycast

‫Android XR Extensions for Unreal (גרסה 1.0.0)

אובייקטים שניתן לעקוב אחריהם (מישורים/עומק)

XR_ANDROID_trackables

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מעקב אחר אובייקטים

XR_ANDROID_trackables_object

‫Android XR Extensions for Unreal (גרסה 1.0.0)

Scene Meshing

XR_ANDROID_scene_meshing

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מעקב אחרי הבעות הפנים

XR_ANDROID_face_tracking

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מעקב עיניים

XR_ANDROID_eye_tracking

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מצב המצלמה של Passthrough

XR_ANDROID_passthrough_camera_state

‫Android XR Extensions for Unreal (גרסה 1.0.0)

שכבת רשת של מעבר

XR_ANDROID_composition_layer_passthrough_mesh

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מרקם עומק

XR_ANDROID_depth_texture

‫Android XR Extensions for Unreal (גרסה 1.0.0)

הערכת תאורה

XR_ANDROID_light_estimation

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מפת קוביות להערכת תאורה

XR_ANDROID_light_estimation_cubemap

‫Android XR Extensions for Unreal (גרסה 1.1.0)

מדדים לבדיקת ביצועים

XR_ANDROID_performance_metrics

‫Android XR Extensions for Unreal (גרסה 1.0.0)

פתרון מומלץ

XR_ANDROID_recommended_resolution

‫Android XR Extensions for Unreal (גרסה 1.0.0)

אינטראקציה עם הידיים

XR_EXT_hand_interaction

‫Android XR Extensions for Unreal (גרסה 1.0.0)

כלי עזר לניפוי באגים

XR_EXT_debug_utils

Unreal Native OpenXR

הגדרות של ביצועים

XR_EXT_performance_settings

Unreal Native OpenXR

קצב הרענון של המסך

XR_FB_display_refresh_rate

Unreal Native OpenXR

רשת מעקב ידיים

XR_FB_hand_tracking_mesh

‫Android XR Extensions for Unreal (גרסה 1.0.0)

Space Warp

XR_FB_space_warp

Unreal Native OpenXR

שכבת קומפוזיציה Equirect2

XR_KHR_composition_layer_equirect2

Unreal Native OpenXR

הגדרות Thread ב-Android

XR_KHR_android_thread_settings

Unreal Native OpenXR

עמעום כללי של המעבר

XR_ANDROID_global_passthrough_dimming

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מאפייני תוסף המערכת

XR_ANDROID_enumerate_system_extension_properties

‫Android XR Extensions for Unreal (גרסה 1.0.0)

ישויות מרחביות

XR_EXT_spatial_entity

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מעקב אחר מישור מרחבי

XR_EXT_spatial_plane_tracking

‫Android XR Extensions for Unreal (גרסה 1.0.0)

מעקב אחר סמנים מרחביים

XR_EXT_spatial_marker_tracking

‫Android XR Extensions for Unreal (גרסה 1.0.0)

עוגנים מרחביים וקביעות

XR_EXT_spatial_anchor, XR_EXT_spatial_persistence

‫Android XR Extensions for Unreal (גרסה 1.0.0)

ריכוך אזור התצוגה

XR_ANDROID_viewport_feathering

‫Android XR Extensions for Unreal (גרסה 1.1.0)

זיהוי מרחבי והטלת קרן עומק

XR_ANDROID_spatial_discovery_raycast

‫Android XR Extensions for Unreal (גרסה 1.1.0)

התוספים מגיעים מאחד מהמקורות הבאים:

  • ‫Android XR Extensions for Unreal: אלה תוספים ספציפיים ל-Google (ANDROID) ותוספים של ישויות מרחביות (EXT) שפותחו לפלטפורמת Android XR. כדי להשתמש ביכולות המרחביות האלה, התקינו והפעילו את הפלאגין Android XR Extensions ב-.uproject ועיינו במאמרי העזרה של Android XR Extensions for Unreal API לגבי השימוש ב-Blueprint וב-C++‎.
  • ‫Unreal Native OpenXR: התכונות האלה משתמשות בתוספים הרגילים של Khronos‏ (KHR),‏ Extension‏ (EXT) ו-Meta‏ (FB) שכבר משולבים ומתוחזקים ישירות בפלאגין OpenXR הראשי של Unreal Engine.