Unity, OpenXR ו-WebXR מספקים ערכת כלים גמישה ליצירת אינטראקציות מגוונות בחוויית משתמש סוחפת. המטרה היא לפתח אפליקציות immersive שמשתמשים יכולים ליצור איתן אינטראקציה באמצעות חוויות קיימות שנלמדו. אפשר לעצב כל דבר, החל מתנועות פשוטות ועד לסימולציות מורכבות שמבוססות על פיזיקה.
חשוב לדעת שאפליקציות Unity, OpenXR ו-WebXR פועלות רק במרחב מלא.
מידע נוסף על עקרונות העיצוב של Android XR
כניסות קלט
אפליקציות XR יכולות לכלול אינטראקציות עם מעקב אחר ידיים, עיניים ופנים, תנועות, פקודות קוליות ומכשירי קלט מסורתיים כמו מקלדות, עכברים ובקרים. כדאי לשקול אילו מקורות קלט יידרשו לאפליקציה כדי לספק חוויית משתמש טבעית ונגישה.
- כדאי לתמוך בתנועות מוכרות כדי לקצר את זמן הלמידה של האפליקציה. כשאתם משתמשים בממשק משתמש דו-ממדי, השתמשו בתנועות מערכת רגילות כמו צביטה. לאינטראקציות תלת-ממדיות כמו איסוף של כדור וזריקה שלו, כדאי להשתמש בתנועות שמחקות את האינטראקציה בעולם האמיתי. כך אפשר להסתמך על הידע הקיים של המשתמש ולצמצם את הצורך במדריכים.
- אם יש צורך בהבעות נוספות, חשוב לוודא שהן פשוטות ללמידה, לזכירה ולביצוע. הימנעו מתנועות מורכבות עם כמה שלבים או מתנוחות לא טבעיות שעלולות לגרום לאי-נוחות ולעייפות. כדאי לספק מדריכים שיעזרו למשתמשים להבין איך להשתמש בתנועות ידיים.
- חשוב לוודא שאפשר להשתמש במכשיר גם ביד ימין וגם ביד שמאל. אם זה לא אפשרי, פועלים לפי העדפת היד הדומיננטית של המערכת.
- אינטראקציות בשתי ידיים יכולות להיות חוויה מעשירה, אבל הן עשויות להיות מאתגרות למשתמשים עם ניידות מוגבלת. לתת עדיפות לאינטראקציות שמבוצעות ביד אחת לפעולות חיוניות. אם נדרשות תנועות בשתי ידיים, יש לספק שיטות חלופיות לשימוש ביד אחת כדי להשיג את אותה תוצאה.
- אפליקציות Unity, OpenXR ו-WebXR לא נהנות באופן אוטומטי ממקבץ הבקשות הקודמות של Android. מומלץ להטמיע סטאק חזרה כדי לאפשר למשתמשים לגשת לתנועת החזרה של Android XR כדי לבטל פעולות או לחזור אחורה באמצעות ניווט בתנועות.
ממשק משתמש
אלמנטים של ממשק משתמש כמו לחצנים, לוחות וטקסט חיוניים לאינטראקציות טבעיות באפליקציות XR. העיצוב צריך לתת עדיפות לחוויית משתמש חלקה ואינטואיטיבית. הבחירות הספציפיות בעיצוב ממשק המשתמש תלויות בדרישות הייחודיות של האפליקציה.
- כדאי למקם רכיבים אינטראקטיביים ראשיים ותוכן חיוני בקו הראייה הטבעי ובשדה הראייה של המשתמש. כך אפשר לשפר את החשיפה ולהבטיח חוויה נוחה. כדי לקבוע באיזו מרחק צריך למקם את הממשק, כדאי לחשוב איך המשתמשים אמורים לקיים אינטראקציה איתו. לדוגמה, האם הם מכוונים באמצעות כוון לייזר או מקישים על לחצנים ישירות עם האצבעות? מגדירים את גודל הממשק בהתאם למרחק המיועד שלו מהמשתמש. עיינו במדריך בנושא גודל וסולם של Android XR.
- כשמעצבים אלמנטים אינטראקטיביים של ממשק משתמש, כמו לחצנים, חשוב להביא בחשבון את האופן שבו המשתמשים אמורים לקיים איתם אינטראקציה, את רמת הדיוק הנדרשת לכל שיטת קלט (מעקב אחר תנועות ידיים לעומת שימוש בעכבר), ולהתאים בהתאם גורמים כמו גודל היעד ומרווחי הפריטים. חשוב לוודא שהמיקומים של רכיבי ממשק המשתמש מאפשרים אינטראקציות נוחות. הצגת משוב ויזואלי על פעולות של משתמשים. עיינו בהנחיות הסגנון של Android XR.
- ממשק משתמש דו-מימדי, כמו חלוניות, מתאים מאוד לאינטראקציות שמבוססות על תפריטים. ממשק משתמש תלת-ממדי, כמו לחצנים פיזיים, מנופים ומתגים, יכול לספק חוויה מעמיקה יותר כשמתנהלים אינטראקציות עם סביבות מרחביות. איזון זהיר בין אינטראקציות שמבוססות על חלוניות לשיפור הקריאוּת לבין אובייקטים תלת-ממדיים ליצירת אינטראקציות שמתמקדות בעולם יכול ליצור חוויה עוצמתית ומרתקת.
- כדי לוודא שהטקסט קריא, צריך להשתמש בגודל, בסוג ובניגודיות מתאימים של הגופן. מיקום ממשק המשתמש על סמך המרחק שבו המשתמשים יראו את הטקסט. שימוש בגופנים של שדה מרחק חתום כדי להציג טקסט בצורה חלקה במגוון גדלי גופן. עיינו במדריך הטיפוגרפיה של Android XR.
אינטראקציות במרחב
חלק מהאינטראקציות העשירות ביותר ב-XR כוללות את היכולת של המשתמש לקיים אינטראקציה ישירה עם אובייקטים תלת-ממדיים. הפעולה יכולה להיות פשוטה כמו להרים, לבדוק ולזרוק אובייקט. היא כוללת גם אינטראקציות מורכבות יותר, כמו משיכת מנופים, לחיצה על לחצנים ואינטראקציה עם רכיבים שכבר נמצאים בידי המשתמש – כמו ריסוס בקבוק ריסוס. כדי ליצור אינטראקציות אינטואיטיביות עם אובייקטים תלת-ממדיים, כדאי לעצב אותם על סמך הידע הקיים של המשתמש על העולם.
- אם אתם רוצים ליצור פעולות ריאליסטיות, כדאי לשקול שילוב של מנוע פיזיקה. אם אתם מפתחים ב-Unity, יש לה מנוע פיזיקה מובנה. חשוב לזכור את כמות כוח העיבוד שמנועי הפיזיקה צורכים, ולבצע אופטימיזציה לביצועים.
- חשוב יותר שהסרטון ייראה אמין מאשר ריאליסטי. לדוגמה, אם המשתמש חושב שהוא זרק כדור חזק, האפליקציה צריכה להוסיף כוח נוסף לכדור מעבר למה שהחיישנים במכשיר מדווחים.
- צריך ליצור אובייקטים כך שיתאימו ליכולות שלהם. כלומר, צריך להביא בחשבון באפליקציה כל פעולה אפשרית שמשתמש יכול לבצע על אובייקט או עם אובייקט. לדוגמה, אפשר להרים, לזרוק ולאכול סופגנייה. במקום לאכול את העוגה, האפליקציה יכולה להשתמש בקריינות עם המשפט "אני לא רעב כרגע". הפתרונות האלה מתייחסים לפעולות שהמשתמשים מצפים לבצע באמצעות 'עוגת שוקולד'.
- אפשר להחזיק אובייקטים באמצעות שיטות שונות, כולל הורה, מפרקים פיזיים, מעקב וכוחות פיזיים. לכל שיטה יש יתרונות וחסרונות משלה. לפני שמטמיעים שיטת אחזור בהתאמה אישית, חשוב מאוד לחקור ולבדוק גישות שונות כדי לקבוע איזו גישה מתאימה ביותר.
- חשוב להקפיד על עיצוב ארגונומי בסביבת 3D. כדי לשפר את הנגישות, כדאי להוסיף ידית למשטחים שטוחים כדי לאפשר למשתמש להתאים אותם לגובה נוח. חשוב לבדוק כל אובייקט במרחב עם מגוון משתמשים, כי כל גוף הוא שונה.
עיצוב סצנה
הסצנות יכולות לנוע בין עולמות וירטואליים סוחפים לבין חוויות של מציאות רבודה שמערבבות בין רכיבים וירטואליים לסביבה האמיתית של המשתמש. עיצוב סצנות נוחות ופונקציונליות שמנצלות את היכולות הייחודיות של XR.
- להגביל סצנות שמתמקדות במשתמש, כמו סצנות של טיסה. המצב הזה עלול לגרום לאי-נוחות, במיוחד אם הגוף הפיזי של המשתמש נשאר בלי תנועה. שיטות מסוימות של תנועה, כמו ראיית מנהרה (מתוארת בקטע הבא), עוזרות להפחית את אי-הנוחות.
- כדי ליצור חוויות של מציאות מעורבת, אפשר להשתמש ביכולות של Android XR להבנת סצנות כדי לשלב אובייקטים וירטואליים בסביבה הפיזית של המשתמש.
- באפליקציות למציאות מדומה, כדאי לשלב תצוגות מוגבלות של העולם האמיתי במרחב הווירטואלי. כך המשתמשים יכולים להמשיך להיות מודעים לסביבה שלהם ולנהל אינטראקציה עם אובייקטים פיזיים בלי לצאת מהחוויה האימרסיבית.
תנועה
מומלץ לאפשר למשתמשים בחוויית Android XR לנוע בחופשיות במרחב הפיזי שלהם, כפי שמוגדר על ידי גבול מוגדר. לדוגמה, משתמשים מסוימים מוצאים שחוויה וירטואלית עשירה יותר כשהיא תוכננה סביב מרחב יצירה סטטי. אם אתם מצפים שהמשתמשים יתנועעו במרחב וירטואלי גדול יותר ממה שהגבול מאפשר, כדאי להשתמש בשיטות תנועה שמגבירות את התנועה, כמו טלפורטציה.
באמצעות טלפורטציה, המשתמש מציין ומבחר, או משתמש בנגן כדי לעבור באופן מיידי למיקום חדש. היא נהדרת למרחקים ארוכים, ובדרך כלל זו השיטה שגורמת לפחות בחילה. כדי להפחית את אי-הנוחות, אפשר גם להסתיר את המסך לזמן קצר במהלך המעבר.
שיטות תנועה אחרות
אם אתם משתמשים בשיטות תנועה אחרות, כדאי להציע גם טלפורטציה כחלופה.
- הליכה במקום עם תנועת הידיים: כדי לדמות הליכה, מנענעים את הידיים או מזיזים את השלט למעלה ולמטה. יכול להיות שחלק מהמשתמשים ימצאו את התהליך הזה מעייף או פחות אינטואיטיבי.
- תנועה רציפה: משתמשים בג'ויסטיק או בלחצן ה-Thumbstick של השלט כדי להזיז את האני הווירטואלי בסביבה. ברוב המקרים, כדאי להימנע מהשיטה הזו כי היא גורם נפוץ לבחילות תנועה.
אם תחליטו להשתמש בתנועה בחוויה שלכם, כדאי להציע כמה אפשרויות כדי להתאים את החוויה להעדפות האישיות של המשתמשים ולשפר את חוויית המשתמש.
בחילה מתנועה יכולה להתרחש כשיש חוסר התאמה בין התנועה הפיזית של המשתמש לבין החוויה הווירטואלית שלו. כדי לשפר את נוחות המשתמש במהלך תנועה:
- מוודאים שהאופק הווירטואלי נשאר יציב וישר.
- אם נדרשת תנועה רציפה, יש להימנע ממהירות הולכת וגוברת או ממהירות הולכת ופוחתת. שומרים על מהירות עקבית.
- תופעת 'ראיית מנהרה' יכולה לעזור להפחית בחילה מתנועה על ידי צמצום שדה הראייה של המשתמש במהלך התנועה, באמצעות אפקט 'וינטג'ט' שמגביל את התנועה שנתפסת באזורים ההיקפיים.
- כדי לבצע סיבוב, תוכלו להצמיד את נקודת המבט של המשתמש לזוויות ספציפיות. יכול להיות שזה יגרום לתחושת חוסר כיוון, אבל הוא יפחית את בחילות הנסיעה.
- למשתמשים יש רמות שונות של סובלנות. אפשר לאפשר להם לשנות את הגדרות הנוחות לפי ההעדפות שלהם, למשל לבחור את שיטת התנועה, להפעיל או להשבית את מצב 'מנהרה' או לשנות את מהירות התנועה.
אודיו מרחבי
אודיו הוא כלי יעיל ליצירת סביבות אודיו immersive שמעבירות את המשתמשים לעולם אחר ומעוררות רגשות ספציפיים. אודיו מרחבי ממקם צלילים בצורה מדויקת בסביבה הווירטואלית.
- אודיו בפורמט Ambisonics הוא כמו תא VIP באודיו, שמספק למשתמשים סאונד סביבה עשיר ומקיף. מומלץ להשתמש ב-Ambisonics לצלילים סביבתיים ברקע או בתרחישים אחרים שבהם רוצים ליצור שדה קול סוריאלי מלא שמקיף את המאזין.
- אותות אודיו מרחבי יכולים להפנות את תשומת הלב של המשתמש.
- שימוש באפקטים קוליים תלת-ממדיים כדי לשפר את חוויית הצפייה.
- הוספת מיקום לאודיו של הקול של הדובר/ת נותנת למשתמשים תחושה של נוכחות גם אם הם לא מול הדובר/ת ישירות.
- משתמשים יכולים לשנות את עוצמת הקול שלהם. לדוגמה, יכול להיות שהם רוצים להשבית או לשנות את עוצמת הקול של מוזיקת הרקע, האפקטים הקוליים או הקריינות.
- מומלץ להוסיף כתוביות לאנשים חירשים או כבדי שמיעה.
שיקולים נוספים לשיפור הנוחות
כדי לתת עדיפות לנגישות, כדאי לספק אפשרויות בהתאמה אישית שמתאימות למגוון יכולות והעדפות. כך מגוון רחב של משתמשים יכולים ליהנות מחוויית הצפייה האינטראקטיבית.
- הפעלת האפליקציה ב-72 פריימים לשנייה: כך תוכלו לצמצם את התנודות החדות בתמונה ולמנוע בחילה.
- העניקו למשתמשים שליטה: כדי שהאפליקציה תהיה ידידותית למשתמש גם למי שיש לו רמות שונות של התמצאות ב-XR, כדאי לאפשר למשתמשים להתאים אישית את חוויית השימוש באמצעות הגדרות שניתן לשנות. כדאי לאפשר למשתמשים למפות מחדש את הלחצנים והתנועות של השלט הרחוק בהתאם לצרכים הפיזיים או להעדפות שלהם. לדוגמה, משתמשים עם תנועת ידיים מוגבלת עשויים להפיק תועלת מתצוגות לחצנים שונות או מפקדי קלט גדולים ופשוטים יותר.