כדי להתחיל להשתמש ב-ARCore עם Android, אפשר להריץ את האפליקציה לדוגמה hello_ar_kotlin או את האפליקציה לדוגמה hello_ar_java שכלולות ב-ARCore SDK. האפליקציות לדוגמה האלה משתמשות ב-OpenGL, ממשק תכנות לעיבוד גרפיקה וקטורית דו-ממדית ותלת-ממדית. האפליקציות מציגות את כל המטוסים שזוהו ומאפשרות למשתמש להקיש על מטוס כדי להציב מודל תלת-ממדי.
הגדרת סביבת הפיתוח
מתקינים את Android Studio בגרסה 3.1 ואילך עם פלטפורמת Android SDK בגרסה 7.0 (רמת API 24) ואילך.
אם אתם משתמשים חדשים ב-Android, כדאי לעיין במאמר פיתוח האפליקציה הראשונה ל-Android.
פתיחת פרויקט לדוגמה
ב-Android Studio, משכפלים את המאגר של ARCore SDK ב-GitHub.
יש הרבה דרכים לעשות את זה:
בהתקנה של Android Studio:
- בתפריט Git, בוחרים באפשרות Clone.
- בתפריט הנפתח Version control, בוחרים ב-Git כמערכת בקרת הגרסאות.
בשדה URL, מזינים את כתובת ה-URL הבאה למאגר ARCore ב-GitHub:
https://github.com/google-ar/arcore-android-sdk.git
אפשר גם לפתוח Terminal ולהריץ את הפקודה
git clone
באופן הבא:git clone https://github.com/google-ar/arcore-android-sdk.git
פותחים את אחד מהפרויקטים לדוגמה באופן הבא (צריך לפתוח פרויקט באופן מפורש כדי ליצור אותו ולהריץ אותו).
- בתפריט File, בוחרים באפשרות Open.
- בתיקייה arcore-android-sdk/samples, בוחרים את התיקייה hello_ar_kotlin או hello_ar_java ולוחצים על Open.
הכנת המכשיר או הסימולטור
אפשר להריץ אפליקציות AR במכשיר נתמך או באמולטור Android. לפני שמפעילים את האפליקציה, צריך לעדכן את שירותי Google Play למציאות רבודה באמולטור. מידע נוסף זמין במאמר הפעלת אפליקציות מציאות רבודה באמולטור Android .
הרצת הדוגמה
מוודאים שמכשיר Android מחובר למכונה לפיתוח ולוחצים על Run ב-Android Studio.
Android Studio יוצרת את הפרויקט כקובץ APK שניתן לניפוי באגים, מתקינה את קובץ ה-APK ואז מפעילה את האפליקציה במכשיר. מידע נוסף זמין במאמר פיתוח והרצה של האפליקציה.
אם האפליקציה חסרה או לא עדכנית, יכול להיות שתתבקשו להתקין או לעדכן את Google Play Services למציאות רבודה. בוחרים באפשרות CONTINUE כדי להתקין אותה מחנות Google Play, או מעדכנים אותה באופן ידני כפי שמתואר במאמר עדכון של Google Play Services למציאות רבודה.
האפליקציה hello_ar_java מאפשרת להציב כלי משחק תלת-ממדי של ARCore על משטחים של מישורי AR שזוהו. היא מיושמת באמצעות Android GL SurfaceView, שמשמשת לעיבוד הגרפי של תצוגה מקדימה של המצלמה ואובייקטים בסיסיים של AR, כמו מישורים ועוגנים. מסגרת העיבוד הגרפי לדוגמה של hello_ar_java מופיעה בקובץ com/google/ar/core/examples/java/common/samplerender
.
שימוש במיקום מודעה מיידי
Instant Placement API מאפשר למשתמש להציב אובייקט AR במסך בלי לחכות שמערכת ARCore תזהה את הגיאומטריה של המשטח. מיקום האובייקטים משתפר בזמן אמת ככל שהמשתמש מתקדם בסביבה.
מקישים על המסך כדי למקם אובייקט. חשוב להמשיך להזיז את המכשיר אחרי שמופיע האובייקט ההולוגרפי במסך, כדי ש-ARCore תוכל לקבל מספיק נתונים על הסביבה שלכם כדי לאחד בצורה מדויקת את האובייקט הווירטואלי.
אחרי ש-ARCore מזהה את הגיאומטריה של המשטח ומגדיר מעקב באזור שבו האובייקט ממוקם, תנוחת האובייקט מתעדכנת באופן אוטומטי כדי לשפר את הדיוק.
באיור 1, האפשרות 'מיקום מיידי' מושבתת וגיאומטריית פני השטח לא מוגדרת. אובייקטים שמונחים על הרצפה מימין לשולחן הבוליארד (ארבע נקודות כחולות קטנות) נראים כפופים, והתנוחה שלהם לא מוגדרת.
באיור 2, מיקום המודעות המיידי מופעל מהתפריט שמתחת לסמל גלגל השיניים.
באיור 3, כשהתכונה 'מיקום מיידי' מופעלת, אובייקט חדש ממוקם בסצנה. התמונה מופיעה בגווני אפור במקום בצבע, כדי לציין שעדיין לא תוקנה לתנוחה מדויקת.
באיור 4, האובייקט החדש הופך לצבעוני והתנוחה שלו מדויקת כשמתבצעת זיהוי של גיאומטריה של המשטח (המתואר על ידי קווים של רשת ניתנים למעקב).
שימוש ב-Depth
כשהאפשרות עומק מופעלת, ARCore מביאה בחשבון את הגיאומטריה והמיקום של האובייקטים בסצנה, ומחשבת את המיקום של אובייקטים שממוקמים בסצנה ביחס לאובייקטים אחרים בסצנה. הוא מאפשר לאובייקטים שמוגדרים בסצנה להסתיר אובייקטים אחרים, ומעניק לאפליקציה מראה ריאליסטי.
באיור 1, התכונה 'עומק' מושבתת. אובייקט ממוקם מתחת לשולחן הביליארד.
באיור 2, כשהמכשיר נע סביב שולחן הבול, נראה שהאובייקט עוקב אחרי המכשיר ללא קשר לאובייקטים בסצנה.
באיור 3, התכונה 'עומק' מופעלת.
באיור 4, האובייקט מוסתר עכשיו על ידי שולחן הפאראפס, בזמן שהמכשיר נע ברחבי הסצנה.
השלבים הבאים
- אפשר לנסות ליצור ולהריץ פרויקטים לדוגמה אחרים ב-ARCore SDK.
- בcodelabs של המציאות הרבודה תוכלו למצוא אפליקציות לדוגמה נוספות שתוכלו ליצור ולהריץ.
- איך מפעילים את ARCore באפליקציה
- מומלץ לעיין בשיקולים בזמן ריצה.
- קוראים את ההנחיות לעיצוב.