מדריך למתחילים ל-Android NDK

הגדרת סביבת הפיתוח

  • מתקינים את Android Studio בגרסה 3.1 ואילך עם פלטפורמת Android SDK בגרסה 7.0 (רמת API 24) ואילך.

  • כדי להכין את Android Studio לפיתוח מקורי, מתקינים את Android Native Development Kit‏ (NDK) ו-CMake באמצעות SDK Manager. מידע נוסף זמין במאמר תחילת השימוש ב-NDK.

  • תצטרכו לקבל את ARCore SDK ל-Android. אתם יכולים:

    • מורידים את ARCore SDK ל-Android ומחלצים אותו.

      -או-

    • משכפלים את המאגר באמצעות הפקודה הבאה:

      git clone https://github.com/google-ar/arcore-android-sdk.git

הכנת המכשיר או הסימולטור

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

פתיחת הפרויקט לדוגמה

ב-Android Studio, פותחים את הפרויקט לדוגמה hello_ar_c ב-<ARCore SDK Folder>/samples/hello_ar_c.

לפרויקט לדוגמה יש יחסי תלות ב-build לגרסאות מסוימות של תוכנות, כמו Gradle ו-Android SDK. אם יחסי התלות הנדרשים לא מותקנים, תופיע ב-Android Studio בקשה להרשאה להוריד ולהתקין אותם במחשב.

הרצת הדוגמה

מוודאים שמכשיר Android מחובר למכונה לפיתוח ולוחצים על Run ב-Android Studio.

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

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

שימוש במיקום מודעה מיידי

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

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

מיקום מיידי

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

באיור 2, מיקום המודעות המיידי מופעל מהתפריט שמתחת לסמל גלגל השיניים.

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

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

שימוש ב-Depth

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

מיקום מיידי

באיור 1, התכונה 'עומק' מושבתת. אובייקט ממוקם מתחת לשולחן הביליארד.

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

באיור 3, התכונה 'עומק' מופעלת.

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

השלבים הבאים