מדריכים ספציפיים לפלטפורמה
Android (Kotlin/Java)
Android NDK (C)
Unity (AR Foundation)
מנוע לא מציאותי
כמפתחי אפליקציות AR, אתם רוצים לשלב בצורה חלקה את הווירטואלי עם התכונות האמיתיות של המשתמשים. כשמשתמשים ממקמים עצם וירטואלי בסצנה שלהם, הם רוצים שהוא ייראה כאילו הוא שייך בעולם האמיתי. אם אתם מפתחים אפליקציה למשתמשים לקנייה של רהיטים, אתם רוצים שהם יהיו בטוחים שהכורסה שהם עומדים לקנות מתאימה למרחב שלהם.
בעזרת Depth API, מצלמת המכשיר יכולה להבין את הגודל והצורה של העצמים האמיתיים בסצנה. התכונה יוצרת תמונות עומק או מפות עומק, וכך מוסיפה שכבת ריאליזם לאפליקציות. אתם יכולים להשתמש במידע שמתקבל מתמונת עומק כדי לאפשר חוויית משתמש סוחפת ומציאותית.
תרחישים לדוגמה לפיתוח עם Depth API
ה-Depth API מאפשר להסתיר את האובייקטים, מאפשר חוויית צפייה משופרת ואינטראקציות חדשניות שמשפרות את הריאליזם של חוויות ה-AR. בהמשך מפורטות כמה דרכים שבהן תוכלו להשתמש בה בפרויקטים שלכם. כדי לקבל דוגמאות של עומק בפעולה, אפשר לעיין בסצנות לדוגמה ב-ARCore Depth Lab, שבו מוצגות דרכים שונות לגשת לנתוני העומק. האפליקציה הזו של Unity מבוססת על קוד פתוח ב-GitHub.
הפעלת חסימה
הסתרה או הצגה מדויקת של אובייקט וירטואלי מאחורי אובייקטים בעולם האמיתי הם גורמים חיוניים לחוויית AR סוחפת. חשבו על אנדי וירטואלי שהמשתמש ירצה למקם אותו בסצנה שמכילה תא המטען לצד דלת. העיצוב של Andy, לאחר עיבוד ללא הסתרה, יחפוף באופן לא מציאותי לקצה הגזע. אם משתמשים בעומק של סצנה ומבינים את המרחק של אנדי הווירטואלי ביחס לסביבה כמו גזע העץ, אפשר לעבד את אנדי בצורה מדויקת עם הסתרה, וכך הוא ייראה מציאותי הרבה יותר בסביבתו.
שינוי סצנה
הראו למשתמשים עולם חדש וסוחף על ידי עיבוד פתיתי שלג וירטואליים כדי להתיישב על הזרועות והכריות של הספות, או להשליך את הסלון בערפל ערפילי. אתם יכולים להשתמש ב'עומק' כדי ליצור סצנה שבה האורות הווירטואליים מקיימים אינטראקציה, מסתתרים מאחור ומאירים חפצים אמיתיים.
מרחק ועומק השדה
רוצים להראות שמשהו רחוק? אתם יכולים להשתמש במדידת המרחק ולהוסיף אפקטים של עומק בשדה, כמו טשטוש רקע או חזית של סצנה באמצעות Depth API.
הפעלת אינטראקציות של משתמשים עם אובייקטים של AR
מאפשרים למשתמשים "לגעת" בעולם באמצעות האפליקציה על ידי מתן הרשאה לתוכן וירטואלי לקיים אינטראקציה עם העולם האמיתי במקרה של התנגשות ופיזיקה. אובייקטים וירטואליים יעברו מעל מכשולים בעולם האמיתי, או שכדורי פיינטבול וירטואליים פוגעים ומתפצים על עץ בעולם האמיתי. כשמשלבים התנגשות מבוססת-עומק עם פיזיקה של משחקים, אפשר להפיח חיים במשחק.
שיפור בדיקות היטים
אפשר להשתמש בעומק כדי לשפר את התוצאות של בדיקות ההיט. בדיקות עומק של מטוס פועלות רק על משטחים מישוריים עם טקסטורה, ואילו בדיקות עומק הן מפורטות יותר ופועלים גם באזורים שאינם מישוריים ובאזורים עם מרקם נמוך. הסיבה לכך היא שבדיקות העומק משתמשות במידע על העומק מהסצנה כדי לקבוע את העומק והכיוון הנכונים של נקודה.
בדוגמה הבאה, האלפים הירוקים מייצגים בדיקות מהירות במטוס סטנדרטיות, והאנדים האדומים מייצגים בדיקות עומק.
אין לי מכשיר תואם
Depth API נתמך רק במכשירים עם יכולות עיבוד שתומך בתמיכה וצריך להפעיל אותו באופן ידני ב-ARCore, כפי שמתואר הפעלת העומק.
במכשירים מסוימים יש גם חיישן עומק החומרה, כמו זמן טיסה (ToF). בדף מכשירים נתמכים ב-ARCore תוכלו למצוא רשימה עדכנית של מכשירים שתומכים ב-Depth API ורשימה של מכשירים יש חיישן עומק נתמך של החומרה, כמו חיישן ToF.
תמונות עומק
Depth API משתמש באלגוריתם של עומק מתנועה כדי ליצור תמונות עומק, שמעניקות תצוגות תלת-ממדיות של העולם. כל פיקסל בתמונת עומק משויך למדידה של המרחק בין הסצנה מהמצלמה. האלגוריתם הזה מצלם מספר תמונות של מכשירים מזוויות שונות ומשווה אותן כדי להעריך את המרחק לכל פיקסל כשהמשתמש מזיז את הטלפון. המערכת משתמשת בלמידת מכונה באופן סלקטיבי כדי לשפר את עיבוד העומק, גם עם תנועה מינימלית של המשתמש. היא גם מנצלת את כל החומרה הנוספת של מכשיר של משתמש. אם המכשיר כולל חיישן עומק ייעודי, כמו ToF, האלגוריתם ממזג באופן אוטומטי נתונים מכל המקורות הזמינים. כך ניתן לשפר את תמונת העומק הקיימת ולהציג את העומק גם כשהמצלמה לא זזה. התכונה הזו גם מספקת עומק טוב יותר על משטחים ללא משטחים עם מעט תכונות, כמו קירות לבנים, או בסצנות דינמיות עם אנשים או חפצים נעים.
בתמונות הבאות רואים תמונת מצלמה של מסדרון עם אופניים על הקיר, ותצוגה חזותית של תמונת העומק שנוצרת מתמונות המצלמה. האזורים באדום קרובים יותר למצלמה, ואזורים בכחול רחוקים יותר.
העומק מתנועה
נתוני העומק הופכים לזמינים כשהמשתמש מזיז את המכשיר. האלגוריתם יכול לקבל הערכות עומק אמינות ומדויקות ממרחק של 0 עד 65 מטר. התוצאות המדויקות ביותר מגיעות כשהמכשיר נמצא במרחק של חצי מטר עד חמישה מטרים מהמציאות. חוויות שמעודדות את המשתמשים להזיז את המכשיר יותר ישיגו תוצאות טובות וטובות יותר.
איתור תמונות עומק
באמצעות Depth API, אתם יכולים לאחזר תמונות עומק שמתאימות לכל פריים במצלמה. חותמת הזמן ושדה הראייה של תמונת העומק זהות לאלה של המצלמה. נתוני עומק תקינים זמינים רק אחרי שהמשתמש התחיל להזיז את המכשיר, כי העומק נוצר מתנועה. משטחים ללא תכונות או משטחים מועטים, כגון קירות לבנים, ישויכו לעומק לא מדויק.
מה השלב הבא?
- כדאי לנסות את ARCore Depth Lab, שמדגים דרכים שונות לגשת לנתוני עומק.