การทดสอบ Hit นำวัตถุเสมือนจริงมาอยู่ในโลกแห่งความเป็นจริง

คำแนะนำเฉพาะแพลตฟอร์ม

เนื้อหา AR ต้องวางและปรับขนาดอย่างถูกต้องเพื่อให้กลมกลืนกับฉาก วัตถุเสมือนที่อยู่ไกลออกไปควรมีขนาดเล็กลงเช่นเดียวกับวัตถุในโลกแห่งความจริง คุณสามารถทำการทดสอบการตรวจจับ (หรือ Raycast ใน AR Foundation สำหรับ Unity) เพื่อกำหนดตำแหน่งที่ถูกต้องของออบเจ็กต์ 3 มิติในฉาก การวางตำแหน่งที่ถูกต้องจะช่วยให้มั่นใจได้ว่าเนื้อหา AR จะได้รับการแสดงผลในขนาดที่เหมาะสม (ขนาดที่ปรากฏ)

การทดสอบการสัมผัสจะค้นหาจุดตัดระหว่างรูปทรงเรขาคณิต 3 มิติในโลกแห่งความจริงกับรังสีเสมือนที่ประกอบด้วยจุดเริ่มต้นและทิศทาง โดยทั่วไปแล้วมักจะใช้รังสีที่มีกล้องของอุปกรณ์เป็นจุดเริ่มต้น แต่ ARCore มี API สำหรับการทดสอบการตรวจหาออบเจ็กต์ด้วยรังสีที่กำหนดเองในพิกัดพื้นที่โลก

ลองนึกภาพว่ามีรังสีที่มาจากกล้องของอุปกรณ์ผู้ใช้ซึ่งทอดยาวไปข้างหน้าจนกระทั่งไปชนกับรูปทรงเรขาคณิต 3 มิติของฉาก เช่น พื้น ผนัง หรือวัตถุ เมื่อเกิดเหตุการณ์นี้ขึ้น คุณจะได้รับรายการผลลัพธ์ที่ตรงกันหรือจุดตัดที่มีรูปทรงของฉากที่ตรวจพบ รายการจะจัดเรียงตามระยะทางจากอุปกรณ์ โดยแยกตามทางแยกที่ใกล้ที่สุดก่อน ซึ่งเป็นสิ่งสำคัญเนื่องจากโดยทั่วไปแล้วคุณจะมองไม่เห็นออบเจ็กต์ที่ซ่อนอยู่ด้านหลังออบเจ็กต์อื่นๆ ดังนั้นส่วนใหญ่แล้วผลลัพธ์แรกจึงมีความสำคัญมากที่สุด

เนื้อหาของผลลัพธ์ที่ตรงกัน

ระบบจะแสดงผลลัพธ์การเข้าชมแต่ละรายการเป็นรายการที่มีข้อมูลต่อไปนี้สำหรับผลลัพธ์แต่ละรายการ

  • ระยะห่างจากจุดกำเนิดรังสีเป็นเมตร
  • ท่าทาง (ตำแหน่งและการวางแนว) ของผลลัพธ์ Hit
  • เรขาคณิต 3 มิติที่คุณแตะในรูปแบบของ Trackable

จากนั้นคุณสามารถใช้ผลลัพธ์ที่ต้องการเพื่อวางเนื้อหา 3 มิติอย่างสมจริงโดยใช้ Anchor

ประเภทผลลัพธ์ของ Hit

ผลลัพธ์ของ Hit มี 4 ประเภท ได้แก่ ผลลัพธ์ความลึก ระนาบ จุดฟีเจอร์ และการจัดวางทันที แต่ละวิธีมีกรณีการใช้งานและข้อแลกเปลี่ยนของตัวเอง ดังที่แสดงในตารางต่อไปนี้

ประเภทผลลัพธ์ของ Hit คำอธิบาย การวางแนว กรณีการใช้งาน
ความลึก ใช้ข้อมูลความลึกจากทั้งฉากเพื่อกำหนดความลึกและทิศทางที่ถูกต้องของจุด ตั้งฉากกับพื้นผิว 3 มิติ วางออบเจ็กต์เสมือนบนพื้นผิวใดก็ได้ (ไม่ใช่แค่บนพื้นและผนัง)
เครื่องบิน กระทบพื้นผิวแนวนอนและ/หรือแนวตั้งเพื่อกำหนดความลึกและการวางแนวที่ถูกต้องของจุด ตั้งฉากกับพื้นผิว 3 มิติ วางออบเจ็กต์บนระนาบ (พื้นหรือผนัง) โดยใช้รูปทรงเรขาคณิตทั้งหมดของระนาบ ต้องการสเกลที่ถูกต้องทันที การสำรองสำหรับการทดสอบ Hit ของความลึก
จุดเด่น ใช้ฟีเจอร์ภาพรอบๆ จุดที่ผู้ใช้แตะเพื่อกำหนดตำแหน่งและการวางแนวที่ถูกต้องของจุด ตั้งฉากกับพื้นผิว 3 มิติ วางวัตถุบนพื้นผิวใดก็ได้ (ไม่ใช่แค่บนพื้นและผนัง)
การวางทันที (Raycast แบบต่อเนื่อง) ใช้พื้นที่หน้าจอเพื่อวางเนื้อหา ใช้ความลึกโดยประมาณที่แอปให้ไว้ในตอนแรก ทำงานได้ทันที แต่ท่าทางและความลึกจริงจะเปลี่ยนเมื่อ ARCore สามารถกำหนดเรขาคณิตของฉากจริงได้ +Y ชี้ขึ้นด้านบน ตรงข้ามกับแรงโน้มถ่วง วางออบเจ็กต์บนระนาบ (พื้นหรือผนัง) โดยใช้เรขาคณิตทั้งหมดของระนาบในกรณีที่การวางอย่างรวดเร็วเป็นสิ่งสำคัญ และประสบการณ์การใช้งานสามารถยอมรับความลึกและสเกลเริ่มต้นที่ไม่รู้จักได้

ความเข้ากันได้ของอุปกรณ์

การทดสอบการตรวจหาวัตถุจะทำงานในอุปกรณ์ที่รองรับ ARCore ทั้งหมด แต่การทดสอบการตรวจหาวัตถุตามความลึกจะต้องใช้อุปกรณ์ที่รองรับความลึก

ใช้ผลลัพธ์การตรวจหาเพื่อวางเนื้อหา AR

เมื่อได้ผลลัพธ์ที่ตรงกันแล้ว คุณจะใช้ท่าทางของผลลัพธ์นั้นเป็นอินพุตเพื่อวางเนื้อหา AR ในฉากได้