מה זה Monado?
Monado הוא runtime בקוד פתוח ל-XR (מציאות מדומה ורבודה), שתואם לסטנדרט OpenXR.
הפרויקט שואף לספק תמיכה מלאה לאמצעי XR (כגון קסדות VR, AR ומשקפיים חכמים) על גבי מערכות לינוקס
(ובמידה מסוימת גם ל-Windows), ומהווה את הרכיב הדרוש להרצת אפליקציות XR בצורה יעילה וחופשית
ממגבלות של ספקים ספציפיים.
Monado מפותח כחלק מהחזון של חופש חומרתי ותוכנתי בעולם המציאות המדומה והרבודה –
תחום שבדרך כלל נשלט על ידי פתרונות קנייניים.
למה Monado משמש?
Monado משמש כ-XR runtime, כלומר:
חוליית קישור בין חומרה לאפליקציות – הוא מקבל מידע מחיישני תנועה, מצלמות ומעקב, ומעבירו לאפליקציות XR.
יישום של OpenXR – מאפשר לאפליקציות שנכתבו על פי תקן OpenXR לרוץ על מגוון פלטפורמות וחומרות.
מחקר, פיתוח ופרוטוטייפינג – Monado מאפשר לאוניברסיטאות, חוקרים וחובבים לפתח טכנולוגיות XR
ללא תלות בפתרונות מסחריים.
חלופה חינמית ואוניברסלית – לרוב משתמשי לינוקס אין גישה ל-Oculus Runtime או SteamVR בצורה טבעית,
ו-Monado סוגר את הפער הזה.
פיתוח Monado
Monado הוא פרויקט קוד פתוח שמפותח על ידי Collabora, בשיתוף קהילה רחבה של מפתחים עצמאיים.
הפיתוח מתבצע בגיטאב, והספרייה כתובה בעיקר ב-C, תוך שימוש בספריות כמו Vulkan, OpenGL ו-Mesa.
עקרונות הפיתוח המרכזיים:
תאימות מלאה ל-OpenXR – תקן שנוצר ע״י Khronos Group.
מיקוד בלינוקס – תמיכה טבעית ב-Udev, Wayland, X11, וליבת לינוקס.
תמיכה נרחבת בחומרות – כולל Valve Index, Oculus Rift, PSVR, OpenHMD ועוד.
XR בסביבות נטולות GUI – כולל אפשרות להריץ XR גם ב-headless או embedded systems.
אלטרנטיבות למערכת Monado
פתרונות קנייניים:
SteamVR – של Valve, תומך ב-Windows ולינוקס אך לא בקוד פתוח.
Oculus Runtime – פתרון רשמי של Meta עבור Oculus, מוגבל ל-Windows.
Windows Mixed Reality – זמין אך ורק עבור Windows 10 ומעלה.
פתרונות נוספים בקוד פתוח:
OpenHMD – מספק גישה לנתוני חיישנים ותצוגה, אך אינו מיישם OpenXR מלא כמו Monado.
SimulaXR – מערכת XR מבוססת לינוקס, אך מתמקדת יותר ב-shell ו-ui מאשר בפרוטוקול OpenXR.
Monado שונה בכך שהוא היחיד שנועד להיות תשתית מלאה ל-XR תחת תקן פתוח – ולא רק ממשק לחומרה.
שאלות ותשובות בנושא Monado
האם Monado תומך ב-Hand Tracking?
כן, Monado תומך ב-hand tracking דרך הרחבות ל-OpenXR (כגון XR_EXT_hand_tracking),
אך התמיכה תלויה גם ביכולת של החומרה.
איך Monado מממש positional tracking?
Monado כולל תת-מודולים כמו xrt למימוש ה-Tracking, ומשתמש באלגוריתמים של SLAM או fusion של IMU ומצלמה.
ניתן גם לשלב עם חבילות כמו libsurvive או PSVR tracking.
האם אפשר להשתמש ב-Monado בתוך Docker או מערכת Embedded?
כן, ניתן – Monado נכתב בצורה מודולרית וניתן להריץ אותו גם ב-headless mode, דבר שמאפשר שילוב
ב-Kubernetes, מערכות מציאות מדומה רובוטיות ועוד.
האם Monado תומך ב-Wayland?
כן, Monado תומך ב-Wayland וגם ב-X11. התמיכה ב-Wayland אף חשובה כי XR ב-Wayland
הוא חלק בלתי נפרד מהעתיד של לינוקס.
האם אפשר לפתח אפליקציות Unity/Unreal מול Monado?
כן, אם אתה משתמש ב-OpenXR plugin של Unity או Unreal, תוכל להשתמש ב-Monado כ-runtime.
יש לו תאימות לתקן OpenXR כך שאין צורך להתאים קוד.

