คู่มือนักพัฒนาซอฟต์แวร์ Augmented Faces สําหรับ Unity

ดูวิธีใช้ Augmented Faces ในแอปของคุณเอง

สิ่งที่ต้องดำเนินการก่อน

โปรดทําความเข้าใจแนวคิด AR ขั้นพื้นฐาน และวิธีกําหนดค่าเซสชัน ARCore ก่อนดําเนินการต่อ

สิ่งที่ต้องดำเนินการก่อน

  • คู่มือนี้จะถือว่าคุณได้ติดตั้งและกําหนดค่า Unity ไว้แล้ว หากไม่ โปรดดู การตั้งค่าด่วนสําหรับ Android ของ Unity เพื่อดูขั้นตอนการติดตั้งและตั้งค่า

  • ตรวจสอบว่าคุณมีชิ้นงานสําหรับวางซ้อนใบหน้า

สร้างและเรียกใช้แอปตัวอย่าง

  1. สร้างโปรเจ็กต์ใหม่ใน Unity ตามคู่มือเริ่มใช้งานฉบับย่อ

  2. ในการตั้งค่าบิลด์ > ฉากในบิลด์ ให้ระบุฉาก AugmentedFaces จาก Assets/GoogleARCore/Examples/AugmentedFaces/Scenes/

  3. ตรวจสอบว่าอุปกรณ์เชื่อมต่อกับเครื่อง แล้วคลิกสร้างและเรียกใช้ Unity จะสร้างโปรเจ็กต์เป็น APK ของ Android ติดตั้งในอุปกรณ์ และเปิดตัวโปรเจ็กต์

    แอปควรเปิดกล้องหน้าและเริ่มติดตามใบหน้าของคุณในฟีดกล้องทันที รูปภาพควรแนบหูของสุนัขจิ้งจอกทั้ง 2 ฝั่งของหน้าผาก แล้ววางจมูกสุนัขจิ้งจอกเหนือจมูกของคุณเอง

การนําเข้าเนื้อหาไปยัง Unity

หากต้องการเพิ่มชิ้นงานของตัวเอง เช่น พื้นผิวและโมเดล 3 มิติไปยังใบหน้าที่ตรวจพบในแอป ให้นําเข้าชิ้นงานลงใน Unity ก่อน

ภาพรวมของการใช้ Augmented Faces ในแอป

กําหนดค่าแอปให้รองรับ Augmented Faces

กําหนดค่าแอปโดยเพิ่ม Augmented Faces ไปยังเซสชัน ARCore, ตั้งค่าฉาก และเปิดใช้กล้องหน้า

หลังจากที่กําหนดค่าแอปให้รองรับ Augmented Faces แล้ว ฟีเจอร์นี้จะสร้างตาข่ายเสริมโดยอัตโนมัติจากใบหน้าที่ตรวจพบครั้งแรกสําหรับแต่ละฉาก

  1. ใน Unity ให้สร้างการกําหนดค่าเซสชันใหม่สําหรับแอป ARCore (ชิ้นงาน > สร้าง > Google ARCore > การกําหนดค่าเซสชัน)
  2. ในตัวตรวจสอบสําหรับชิ้นงานการกําหนดค่าเซสชัน ARCore ให้ตั้งค่าโหมด Augmented Face เป็น Mesh

  3. สร้างและกําหนดค่าเซสชัน ARCore เพื่อรองรับ Augmented Faces ดังนี้

    1. ไปที่เนื้อหาล่วงหน้าในโฟลเดอร์ "เนื้อหา" แล้วลากอุปกรณ์ ARCore ไปยังฉาก
    2. แทนที่การกําหนดค่าเซสชันที่มีอยู่ด้วยการกําหนดค่าใหม่ที่นําเข้าไว้ก่อนหน้านี้
    3. ในเครื่องมือตรวจสอบ ให้ตั้งค่าทิศทางของกล้องในอุปกรณ์เป็นด้านหน้า

การวางแนวตาข่าย

ตรวจสอบการวางแนวของตาข่ายสําหรับ Unity

แนบพื้นผิวกับตาข่าย

เมื่อแนบพื้นผิวกับตาข่าย แอปวางซ้อนและเชื่อมโยงข้อความกับจุดยอดและพื้นผิวของใบหน้าที่ระบุ

  1. นําเข้าพื้นผิวไปยัง Unity
  2. สร้าง GameObject ใหม่ที่ว่างเปล่า
  3. ใน GameObject ให้เพิ่มคอมโพเนนต์ ARCoreAugmentedFaceMeshFilter ใหม่จากตัวอย่าง ARFaces ใน SDK เคล็ดลับมือโปร: ในหน้าต่างโปรเจ็กต์ใน Unity ให้ค้นหา ARCoreAugmentedFaceMeshFilter เพื่อค้นหา
  4. เลือกเชื่อมโยงอัตโนมัติเพื่อให้การเชื่อมโยงเนื้อหากับ Mesh Augmented Mesh ใน GameObject โดยอัตโนมัติ
  5. เพิ่มตัวแสดงผล Mesh
  6. สร้างวัสดุที่ใช้พื้นผิวที่คุณต้องการแนบไปกับใบหน้า
  7. เพิ่มวัสดุลงในตัวแสดงผล

แนบโมเดลกับบริเวณใบหน้า

ทําตามขั้นตอนเหล่านี้เพื่อวางรากของโครงกระดูกที่รากของกึ่งกลางของใบหน้า การดําเนินการนี้ยังอัปเดตภูมิภาค 3 ภูมิภาคโดยอัตโนมัติเพื่อให้เป็นไปตามโครงข่ายใบหน้า

  1. นําเข้าโมเดล 3 มิติไปยัง Unity
  2. เพิ่มรูปภาพลงในฉาก
  3. เพิ่มอุปกรณ์ ในกรณีนี้ คุณควรเห็นภูมิภาค (เช่น FOREHEAD_LEFT)
  4. คลิกเพิ่มคอมโพเนนต์ แล้วเลือกคอมโพเนนต์ของประเภท AR Core Augmented Face Rig จากตัวอย่าง ARFaces ใน SDK
  5. เลือกตัวเลือกเชื่อมโยงอัตโนมัติ การดําเนินการนี้จะเชื่อมโยงโมเดลกับภูมิภาคบนใบหน้าโดยอัตโนมัติ