คู่มือนี้จะแสดงภาพรวมของการพัฒนาด้วย Unity สำหรับ Android XR Android XR ทำงานร่วมกับเครื่องมือและฟีเจอร์ที่คุ้นเคยซึ่งคุณคาดหวังจาก Unity และเนื่องจากการรองรับ Android XR ของ Unity สร้างขึ้นบน OpenXR ฟีเจอร์หลายอย่างที่อธิบายไว้ในภาพรวมของ OpenXR จึงรองรับใน Unity ด้วย
ทำตามคำแนะนำนี้เพื่อดูข้อมูลเกี่ยวกับสิ่งต่อไปนี้
- การรองรับ Unity สำหรับ Android XR
- ข้อมูลเบื้องต้นเกี่ยวกับ Unity XR
- การพัฒนาและเผยแพร่แอปสำหรับ Android XR
- แพ็กเกจ Unity สำหรับ Android XR
- OpenXR ของ Unity: แพ็กเกจ Android XR
- ส่วนขยาย Android XR สำหรับ Unity
- ข้อควรพิจารณาเกี่ยวกับฟีเจอร์และความเข้ากันได้
- การป้อนข้อมูลและการโต้ตอบ
การรองรับ Android XR ใน Unity
เมื่อสร้างแอป Unity สำหรับ Android XR คุณจะใช้ประโยชน์จากเครื่องมือและความสามารถของเทคโนโลยีความจริงผสมได้ใน Unity 6 เวอร์ชันล่าสุด ซึ่งรวมถึงเทมเพลตความจริงแบบผสมที่ใช้ XR Interaction Toolkit, AR Foundation และ OpenXR Plugin เพื่อช่วยให้คุณเริ่มต้นใช้งานได้อย่างรวดเร็ว เมื่อสร้างแอปด้วย Unity สำหรับ Android XR เราขอแนะนำให้ใช้ Universal Render Pipeline (URP) เป็น Render Pipeline และ Vulkan เป็น Graphics API ฟีเจอร์เหล่านี้ช่วยให้คุณ ใช้ประโยชน์จากฟีเจอร์กราฟิกบางอย่างของ Unity ซึ่ง รองรับเฉพาะ Vulkan ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีกำหนดค่าการตั้งค่าเหล่านี้ได้ในคู่มือการตั้งค่าโปรเจ็กต์
พื้นฐาน XR ของ Unity
หากคุณเพิ่งเริ่มต้นใช้งาน Unity หรือการพัฒนา XR โปรดดูคู่มือ XR ของ Unity เพื่อทำความเข้าใจแนวคิดและเวิร์กโฟลว์ XR ขั้นพื้นฐาน XR Manual มีข้อมูลเกี่ยวกับสิ่งต่อไปนี้
- ปลั๊กอินผู้ให้บริการ XR รวมถึง Unity OpenXR: Android XR และส่วนขยาย Android XR สำหรับ Unity
- แพ็กเกจการรองรับ XR เพื่อเพิ่มฟีเจอร์ระดับแอปพลิเคชันเพิ่มเติม
- คู่มือสถาปัตยกรรม XR ที่อธิบายเทคโนโลยี XR ของ Unity และระบบย่อย XR
- การตั้งค่าโปรเจ็กต์ XR
- การสร้างและเรียกใช้แอป XR
- คำแนะนำด้านกราฟิก XR ซึ่งรวมถึง Universal Render Pipeline, การแสดงภาพสเตอริโอ, การแสดงผลแบบโฟเวต, ภูมิภาคการแสดงผลแบบหลายมุมมอง และการกำหนดเวลาเฟรม VR
- คำแนะนำด้านเสียงสำหรับ XR รวมถึงการรองรับตัวปรับแต่งเสียง เชิงพื้นที่
พัฒนาและเผยแพร่แอปสำหรับ Android
Unity มีเอกสารประกอบเชิงลึกสำหรับการพัฒนา สร้าง และเผยแพร่สำหรับ Android ซึ่งครอบคลุมหัวข้อต่างๆ รวมถึงสิทธิ์ของ Android ใน Unity, การตั้งค่าการสร้าง Android, การสร้างแอปสำหรับ Android และการส่งไปยัง Google Play
แพ็กเกจ Unity สำหรับ Android XR
มี 2 แพ็กเกจที่รองรับการสร้างแอป Unity สำหรับ Android XR ทั้ง 2 แพ็กเกจนี้เป็นปลั๊กอินของผู้ให้บริการ XR ซึ่งเปิดใช้ได้ ผ่านแพ็กเกจการจัดการปลั๊กอิน XR ของ Unity ตัวจัดการปลั๊กอิน XR จะเพิ่มการตั้งค่าโปรเจกต์สำหรับการจัดการและให้ความช่วยเหลือเกี่ยวกับการโหลด การเริ่มต้น การตั้งค่า และการรองรับการสร้างสำหรับปลั๊กอิน XR หากต้องการอนุญาตให้แอป เรียกใช้ฟีเจอร์ OpenXR ในรันไทม์ โปรเจ็กต์ต้องมีฟีเจอร์ต่อไปนี้ ที่เปิดใช้ผ่านตัวจัดการปลั๊กอิน
รูปภาพนี้แสดงตัวอย่างตำแหน่งที่คุณเปิดใช้กลุ่มฟีเจอร์เหล่านี้ผ่านเอดิเตอร์ของ Unity ได้
Unity OpenXR Android XR
แพ็กเกจ Unity OpenXR Android XR เป็น XR Plug-in สำหรับเพิ่ม การรองรับ Android XR ลงใน Unity ปลั๊กอิน XR นี้รองรับ Android XR สำหรับ Unity เป็นส่วนใหญ่ และช่วยให้อุปกรณ์ Android XR รองรับโปรเจ็กต์ AR Foundation AR Foundation ออกแบบมาสำหรับนักพัฒนาแอป ที่ต้องการสร้างประสบการณ์ AR หรือ Mixed Reality โดยจะแสดงอินเทอร์เฟซ สำหรับฟีเจอร์ AR แต่ไม่ได้ใช้ฟีเจอร์ใดๆ ด้วยตัวเอง แพ็กเกจ Unity OpenXR Android XR มีการติดตั้งใช้งาน หากต้องการเริ่มต้นใช้งานแพ็กเกจนี้ โปรดดูคู่มือแพ็กเกจ ซึ่งมีคำแนะนำการเริ่มต้นใช้งาน
ส่วนขยาย Android XR สำหรับ Unity
ส่วนขยาย Android XR สำหรับ Unity จะเสริมแพ็กเกจ OpenXR Android XR ของ Unity และมีฟีเจอร์เพิ่มเติมที่จะช่วยคุณสร้างประสบการณ์การใช้งานที่สมจริง โดยจะใช้เพียงอย่างเดียวหรือใช้ร่วมกับแพ็กเกจ Unity OpenXR Android XR ก็ได้
หากต้องการเริ่มต้นใช้งานแพ็กเกจนี้ ให้ทําตามคู่มือการตั้งค่าโปรเจ็กต์หรือ คู่มือเริ่มต้นฉบับย่อสําหรับการนําเข้าส่วนขยาย Android XR สําหรับ Unity
ข้อควรพิจารณาเกี่ยวกับฟีเจอร์และความเข้ากันได้
ตารางต่อไปนี้จะอธิบายฟีเจอร์ที่ Unity OpenXR รองรับ แพ็กเกจ Android XR และแพ็กเกจส่วนขยาย Android XR สำหรับ Unity และสามารถ ใช้เพื่อพิจารณาว่าแพ็กเกจใดมีฟีเจอร์ที่คุณต้องการและข้อควรพิจารณา ด้านความเข้ากันได้
ฟีเจอร์ |
Unity OpenXR: สตริงฟีเจอร์ Android XR |
สตริงฟีเจอร์ของส่วนขยาย Android XR สำหรับ Unity |
กรณีการใช้งานและลักษณะการทำงานที่คาดไว้ |
|---|---|---|---|
Android XR: เซสชัน AR
|
Android XR (ส่วนขยาย): การจัดการเซสชัน
|
หากต้องการใช้ฟีเจอร์จากแพ็กเกจใดแพ็กเกจหนึ่ง คุณต้องเปิดใช้ฟีเจอร์ AR Session สำหรับแพ็กเกจนั้น คุณเปิดใช้ฟีเจอร์ทั้ง 2 ชุดพร้อมกันได้ โดยฟีเจอร์แต่ละรายการจะจัดการความขัดแย้งตามความเหมาะสม |
|
ไม่มี |
ไม่มี |
การติดตามอุปกรณ์ใช้เพื่อติดตามตำแหน่งและการหมุนของอุปกรณ์ในพื้นที่จริง GameObject ของ XR Origin จะจัดการการติดตามอุปกรณ์และแปลงวัตถุที่ติดตามได้เป็นระบบพิกัดของ Unity โดยอัตโนมัติโดยใช้คอมโพเนนต์ XROrigin และลำดับชั้น GameObject ที่มีกล้องและ TrackedPoseDriver |
|
Android XR: กล้อง AR |
ไม่มี |
ฟีเจอร์นี้รองรับการประมาณแสงและการส่งผ่านแบบเต็มหน้าจอ |
|
Android XR: ระนาบ AR |
Android XR (ส่วนขยาย): เครื่องบิน |
ฟีเจอร์ทั้ง 2 นี้เหมือนกันทุกประการ คุณจะใช้ฟีเจอร์ใดก็ได้ Android XR (ส่วนขยาย): มี Plane เพื่อให้นักพัฒนาแอปใช้ฟีเจอร์ Android XR (ส่วนขยาย): การติดตามออบเจ็กต์และ Anchor แบบถาวรได้โดยไม่ต้องขึ้นอยู่กับทรัพยากร Dependency ของแพ็กเกจ Unity OpenXR Android XR ในอนาคต เราจะนำ Android XR (ส่วนขยาย): Plane ออกเพื่อเปลี่ยนไปใช้ Android XR: AR Anchor |
|
ไม่มี |
Android XR (ส่วนขยาย): การติดตามออบเจ็กต์ |
ฟีเจอร์นี้รองรับการตรวจจับและติดตามออบเจ็กต์ในสภาพแวดล้อมจริง ซึ่งใช้ร่วมกับคลังออบเจ็กต์อ้างอิง |
|
Android XR: ใบหน้า AR
|
Android XR: การติดตามใบหน้า
|
การรองรับดวงตาของอวตารมีให้ผ่านฟีเจอร์ Android XR: AR Face เข้าถึงสีหน้าของผู้ใช้ผ่านฟีเจอร์การติดตามใบหน้าของ Android XR คุณใช้ฟีเจอร์ทั้ง 2 นี้ร่วมกันได้ |
|
Android XR: AR Raycast
|
ไม่มี |
ฟีเจอร์นี้ช่วยให้คุณส่งรังสีและคำนวณจุดตัดระหว่างรังสีนั้นกับวัตถุที่ติดตามระนาบหรือวัตถุที่ติดตามความลึกซึ่งตรวจพบในสภาพแวดล้อมจริงได้ |
|
Android XR: Anchor AR |
Android XR (ส่วนขยาย): Anchor
|
ฟีเจอร์ทั้ง 2 รายการรองรับทั้ง Spatial Anchor และ Plane Anchor โดยคุณจะใช้ฟีเจอร์ใดฟีเจอร์หนึ่งก็ได้ สำหรับ Anchor แบบถาวร ให้ใช้ Android XR (ส่วนขยาย): Anchor ในอนาคต เราจะนำ Android XR (ส่วนขยาย): Anchor ออก และฟีเจอร์ Anchor ทั้งหมดจะอยู่ใน Android XR: AR Anchor |
|
Android XR: การบดบัง AR
|
ไม่มี |
การบดบังช่วยให้เนื้อหาความเป็นจริงแบบผสมในแอปของคุณปรากฏเป็นแบบซ่อนหรือถูกบดบังบางส่วนอยู่ด้านหลังวัตถุในสภาพแวดล้อมจริง |
|
เมตริกประสิทธิภาพ |
เมตริกประสิทธิภาพของ Android XR |
ไม่มี |
ใช้ฟีเจอร์นี้เพื่อเข้าถึงเมตริกประสิทธิภาพสำหรับอุปกรณ์ Android XR |
การรองรับเลเยอร์การจัดองค์ประกอบ (ต้องใช้ปลั๊กอิน OpenXR และเลเยอร์การจัดองค์ประกอบ XR) |
Android XR: เลเยอร์การจัดองค์ประกอบแบบส่งผ่าน
|
ใช้การรองรับเลเยอร์การคอมโพสิตของ Unity เพื่อสร้างเลเยอร์การคอมโพสิตพื้นฐาน (เช่น สี่เหลี่ยมจัตุรัส ทรงกระบอก การฉายภาพ) Android XR: เลเยอร์การจัดองค์ประกอบการส่งผ่านสามารถใช้เพื่อสร้างเลเยอร์การส่งผ่านที่มีตาข่ายที่กำหนดเองได้ โดยอ่านจาก GameObject ของ Unity |
|
การแสดงผลแบบโฟเวต (ต้องใช้ปลั๊กอิน OpenXR)
|
โฟเวชัน (เดิม) |
การเรนเดอร์แบบโฟเวตช่วยเพิ่มความเร็วในการเรนเดอร์ด้วยการลดความละเอียดของพื้นที่ในวิสัยทัศน์รอบข้างของผู้ใช้ ฟีเจอร์การเรนเดอร์แบบโฟเวตของ Unity รองรับเฉพาะแอปที่ใช้ URP และ Vulkan ฟีเจอร์ Foveation (เดิม) ในส่วนขยาย Android XR สำหรับ Unity ยังรองรับ Built-in Render Pipeline และ OpenGL ES ด้วย เราขอแนะนำให้ใช้ฟีเจอร์การเรนเดอร์แบบโฟเวตของ Unity เมื่อเป็นไปได้ และโปรดทราบว่าทั้ง URP และ Vulkan เป็นตัวเลือกที่แนะนำเมื่อสร้างสำหรับ Android XR |
|
ไม่มี |
ฟีเจอร์นี้จะตั้งค่าโหมดต้นทางการติดตามของ XRInputSubsystem เป็น Unbounded Unbounded หมายความว่า XRInputSubsystem จะติดตาม InputDevice ทั้งหมดที่เกี่ยวข้องกับ World Anchor ซึ่งอาจเปลี่ยนแปลงได้ |
||
ไม่มี |
โหมดการผสมสภาพแวดล้อม |
ฟีเจอร์นี้ช่วยให้คุณตั้งค่าโหมดการผสมผสานสภาพแวดล้อม XR ซึ่งควบคุมวิธีที่ภาพเสมือนผสานรวมกับสภาพแวดล้อมในโลกจริงเมื่อเปิดใช้การแสดงภาพ |
|
ไม่มี |
ช่วยให้ |
||
ไม่มี |
ระบุกลยุทธ์การกำหนดค่าการตรวจสอบสิทธิ์เซสชัน (คีย์ API, ไม่ต้องใช้คีย์ และโทเค็นการตรวจสอบสิทธิ์) สำหรับบริการที่สำรองข้อมูลไว้ในระบบคลาวด์ |
||
ไม่มี |
ขยาย Unity ARFace ด้วยรูปแบบการติดตามใบหน้าแบบหลายรูปแบบที่กำหนดค่าได้ ( |
||
ไม่มี |
อนุญาตให้ค้นหาสถานะแบตเตอรี่รันไทม์และระดับการชาร์จของคอนโทรลเลอร์และเส้นทางอินพุตที่เชื่อมต่อโดยใช้ |
||
Android XR: กล้อง AR |
ไม่มี |
ช่วยให้สามารถค้นหาและตั้งค่าระดับการหรี่แสงของฟีเจอร์การส่งผ่านโลกจริงโดยใช้ ARCameraFeature ของ Unity |
|
ไม่มี |
แสดงรายการพร็อพเพอร์ตี้ของส่วนขยายรันไทม์และความสามารถของอุปกรณ์โดยใช้ |
||
ไม่มี |
อนุญาตให้ค้นหาสถานะก่อนเปิดตัวของสภาพแวดล้อมรันไทม์ (รวมถึงโหมดผสมสภาพแวดล้อม ความทึบแสงแบบส่งผ่าน และรูปแบบอินพุตที่ใช้งานอยู่) โดยใช้ |
การป้อนข้อมูลและการโต้ตอบ
Android XR รองรับการป้อนข้อมูลแบบธรรมชาติหลายรูปแบบ
นอกจากแฮนด์และอายแทร็กกิ้งแล้ว ระบบยังรองรับอุปกรณ์ต่อพ่วงต่างๆ เช่น คอนโทรลเลอร์ 6DoF เมาส์ และแป้นพิมพ์จริงด้วย ซึ่งหมายความว่าแอปสำหรับ Android XR ควรจะรองรับการโต้ตอบด้วยมือ และไม่สามารถ ถือว่าอุปกรณ์ทุกเครื่องจะมาพร้อมกับคอนโทรลเลอร์
โปรไฟล์การโต้ตอบ
Unity ใช้โปรไฟล์การโต้ตอบเพื่อจัดการวิธีที่แอปพลิเคชัน XR สื่อสารกับอุปกรณ์และแพลตฟอร์ม XR ต่างๆ โปรไฟล์เหล่านี้ กำหนดอินพุตและเอาต์พุตที่คาดไว้สำหรับการกำหนดค่าฮาร์ดแวร์ต่างๆ เพื่อส่งเสริมความเข้ากันได้และฟังก์ชันการทำงานที่สอดคล้องกันในแพลตฟอร์มต่างๆ การเปิดใช้โปรไฟล์การโต้ตอบจะช่วยให้มั่นใจได้ว่าแอปพลิเคชัน XR จะทำงานได้อย่างถูกต้องในอุปกรณ์ต่างๆ รักษาการแมปอินพุตที่สอดคล้องกัน และมีสิทธิ์เข้าถึงฟีเจอร์ XR ที่เฉพาะเจาะจง วิธีตั้งค่าโปรไฟล์การโต้ตอบ
- เปิดหน้าต่างการตั้งค่าโปรเจ็กต์ (เมนู: แก้ไข > การตั้งค่าโปรเจ็กต์)
- คลิกการจัดการปลั๊กอิน XR เพื่อขยายส่วนปลั๊กอิน (หากจำเป็น)
- เลือก OpenXR ในรายการปลั๊กอิน XR
- ในส่วนโปรไฟล์การโต้ตอบ ให้เลือกปุ่ม + เพื่อเพิ่มโปรไฟล์
- เลือกโปรไฟล์ที่จะเพิ่มจากรายการ
การโต้ตอบด้วยมือ
การโต้ตอบด้วยมือ (XR_EXT_hand_interaction) มาจากปลั๊กอิน OpenXR และคุณสามารถแสดง<HandInteraction>
เลย์เอาต์อุปกรณ์ในระบบอินพุตของ Unity ได้โดยการเปิดใช้โปรไฟล์การโต้ตอบด้วยมือ ใช้โปรไฟล์การโต้ตอบนี้สำหรับการป้อนข้อมูลด้วยมือที่ท่าทางสัมผัส 4 ท่าที่กำหนดโดย OpenXR รองรับ ได้แก่ "หยิก" "จิ้ม" "เล็ง" และ "จับ" หากต้องการฟังก์ชันการโต้ตอบด้วยมือหรือการติดตามการเคลื่อนไหวของมือเพิ่มเติม โปรดดูมือ XR ในหน้านี้
การโต้ตอบด้วยการจ้องด้วยตา
การโต้ตอบด้วยการมอง (XR_EXT_eye_gaze_interaction) มาจากปลั๊กอิน OpenXR และคุณสามารถใช้เลย์เอาต์นี้เพื่อดึงข้อมูลท่าทางของดวงตา (ตำแหน่งและการหมุน) ที่ส่วนขยายส่งคืน อ่านเพิ่มเติมเกี่ยวกับ
การโต้ตอบด้วยการมองในคู่มืออินพุต OpenXR
การโต้ตอบของตัวควบคุม
Android XR รองรับโปรไฟล์ตัวควบคุม Oculus Touch สำหรับตัวควบคุม 6DoF ทั้ง 2 โปรไฟล์นี้มีให้ใช้งานโดยปลั๊กอิน OpenXR
การโต้ตอบด้วยเมาส์
โปรไฟล์การโต้ตอบของเมาส์ Android XR (XR_ANDROID_mouse_interaction)
มีให้ใช้งานในส่วนขยาย Android XR สำหรับ Unity ซึ่งจะแสดง
<AndroidXRMouse>เลย์เอาต์อุปกรณ์ใน Unity Input System
การโต้ตอบท่าฝ่ามือ
ปลั๊กอิน OpenXR รองรับการโต้ตอบท่าทางฝ่ามือ (XR_EXT_palm_pose) ซึ่งแสดงเลย์เอาต์ <PalmPose> ภายในระบบอินพุตของ Unity
ท่าฝ่ามือไม่ได้มีไว้เพื่อเป็นทางเลือกแทนส่วนขยายหรือแพ็กเกจที่
ติดตามมือสำหรับ Use Case ที่ซับซ้อนกว่า แต่สามารถใช้เพื่อ
วางเนื้อหาภาพเฉพาะแอป เช่น ภาพอวตาร ท่าฝ่ามือประกอบด้วย
ทั้งตำแหน่งและทิศทางของฝ่ามือ
มือ XR
แพ็กเกจ XR Hands ช่วยให้คุณเข้าถึงข้อมูลการติดตามการเคลื่อนไหวของมือได้โดยใช้
XR_EXT_hand_tracking และ
XR_FB_hand_tracking_aim รวมถึงมี Wrapper เพื่อแปลง
ข้อมูลข้อต่อของมือจากการติดตามการเคลื่อนไหวของมือเป็นท่าทางอินพุต หากต้องการใช้ฟีเจอร์ที่แพ็กเกจ XR Hands มีให้ ให้เปิดใช้ฟีเจอร์ระบบย่อยการติดตามการเคลื่อนไหวของมือและการติดตามการเคลื่อนไหวของมือ Meta
Aim OpenXR
แพ็กเกจมือ XR มีประโยชน์ในกรณีที่คุณต้องการท่าทางมือหรือข้อมูลข้อต่อมือที่ละเอียดยิ่งขึ้น หรือเมื่อคุณต้องการทำงานร่วมกับท่าทางที่กำหนดเอง
ดูรายละเอียดเพิ่มเติมได้ในเอกสารประกอบของ Unity สำหรับการตั้งค่ามือ XR ในโปรเจ็กต์
ขอบเขตความเชื่อมั่นในการติดตามใบหน้า
ส่วนขยาย XR_ANDROID_face_tracking จะให้ค่าความเชื่อมั่นสำหรับ 3
ภูมิภาคของใบหน้า ได้แก่ ด้านซ้ายบน ด้านขวาบน และด้านล่างของใบหน้า ค่าเหล่านี้มีตั้งแต่ 0 (ไม่มีความเชื่อมั่น) ถึง 1 (มีความเชื่อมั่นสูงสุด) ซึ่งบ่งบอกถึงความแม่นยำของการติดตามใบหน้าสำหรับแต่ละภูมิภาค
คุณสามารถใช้ค่าความเชื่อมั่นเหล่านี้เพื่อปิดใช้ Blendshape หรือ ใช้ฟิลเตอร์ภาพ (เช่น การเบลอ) กับบริเวณใบหน้าที่เกี่ยวข้องได้ สำหรับ การปิดใช้งาน Blendshape พื้นฐานในภูมิภาคใบหน้าที่เกี่ยวข้อง
ส่วน "ใบหน้าส่วนล่าง" หมายถึงทุกอย่างที่อยู่ใต้ดวงตา รวมถึงปาก คาง แก้ม และจมูก ส่วนบน 2 ส่วนประกอบด้วยดวงตาและบริเวณคิ้วทางด้านซ้ายและขวาของใบหน้า
ข้อมูลโค้ด C# ต่อไปนี้แสดงวิธีเข้าถึงและใช้ข้อมูลความเชื่อมั่นในสคริปต์ Unity
using UnityEngine;
using Google.XR.Extensions;
public class FaceTrackingConfidence : MonoBehaviour
{
void Update()
{
if (!XRFaceTrackingFeature.IsFaceTrackingExtensionEnabled.HasValue)
{
DebugTextTopCenter.text = "XrInstance hasn't been initialized.";
return;
}
else if (!XRFaceTrackingFeature.IsFaceTrackingExtensionEnabled.Value)
{
DebugTextTopCenter.text = "XR_ANDROID_face_tracking is not enabled.";
return;
}
for (int x = 0; x < _faceManager.Face.ConfidenceRegions.Length; x++)
{
switch (x)
{
case (int)XRFaceConfidenceRegion.Lower:
regionText = "Bottom";
break;
case (int)XRFaceConfidenceRegion.LeftUpper:
regionText = DebugTextConfidenceLeft;
break;
case (int)XRFaceConfidenceRegion.RightUpper:
regionText = DebugTextConfidenceRight;
break;
}
}
}
ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบเกี่ยวกับส่วนขยาย Android XR สำหรับ Unity
เลือกวิธีแสดงมือ
Android XR รองรับการแสดงผลมือ 2 วิธี ได้แก่ ตาข่ายมือและเครื่องมือแสดงภาพสำเร็จรูป
โครงข่ายมือ
แพ็กเกจ Android XR Unity มีฟีเจอร์ Hand Mesh ที่ให้
สิทธิ์เข้าถึง XR_ANDROID_hand_mesh extension ฟีเจอร์ Hand Mesh
จะแสดง Mesh สำหรับมือของผู้ใช้ Hand Mesh มีจุดยอดของ
สามเหลี่ยมที่แสดงถึงรูปทรงของมือ ฟีเจอร์นี้มีไว้เพื่อ
ใช้ในการสร้างตาข่ายที่ปรับตามโปรไฟล์ของผู้ใช้ซึ่งแสดงถึงรูปทรงเรขาคณิตจริงของมือผู้ใช้
เพื่อการแสดงภาพ
Prefab ของมือ XR
แพ็กเกจ XR Hands มีตัวอย่างชื่อ Hands visualizer ซึ่งมีมือซ้ายและขวาที่ติดตั้งอุปกรณ์ครบถ้วน สำหรับการแสดงภาพมือของผู้ใช้ที่เหมาะสมกับบริบท
ท่าทางสัมผัสของระบบ
Android XR มีท่าทางสัมผัสของระบบเพื่อเปิดเมนูให้ผู้ใช้กลับไป เปิด Launcher หรือดูภาพรวมของแอปที่กำลังทำงานอยู่ ผู้ใช้สามารถเปิดใช้งานเมนูระบบนี้ได้โดยใช้การบีบนิ้วด้วยมือข้างที่ถนัด
เมื่อผู้ใช้โต้ตอบกับเมนูการนำทางของระบบ แอปพลิเคชัน
จะตอบสนองต่อเหตุการณ์การติดตามการเคลื่อนไหวของศีรษะเท่านั้น แพ็กเกจ XR Hands สามารถตรวจจับได้เมื่อผู้ใช้ดำเนินการบางอย่าง เช่น โต้ตอบกับเมนูการนำทางของระบบนี้ การตรวจสอบ AimFlags, SystemGesture และ DominantHand จะช่วยให้คุณทราบ
เมื่อระบบดำเนินการนี้ ดูข้อมูลเพิ่มเติมเกี่ยวกับ AimFlags ได้ที่เอกสารประกอบ Enum MetaAimFlags ของ Unity
ชุดเครื่องมือ XR Interaction
แพ็กเกจชุดเครื่องมือการโต้ตอบ XR เป็นระบบการโต้ตอบระดับสูงที่อิงตามคอมโพเนนต์สำหรับการสร้างประสบการณ์ VR และ AR โดยจะ มีเฟรมเวิร์กที่ทำให้การโต้ตอบ 3 มิติและ UI พร้อมใช้งานจากเหตุการณ์อินพุตของ Unity โดยรองรับงานการโต้ตอบต่างๆ รวมถึงการตอบสนองแบบรู้สึกได้ ภาพ และการเคลื่อนที่
OpenXR™ และโลโก้ OpenXR เป็นเครื่องหมายการค้าของ The Khronos Group Inc. และจดทะเบียนเป็นเครื่องหมายการค้าในจีน สหภาพยุโรป ญี่ปุ่น และสหราชอาณาจักร