พัฒนาด้วย OpenXR

อุปกรณ์ XR ที่รองรับ
คำแนะนำนี้จะช่วยคุณสร้างประสบการณ์การใช้งานสำหรับอุปกรณ์ XR ประเภทนี้
ชุดหูฟัง XR
แว่นตา XR แบบใช้สาย

 

โลโก้ข้อความ OpenXR

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

ฟีเจอร์

Android XR รองรับฟีเจอร์ที่ช่วยให้คุณสร้างแอปที่ใช้ประโยชน์จากความสามารถเฉพาะตัวของอุปกรณ์ XR ได้อย่างเต็มที่โดยใช้ OpenXR ฟีเจอร์เหล่านี้รวมถึงสิ่งต่อไปนี้

เฟรมเวิร์กเอนทิตีเชิงพื้นที่
รากฐานแบบรวมสำหรับการทำความเข้าใจฉากและการให้เหตุผลเชิงพื้นที่ ช่วยให้แอปพลิเคชันค้นพบ ค้นหา และติดตามเอนทิตีเชิงพื้นที่ทางกายภาพในสภาพแวดล้อม (รวมถึงระนาบ, โครงข่าย 3 มิติ, กรอบล้อมรอบ, รูปภาพ, เครื่องหมาย และคำอธิบายประกอบ) กรองการค้นพบโดยใช้ขอบเขตเชิงพื้นที่ ค้นหาต้นแบบเอนทิตี สร้าง Anchor เชิงพื้นที่ที่แนบกับเอนทิตี ทำการเรย์แคสต์เอนทิตีเชิงพื้นที่และโครงข่าย และคงเอนทิตีเชิงพื้นที่ไว้ในเซสชันต่างๆ ของแอปพลิเคชัน
คอนเทนเนอร์เชิงพื้นที่
API การจัดการหน้าต่างเชิงพื้นที่ข้ามแพลตฟอร์ม (XR_EXT_spatial_container และ XR_EXT_spatial_container_self_rendering) ที่ช่วยให้แอปพลิเคชันสร้างและแสดงผลคอนเทนเนอร์เชิงพื้นที่ 3 มิติที่แสดงผลได้ (ทั้งแบบมีขอบเขตและแบบสมจริง) โดยใช้ Swapchain และเลเยอร์การจัดองค์ประกอบของ OpenXR ซึ่งช่วยให้ผู้ใช้สัมผัสประสบการณ์การใช้งานคอนเทนเนอร์เชิงพื้นที่หลายรายการพร้อมกันได้
Anchor เชิงพื้นที่และ Anchor เชิงพื้นที่
ช่วยให้แอปพลิเคชันติดตามท่าทางที่สัมพันธ์กับโลกได้โดยใช้บริการระบุตำแหน่งด้วยภาพ (VPS) และ GPS ของ Google, ตรวจสอบสิทธิ์กับบริการ Google Cloud และวาง Anchor เชิงพื้นที่และ Anchor บนพื้นผิวที่ละติจูด ลองจิจูด และระดับความสูงที่เฉพาะเจาะจง
อุปกรณ์ที่ติดตามได้
รองรับการตรวจจับระนาบ ซึ่งเป็นความสามารถในการระบุและติดตามพื้นผิวเรียบภายในสภาพแวดล้อม ทำให้สามารถวางวัตถุเสมือนจริงที่สัมพันธ์กับโลกจริงและหมุด ซึ่งเป็นจุดอ้างอิงเสมือนจริงที่สามารถแนบกับวัตถุหรือสถานที่ในโลกจริง เพื่อให้เนื้อหาเสมือนจริงยังคงอยู่ในตำแหน่งและทิศทางที่ถูกต้องแม้ว่าผู้ใช้จะเคลื่อนที่ไปรอบๆ
Raycasting
เทคนิคที่ใช้ในการระบุจุดตัดระหว่างรังสีเสมือนกับวัตถุหรือเมชโลกในฉาก ซึ่งช่วยอำนวยความสะดวกในการโต้ตอบ เช่น การเลือกและการจัดการองค์ประกอบเสมือน
ความต่อเนื่องของ Anchor
ความสามารถในการบันทึกและกู้คืน Anchor ในเซสชันต่างๆ ซึ่งช่วยให้วางเนื้อหาเสมือนจริงภายในสภาพแวดล้อมได้อย่างสม่ำเสมอและต่อเนื่อง
การติดตามออบเจ็กต์
ความสามารถในการติดตามเมาส์ แป้นพิมพ์ และวัตถุอื่นๆ ในโลกจริง
การติดตามรูปภาพและเครื่องหมาย
ความสามารถในการตรวจจับและติดตามรูปภาพอ้างอิงระนาบและเครื่องหมายทางกายภาพ (เช่น AprilTags และเครื่องหมาย ArUco) ในสภาพแวดล้อม
การติดตามคิวอาร์โค้ด
ความสามารถในการติดตามคิวอาร์โค้ดในสภาพแวดล้อมจริงและถอดรหัสข้อมูล
พื้นผิวที่มีความลึก
การสร้างแผนที่ความลึกซึ่งให้ข้อมูลเกี่ยวกับระยะห่างระหว่างกล้องกับวัตถุในฉาก ทำให้เกิดเอฟเฟกต์การบดบังและการโต้ตอบที่สมจริงยิ่งขึ้น
โปร่ง
ความสามารถในการผสมผสานฟุตเทจจากกล้องในโลกจริงเข้ากับเนื้อหาเสมือนจริง เพื่อสร้างประสบการณ์เทคโนโลยีความจริงแบบผสม (MR) ที่รวมโลกจริงและโลกดิจิทัลเข้าด้วยกันอย่างราบรื่น
การหรี่แสงแบบพาสทรูทั่วโลก
อนุญาตให้แอปพลิเคชันตั้งค่าและค้นหาระดับการหรี่แสงแบบพาสทรูทั่วโลกเพื่อผสมผสานเนื้อหาเสมือนจริงเข้ากับสภาพแวดล้อมจริง และรับเหตุการณ์เมื่อระดับการหรี่แสงเปลี่ยนแปลง
การปรับขอบเขตวิวพอร์ตให้กลมกลืน
แสดงพื้นที่ขอบเขตที่ไล่ขนนกซึ่งใช้โดยรันไทม์เพื่อให้แอปพลิเคชันสามารถจัดวางองค์ประกอบ UI ภายในพื้นที่ปลอดภัยโดยไม่ได้รับผลกระทบจากการไล่ขนนกบริเวณรอบนอก
การสร้างเมชฉาก
ความสามารถในการรับ 3D Mesh ของสภาพแวดล้อม ซึ่งสามารถใช้สำหรับฟิสิกส์ การบดบัง และการโต้ตอบอื่นๆ ที่รับรู้ถึงโลก
การส่งผ่านเลเยอร์องค์ประกอบ
อนุญาตให้ใช้เลเยอร์องค์ประกอบการส่งผ่านรูปหลายเหลี่ยมเพื่อตัดภาพ ซึ่งสามารถใช้เพื่อนำวัตถุในโลกจริงเข้ามาในฉากได้
การติดตามใบหน้า
ความสามารถในการติดตามลักษณะใบหน้าของผู้ใช้จากแหล่งข้อมูลภาพและเสียง ซึ่งช่วยให้สร้างอวาตาร์และตัวละครเสมือนจริงที่สมจริงและแสดงออกได้มากขึ้น
การติดตามดวงตา
ระบุตำแหน่งและทิศทางของดวงตาของผู้ใช้ ซึ่งออกแบบมาเพื่อทำให้การแสดงท่าทางของดวงตาสำหรับอวาตาร์ดูสมจริงยิ่งขึ้น
การติดตามการเคลื่อนไหวของมือ
ความสามารถในการติดตามตำแหน่งและการเคลื่อนไหวของมือผู้ใช้
เมชมือ
แสดงมือของผู้ใช้ได้อย่างถูกต้องในรูปแบบ Low Poly Mesh เพิ่มประสิทธิภาพการนำส่งจากแพลตฟอร์มไปยังแอปพลิเคชันเพื่อให้คุณได้รับประสิทธิภาพที่ดีที่สุด ซึ่งเป็นทางเลือกแทนส่วนขยายอื่นๆ ที่ใช้ท่าผูกและน้ำหนักผสม
ติดตามร่างกาย
ประมาณตำแหน่งและสัดส่วนข้อต่อร่างกายของผู้ใช้โดยใช้ข้อมูลการติดตามศีรษะและมือ
การประมาณแสง
ใช้สำหรับโมเดลแสง (รวมถึงแสงแบบมีทิศทาง แสงแอมเบียนต์ แสงแบบฮาร์มอนิกทรงกลม และแสงแบบคิวบ์แมป) เพื่อให้ตรงกับสภาพแสงในโลกจริงของผู้ใช้

