Unity AR Foundation คือ เฟรมเวิร์กข้ามแพลตฟอร์มที่ให้คุณเขียนประสบการณ์ Augmented Reality เพียงครั้งเดียว จากนั้นสร้างสำหรับอุปกรณ์ Android หรือ iOS โดยไม่ต้องเสียค่าใช้จ่ายเพิ่มเติม การเปลี่ยนแปลง เฟรมเวิร์กพร้อมใช้งานผ่านแพ็กเกจ AR Foundation ของ Unity
อุปกรณ์เสริมของ ARCore ส่วนขยาย ARCore สำหรับมูลนิธิ AR จึงมีการเพิ่มฟังก์ชันการทำงานอื่นๆ เข้าไป ทำให้คุณใช้ฟีเจอร์ต่างๆ ได้ เช่น Cloud Anchor, ตัวกรองการกำหนดค่ากล้อง และการบันทึกและเล่น แอป
ย้ายข้อมูลหรืออัปเกรดโปรเจ็กต์ที่มีอยู่
- วิธีย้ายข้อมูลโปรเจ็กต์ที่มีอยู่จาก ARCore SDK (เลิกใช้งานแล้ว) สำหรับ Unity ใน AR Foundation และ ARCore Extensions (ไม่บังคับ) ให้ดู คำแนะนำในการย้ายข้อมูล
- หากต้องการอัปเกรดโปรเจ็กต์ที่มีอยู่จาก AR Foundation เวอร์ชันก่อนหน้า ดูของ Unity คำแนะนำในการอัปเกรดและย้ายข้อมูล
ข้อกำหนด
แพ็กเกจ AR Foundation จำเป็นต้องใช้แอตทริบิวต์ดังต่อไปนี้ ทั้งนี้ขึ้นอยู่กับแพลตฟอร์มเป้าหมายของคุณ ดังต่อไปนี้:
Android
ฮาร์ดแวร์
- อุปกรณ์ Android ที่รองรับ ARCore หรือ โปรแกรมจำลอง
- สาย USB สำหรับเชื่อมต่ออุปกรณ์กับเครื่องพัฒนา
ซอฟต์แวร์
iOS
ฮาร์ดแวร์
- อุปกรณ์ iOS ที่รองรับ ARCore
- สาย USB สำหรับเชื่อมต่ออุปกรณ์กับเครื่องพัฒนา
ซอฟต์แวร์
ติดตั้ง AR Foundation
ทำตามขั้นตอนต่อไปนี้เพื่อติดตั้งแพ็กเกจ AR Foundation Unity
เปิดโปรเจ็กต์ Unity ที่มีอยู่ หรือสร้างโปรเจ็กต์ 3 มิติใหม่
นำทางไปยัง Window > Package Manager
ข้าง Packages ให้เลือก Unity Registry
พิมพ์ "AR Foundation" ในแถบค้นหา
คลิก Install
ติดตั้งและเปิดใช้แพ็กเกจปลั๊กอินเฉพาะแพลตฟอร์ม
แพ็กเกจ AR Foundation นำเสนออินเทอร์เฟซให้นักพัฒนาซอฟต์แวร์ Unity ใช้งาน ไม่ได้ใช้ฟีเจอร์ใดๆ ของ AR วิธีใช้มูลนิธิ AR กับเป้าหมาย คุณต้องติดตั้งแพ็กเกจแยกกันและเปิดใช้ และปลั๊กอินที่เกี่ยวข้อง สำหรับแต่ละแพลตฟอร์ม
Android
ปลั๊กอิน ARCore XR ช่วยให้คุณสร้างแอป Augmented Reality สำหรับอุปกรณ์ Android ได้ ทำตามขั้นตอนต่อไปนี้เพื่อติดตั้งโปรเจ็กต์ Unity สำหรับแอปพลิเคชัน กำหนดเป้าหมายอุปกรณ์ Android ใช้เวอร์ชันเดียวกับแพ็กเกจ AR Foundation เพื่อหลีกเลี่ยงปัญหาเรื่องความเข้ากันได้
ไปที่ Window > Package Manager ในโปรเจ็กต์ของคุณ
ข้าง Packages ให้เลือก Unity Registry
ในแถบค้นหา ให้พิมพ์ "ปลั๊กอิน ARCore XR"
คลิก Install
นำทางไปยัง Edit > Project Settings ใน XR Plug-in Management ให้เปิดแท็บ Android แล้วเปิดใช้ ARCore
iOS
ปลั๊กอิน ARKit XR ช่วยให้คุณสร้างแอป Augmented Reality สำหรับอุปกรณ์ iOS ได้ ทำตามขั้นตอนต่อไปนี้เพื่อติดตั้งโปรเจ็กต์ Unity สำหรับแอปพลิเคชัน กำหนดเป้าหมายอุปกรณ์ iOS ใช้เวอร์ชันเดียวกับแพ็กเกจ AR Foundation เพื่อ เพื่อหลีกเลี่ยงปัญหาเรื่องความเข้ากันได้
ไปที่ Window > Package Manager ในโปรเจ็กต์ของคุณ
ข้าง Packages ให้เลือก Unity Registry
ในแถบค้นหา ให้พิมพ์ "ปลั๊กอิน ARKit XR"
คลิก Install
นำทางไปยัง Edit > Project Settings ใน XR Plug-in Management ให้เปิดแท็บ iOS แล้วเปิดใช้ ARKit
กำหนดค่าเซสชัน AR และเพิ่มคอมโพเนนต์ AR Foundation ลงในฉาก
ฉากต้องมีเซสชัน AR เพื่อเปิดใช้กระบวนการ AR เช่น การติดตามการเคลื่อนไหว ความเข้าใจเกี่ยวกับสิ่งแวดล้อม และการประมาณแสง คุณจะต้องมีออบเจ็กต์เกมต่อไปนี้เพื่อรองรับเซสชัน AR
AR Foundation 4.x
AR Session: ควบคุมวงจรของประสบการณ์ AR
AR Session Origin: เปลี่ยนพิกัด AR เป็น Unity พิกัดโลก
ก่อนเพิ่มออบเจ็กต์เกมใหม่ ให้ลบMain Cameraเริ่มต้นออก ซึ่งจะแทนที่ด้วย AR Camera ใหม่ใน AR Session Origin
เพิ่มวัตถุในเกม AR ใหม่ลงในฉาก: คลิกขวาที่ Hierarchy แล้วเลือก XR เพิ่ม AR Session ใหม่และ วันที่ AR Session Origin ออบเจ็กต์เกม
AR Foundation 5.x
AR Session: ควบคุมวงจรของประสบการณ์ AR
XR Origin: เปลี่ยนพิกัด AR เป็น Unity พิกัดโลก
ก่อนเพิ่มออบเจ็กต์เกมใหม่ ให้ลบMain Cameraเริ่มต้นออก ซึ่งจะแทนที่ด้วย AR Camera ใหม่ใน XR Origin
เพิ่มวัตถุในเกม AR ใหม่ลงในฉาก: คลิกขวาที่ Hierarchy แล้วเลือก XR เพิ่ม AR Session ใหม่และ วันที่ XR Origin ออบเจ็กต์เกม
กำหนดการตั้งค่าโปรแกรมเล่น
Android
- ไปที่ File > Build Settings เพื่อเปิด วันที่ Build Settings
- ใน Platform ให้เลือก Android แล้วคลิก Switch Platform
- คลิก Player Settings
ใช้การเปลี่ยนแปลงต่อไปนี้
Player Settings > … ค่า Other Settings > Rendering ยกเลิกการเลือก Auto Graphics API
หากมี Vulkan อยู่ใต้ Graphics APIs ให้นำออกเนื่องจาก ARCore ยังไม่รองรับ VulkanOther Settings > Package Name สร้างรหัสแอปที่ไม่ซ้ำกันโดยใช้รูปแบบชื่อแพ็กเกจ Java
เช่น ใช้com.example.helloAR
Other Settings > Minimum API Level หากสร้างแอปแบบต้องใช้ AR ให้ระบุ Android 7.0 'Nougat' (API Level 24) or higher
หากคุณกำลังสร้างแอป AR Optional ให้ระบุ Android API Level 19 or higherOther Settings > Scripting Backend เลือก IL2CPP แทน Mono เพื่ออนุญาตให้เปิดใช้การรองรับ ARM64 ในขั้นตอนถัดไป ระหว่างการพัฒนา
- ใช้ Mono + 32 บิต (ARMv7)
- ติดตั้ง APK ของ ARCore ที่ FAT (32 บิต + 64 บิต)
เวลาจัดส่งไปยัง Play Store
- ใช้ IL2CPP
- เปิดใช้ทั้ง 32 บิต (ARMv7) และ 64 บิต (ARM64) เพื่อให้เป็นไปตามข้อกำหนด 64 บิตของ Play Store
- ไม่บังคับ (รองรับในปี 2018.3 ขึ้นไป): ใน Build Settings ให้เปิดใช้ Android App Bundles
Other Settings > Target Architectures เพื่อให้เป็นไปตามข้อกำหนดเกี่ยวกับเวอร์ชัน 64 บิตของ Google Play เปิดใช้ ARM64 (ARM 64 บิต) เปิดใช้ ARMv7 (ARM 32 บิต) ไว้เพื่อรองรับอุปกรณ์ 32 บิต
iOS
- ไปที่ File > Build Settings เพื่อเปิด วันที่ Build Settings
- ใน Platform ให้เลือก iOS แล้วคลิก Switch Platform
- คลิก Player Settings
กำหนดการตั้งค่าต่อไปนี้
Player Settings > … ค่า Other Settings > Bundle Identifier เพิ่มชื่อแอปในรูปแบบ DNS แบบย้อนกลับ
เช่น ใช้com.mycompany.myapp
Other Settings > Camera usage description ป้อนรายละเอียดเพื่ออธิบายการใช้ AR (เช่น ARKit) Other Settings > Target minimum iOS version อย่างน้อย 11.0 Other Settings > Architecture ARM64
ขั้นตอนถัดไป
- เริ่มต้นใช้งานตัวเลือก แพ็กเกจส่วนขยาย ARCore ซึ่งจะมอบฟังก์ชันเพิ่มเติมของ ARCore ให้กับมูลนิธิ AR
- สร้างเกม AR โดยใช้ AR Foundation ของ Unity (Codelab)