เรียกใช้แอป Sceneform ในโปรแกรมจําลอง Android

ใช้โปรแกรมจําลอง Android เพื่อทดสอบสถานการณ์ AR โดยไม่ต้องใช้อุปกรณ์จริง โปรแกรมจําลอง Android ช่วยให้คุณเรียกใช้แอป ARCore ในสภาพแวดล้อมเสมือนจริงได้ด้วยอุปกรณ์จําลองที่คุณควบคุมได้

ตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์

ข้อกําหนดของซอฟต์แวร์:

ข้อกําหนดของฮาร์ดแวร์

  • นอกจากนี้ คุณจะต้องมีเครื่องสําหรับการพัฒนาที่รองรับ OpenGL ES 3.0 ขึ้นไปเพื่อใช้ Sceneform ในแอปด้วย

ดาวน์โหลด Android Studio และเครื่องมือ SDK สําหรับ ARCore

  1. ติดตั้ง Android Studio 3.1 ขึ้นไป

  2. ใน Android Studio ให้ไปที่ Preferences > ลักษณะที่ปรากฏและลักษณะการทํางาน > การตั้งค่าระบบ > Android SDK

  3. เลือกแท็บแพลตฟอร์ม SDK แล้วเลือกแสดงรายละเอียดแพ็กเกจ

    ในส่วน Android 8.1 (Oreo) ให้เลือก
    Google API Intel x86 Atom System Image API เวอร์ชัน 27 เวอร์ชัน 4 ขึ้นไป

  4. เลือกแท็บเครื่องมือ SDK แล้วเพิ่มโปรแกรมจําลอง Android 27.2.9 ขึ้นไป

  5. คลิกตกลงเพื่อติดตั้ง Packg และเครื่องมือที่เลือก

  6. คลิกตกลงอีกครั้งเพื่อยืนยันการเปลี่ยนแปลง

  7. ยอมรับข้อตกลงการอนุญาตให้ใช้สิทธิสําหรับโปรแกรมติดตั้งคอมโพเนนต์

  8. คลิกเสร็จสิ้น

สร้างอุปกรณ์เสมือนที่รองรับ AR

คุณสามารถทําตามวิธีการสําหรับ Android Studio เพื่อสร้างอุปกรณ์เสมือนที่มีการรองรับ AR

กําหนดค่าอุปกรณ์เสมือน

  • เลือกโปรไฟล์ฮาร์ดแวร์ Pixel หรือ Pixel 2
  • เลือกรูปภาพของระบบ Oreo: API ระดับ 27: x86: Android 8.1 (Google APIs)
  • ยืนยันว่ามีการกําหนดค่าอุปกรณ์เสมือนอย่างถูกต้อง โดยทําดังนี้

    • ไปที่ยืนยันการกําหนดค่า > แสดงการตั้งค่าขั้นสูง
    • ตรวจสอบว่าตั้งค่ากล้องหลังเป็น VirtualScene แล้ว

กําหนดค่าโปรแกรมจําลองเพื่อรองรับ Sceneform

Sceneform ต้องใช้ OpenGL ES 3.0 ขึ้นไป

  1. ตรวจสอบว่าได้กําหนดค่าโปรแกรมจําลองให้ใช้ OpenGL ES เวอร์ชันล่าสุดแล้ว

    • คลิก เพิ่มเติม ในแถบเครื่องมือของโปรแกรมจําลองที่ทํางานอยู่
    • เลือกการตั้งค่า > ขั้นสูง > ระดับ API ของ OpenGL ES > การแสดงผลสูงสุด (สูงสุด OpenGL ES 3.1)
    • รีสตาร์ทโปรแกรมจําลอง เมื่อได้รับแจ้ง อย่าบันทึกสถานะปัจจุบัน
  2. หลังจากรีสตาร์ทโปรแกรมจําลองแล้ว ให้โต้ตอบกับอุปกรณ์จําลองคร่าวๆ แล้วตรวจสอบว่าใช้ OpenGL ES 3.0 ขึ้นไปหรือไม่โดยดูบันทึกอุปกรณ์

    adb logcat | grep eglMakeCurrent

    หากเห็นเวอร์ชัน ver 3 0 ขึ้นไป คุณจะเรียกใช้แอป Sceneform ในโปรแกรมจําลองได้โดยทําดังนี้

    … …  …  … D EGL_emulation: eglMakeCurrent: 0xebe63540: ver 3 0 (tinfo 0xd104cb40)

    หากเห็นเวอร์ชันต่ํากว่า แสดงว่า GPU ในเดสก์ท็อปไม่รองรับ OpenGL ES 3.0 และต้องใช้อุปกรณ์ที่รองรับจริงในการเรียกใช้แอป Sceneform แทน