อุปกรณ์อินพุตที่รองรับ

Android XR ยังรองรับอุปกรณ์อินพุตต่อไปนี้ด้วย

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

ฟีเจอร์ด้านประสิทธิภาพที่รองรับ

Android XR รองรับฟีเจอร์ที่เกี่ยวข้องกับประสิทธิภาพต่อไปนี้

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

ดูรายการฟีเจอร์และส่วนขยายที่รองรับทั้งหมดได้ที่ภาพรวมฟีเจอร์ OpenXR

เครื่องมือที่รองรับ

ระบบรองรับเครื่องมือต่อไปนี้สำหรับการพัฒนา OpenXR ด้วย Android XR

Unity

การรองรับ Unity ของ Android XR ซึ่งสร้างขึ้นบน OpenXR ช่วยให้นักพัฒนาแอปสร้างประสบการณ์การใช้งานโดยใช้ Unity 6 ได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างแอป XR ด้วย Unity ในภาพรวมของ Unity

Unreal Engine

Unreal Engine รองรับ Android XR ผ่านมาตรฐาน OpenXR ซึ่งช่วยให้คุณใช้เครื่องมือและเวิร์กโฟลว์มาตรฐานใน Unreal Engine 5 ได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างแอป XR ด้วย Unreal Engine ในภาพรวมของ Unreal Engine

Godot

Godot รองรับ Android XR ผ่านการผสานรวม OpenXR ซึ่งช่วยให้คุณสร้างและส่งออกแอป XR สำหรับ Android โดยใช้เวิร์กโฟลว์ Godot มาตรฐานได้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการสร้างแอป XR ด้วย Godot ในภาพรวมของ Godot


OpenXR™ และโลโก้ OpenXR เป็นเครื่องหมายการค้าของ The Khronos Group Inc. และจดทะเบียนเป็นเครื่องหมายการค้าในจีน สหภาพยุโรป ญี่ปุ่น และสหราชอาณาจักร