24 ספטמבר 2014 | נדב זמיר ועמית מורן
לשחק עם ממשק משתמש טבעי

אם אתם אוהבים טכנולוגיה חדשה, בטח כבר שמעתם על הטרנד החדש של ממשק משתמש טבעי או באנגלית – NUI (Natural User Interface)

 

אם אתם אוהבים טכנולוגיה חדשה, בטח כבר שמעתם על הטרנד החדש של ממשק משתמש טבעי או באנגלית – NUI (Natural User Interface).

 

למעשה מדובר בסט של טכנולוגיות, אלגוריתמים מתקדמים ועיצוב ממשק המאפשרים למשתמש לעבוד מול מכשיר (מחשב, טאבלט או אפילו תנור) בצורה אינטואיטיבית, קלה, וללא תהליך למידה ארוך. אולי הדוגמה הכי טובה מה זה לא NUI זו ההרגשה שהייתה לכל אחד מאתנו בפעם בראשונה שהשתמש בעכבר או בטאץ' פד.

 

 

קצת היסטוריה

 

באפל עשו עבודה מרשימה כאשר לקחו את המושג הזה ויישמו אותו בiPhone. כמובן זה לא היה מסך המגע הראשון אך זה היה מסך המגע הראשון שעבד בצורה טובה, טבעית ואינטואיטיבית. אבל הממשק הטבעי כלל יותר ממסך מגע. זה היה הממשק כולו שעבד בצורה חלקה ומזמינה. המשתמש כבר לא היה צריך להשתמש במקשים כדי לבצע פעולות, הוא נגע ישר במה שהוא רצה להפעיל. הפעולה לעבור ימינה ושמאלה נהפכה לפעולה של דפדוף כמעט כמו בספר מודפס. האינטראקציה נהפכה לעשירה אך גם למאוד פשוטה. כדי שזה יקרה בצורה טובה אפל פיתחו טכנולוגיה מרשימה (מסך רב-מגע multitouch), אלגוריתמים (זיהוי מחוות מגע) ועיצוב ממשק מתאים (iOS). כאמור המשולש הקדוש שלנו – טא"מ.

 

 

 

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

 

 

 

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

 

source: flickr @Football_Penalties

 

למרות כל זאת, משהו עדיין חסר. במקרים רבים אין אפשרות לגעת ממש במסך ועצם הפעולה עלולה אף לסכן חיים, למשל בעת נהיגה. במקרים אחרים, יש צורך בביצוע פעולה הדורשת מספר רב של פעולות קטנות כדי להגיע לתוצאה הרצויה, לדוגמה שליחת תמונה מאתמול לחברים שהיו איתי. סירי, גוגל NOW, קוריטקה ועוד מנסים לעזור בזה. יכולת של תקשורת מילולית פשוטה וטבעית מול המכשיר תוך אנליזה של המיקום, לוח השנה וכו' כדי להבין את רצון המשתמש ולתת הרגשה שהמכשיר ממש מכיר את המשתמש. זה עובד לא רע בכלל (במיוחד אם יש לך מבטא אמריקאי). התחום אמנם בהתפתחות אך אין ספק שהוא בהחלט מתקדם בכיוון הנכון להגדרת אינטראקציה טבעית.

 

כשמסתכלים על כיוון הדברים, רואים שהעולם מתקדם למצב בו המכשירים הדיגיטליים יעבדו קשה יותר כדי להבין את המשתמש ומה הוא רוצה לעשות על מנת שהמשתמש לא יצטרך לעבוד קשה וללמוד איך לתפעל את המכשירים שלו. זהו כיוון מרתק שמהווה חלק קטן מתחום ה- Ubiquitous Computing שמנבא כי בעתיד העולם יהיה רווי מכשירים אלקטרונים המוטמעים בחפצים שונים ובכל מקום בצורה שאינה נראית לעין. ניתן לראות דוגמאות לכך כבר היום בדלתות שנפתחות אוטומטית שמתקרבים אליהם או ברזים שפותחים את המים כאשר שמים את הידיים מתחתיהם.

 

 

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

 

 

משחקים כמובילים

 

למשחקים חלק נכבד בתחום הזה, עקב החופש שלהם המאפשר להגדיר אזורי עבודה (או משחק) חדשים, סוגי אינטראקציות חדשות ולהוסיף מימדים חדשים למשחקיות. לדוגמה, Playiridium, המייצרים משחק RTS חדשני לחלוטין כאשר השחקן שולט ביחידות שלו באמצעות פקודות קוליות. דוגמה יפה נוספת הינה Head of order בו משלבים תנועות ידיים ואצבעות לשליטה במשחק - השחקן מתפקד כקוסם כאשר על מנת להטיל קסמים על יריביו עליו לבצע מחוות ידיים שונות. עם הזמן הוא לומד איך לבצע את הקסמים בצורה טובה יותר, ממש כמו שהייתם מצפים מקוסם אמיתי.

 

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

 

למד את היכולות

כשמפתחים את המשחק כדאי להבין איזה יכולות חדשות קיימות ולתכנן אותו כראוי. לזיהוי ידיים, מחוות, פנים, פקודות קוליות וכו' יש מגבלות. אם זה גבול המרחק אותו המצלמה קולטת, מהירות תזוזה מקסימלית וכו'. קח את הזמן ללמוד את הגבולות של כל יכולת ותכנן את המשחק כראוי. לדוגמה, לכל מצלמה יש את זוית הראיה שלה (Field Of View  או FOV). כלומר, אם תיקח את היד יותר מידי שמאלה, המצלמה פשוט לא תראה את היד שלך. ניתן לדוגמא לתכנן את המשחק כך שתתקבל התראה כאשר השחקן מתקרב לקצוות. למד את הייתרונות והחסרונות של כל יכולת והשתמש בהם בחוכמה.

 

התאם את האינטרקציה לסוג הקלט

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

 

פתח משחק, לא דמו! (או - ניפנוף ידיים ≠ משחק טוב)

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

 

KISS– Keep it Simple, Stupid!

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

 

שמור על עקביות

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

 

מה עכשיו?

,Unityפלטפורמה מוכרת לפיתוח משחקים בשלושה מימדים. כחלק מה -SDK, אינטל מספקת חבילה מיוחדת לUNITY  המאפשרת בקלות וללא צורך בכתיבת קוד להכניס את היכולות הללו למשחקים שלכם. זיהוי ידיים, אצבעות, פנים, דיבור, אובייקטים מחוות וכו' – הכל אפשרי! מטרת החבילה הינה לאפשר למפתח ומעצב המשחק להתמקד ביצירת המשחק ולא באינטגרציה של הSDKלמשחק שלהם.

ה SDK זמין להורדה בחינם כאן.

ובכדי לקבל טעימה קטנה מהיכולות הרבות אותן הוא מספק, נצרף מספר דוגמאות של דברים מגניבים:

Hoplites

Augmented Shaper

Head of the Order

KAGURA

 

לסיום סיומת, נספר כי ב - 2 לאוקטובר יתקיים האקתון למפתחי משחקים ביוניטי.

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

 

תגובות
הוסף תגובה

* אין לשלוח תגובות הכוללות מידע המפר את תנאי השימוש של StartIsrael לרבות דברי הסתה, דיבה וסגנון החורג מהטעם הטוב.