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

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

  • התקינו את Android Studio מגרסה 3.1 ואילך עם Android SDK Platform מגרסה 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 Services למציאות רבודה באמולטור לפני שמפעילים את האפליקציה. מידע נוסף זמין במאמר הפעלת אפליקציות AR ב-Android Emulator .

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

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

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

הפעלת הדוגמה

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

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

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

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

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

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

מיקום מיידי

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

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

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

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

שימוש בנתוני עומק

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

מיקום מיידי

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

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

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

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

השלבים הבאים