เรียกใช้แอป

ทดสอบแอป ARCore ในอุปกรณ์เสมือนที่รองรับ AR ในโปรแกรมจําลอง โดยทําตามวิธีการสําหรับ Android Studio เพื่อเรียกใช้แอปในโปรแกรมจําลอง Android

อัปเดตบริการ Google Play สําหรับ AR

เวอร์ชันของบริการ Google Play สําหรับ AR ในโปรแกรมจําลองอาจล้าสมัย โดยทําตามวิธีการต่อไปนี้เพื่ออัปเดต

  1. ดาวน์โหลด Google_Play_Services_for_AR_1.15.0_x86_for_emulator.apk ล่าสุดจากหน้ารุ่นของ GitHub

  2. ติดตั้ง APK ที่ดาวน์โหลดลงในแต่ละ AVD ที่คุณต้องการใช้:

    เปิด AVD ที่ต้องการ จากนั้นลาก APK ที่ดาวน์โหลดไว้ไปยังโปรแกรมจําลองที่ทํางานอยู่ หรือติดตั้งโดยใช้ adb ระหว่างที่อุปกรณ์เสมือนจริงกําลังทํางานอยู่ ดังนี้

    adb install -r Google_Play_Services_for_AR_1.15.0_x86_for_emulator.apk

ทําตามขั้นตอนเหล่านี้ซ้ําสําหรับ AVD เพิ่มเติมที่ต้องการใช้

ควบคุมฉากเสมือน

เมื่อแอปเชื่อมต่อกับ ARCore คุณจะเห็นการวางซ้อนที่อธิบายวิธีควบคุมกล้องและแถบสถานะใต้หน้าต่างโปรแกรมจําลอง

ย้ายกล้องเสมือน

กด Option (macOS) หรือ Alt (Linux หรือ Windows) ค้างไว้เพื่อเข้าถึงการควบคุมการเคลื่อนไหวของกล้อง ใช้ตัวควบคุมต่อไปนี้เพื่อย้ายกล้อง

แพลตฟอร์ม แอ็กชัน สิ่งที่ต้องทำ
macOS เลื่อนไปทางซ้ายหรือขวา กด Option ค้างไว้ จากนั้นกด A หรือ D
ย้ายขึ้นหรือลง กด Option ค้างไว้ จากนั้นกด Q หรือ E
เลื่อนไปข้างหน้าหรือย้อนกลับ กด Option ค้างไว้ จากนั้นกด W หรือ S
เปลี่ยนการวางแนวของอุปกรณ์ กด Option ค้างไว้ + เลื่อนเมาส์
Linux หรือ Windows เลื่อนไปทางซ้ายหรือขวา กด Alt ค้างไว้ + กด A หรือ D
ย้ายขึ้นหรือลง กด Alt + กด Q หรือ E
เลื่อนไปข้างหน้าหรือย้อนกลับ กด Alt + กด W หรือ S
เปลี่ยนการวางแนวของอุปกรณ์ กด Alt + เลื่อนเมาส์

ปล่อยตัวเลือกหรือ Alt เพื่อกลับสู่โหมดอินเทอร์แอกทีฟในโปรแกรมจําลอง

ใช้แท็บเซ็นเซอร์เสมือนในการควบคุมเพิ่มเติมเพื่อการวางตําแหน่งอุปกรณ์ที่แม่นยํายิ่งขึ้น

เคล็ดลับการแก้ปัญหา

  • หากแอป ARCore เปิดขึ้นและเห็นข้อความ "AR Core ที่ไม่รองรับ" ให้ตรวจสอบการแก้ไขในอิมเมจของระบบ ตรวจสอบว่าคุณใช้ API ระดับ 27 การแก้ไข 4

  • หากแอป ARCore เปิดกล้องไม่ได้เมื่อเปิดใช้ โปรดตรวจสอบว่าได้ตั้งค่า Back Back เป็น VirtualScene ตามที่อธิบายไว้ในขั้นตอนการกําหนดค่าข้างต้น