พัฒนาด้วย Unreal Engine สำหรับ Android XR

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

การรองรับการพัฒนา XR ของ Unreal Engine สร้างขึ้นตามมาตรฐาน OpenXR ซึ่งช่วยให้มั่นใจได้ว่า Unreal จะรองรับฟีเจอร์ OpenXR ที่รองรับสำหรับ Android XR โดยค่าเริ่มต้น

ทำตามคำแนะนำนี้เพื่อดูข้อมูลเกี่ยวกับสิ่งต่อไปนี้

  • การรองรับ Unreal Engine สำหรับ Android XR
    • พื้นฐาน XR ของ Unreal Engine
    • การพัฒนาและเผยแพร่แอปสำหรับ Android XR
    • ปลั๊กอิน Unreal Engine สำหรับ Android XR
    • การขอรับความช่วยเหลือ
  • การป้อนข้อมูลและการโต้ตอบ
  • นามสกุลที่รองรับ

การรองรับ Unreal Engine สำหรับ Android XR

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

ข้อมูลเบื้องต้นเกี่ยวกับ XR ของ Unreal Engine

หากคุณเพิ่งเริ่มใช้ Unreal หรือการพัฒนา XR โปรดดูเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์ด้าน XR ของ Unreal เพื่อทำความเข้าใจแนวคิดและเวิร์กโฟลว์พื้นฐาน ต่อไปนี้คือส่วนสำคัญบางส่วนที่ควรสำรวจ

พัฒนาและเผยแพร่แอปสำหรับ Android

Unreal Engine มีเอกสารประกอบที่ครอบคลุมสำหรับการพัฒนา การสร้าง และการเผยแพร่สำหรับ Android เอกสารประกอบนี้ครอบคลุมการจัดการสิทธิ์ Android ภายใน Engine, การกำหนดค่า Android Build Settings (ผ่าน การตั้งค่าโปรเจ็กต์ > Platforms > Android) และการใช้ Unreal Automation Tool (UAT)

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

ปลั๊กอิน Unreal Engine สำหรับ Android XR

มีปลั๊กอินหลัก 2 รายการที่รองรับการสร้างแอป Unreal สำหรับ Android XR ปลั๊กอินเหล่านี้จะจัดการผ่านเมนูปลั๊กอิน (แก้ไข > ปลั๊กอิน)

ปลั๊กอิน Android XR OpenXR

ปลั๊กอิน Android XR OpenXR เป็นอินเทอร์เฟซเครื่องมือหลักที่เพิ่มการรองรับ Android XR ลงใน Unreal โดยจะใช้ส่วนขยาย OpenXR ที่จำเป็นสำหรับการติดตามเชิงพื้นที่ ความเข้าใจด้านสภาพแวดล้อม และการรับรู้ ดูวิธีเพิ่มและกำหนดค่าปลั๊กอินนี้ได้ที่เอกสารประกอบ Unreal Engine OpenXR

ส่วนขยาย Android XR สำหรับ Unreal

ส่วนขยาย Android XR สำหรับ Unreal (v1.1.0 ซึ่งรองรับ Unreal Engine 5.6.x และ 5.8.x) จะเสริมการรองรับ OpenXR พื้นฐาน รวมถึงฟีเจอร์เพิ่มเติมเพื่อช่วยคุณสร้างประสบการณ์ที่สมจริง เช่น เอนทิตีเชิงพื้นที่, การเรย์แคสต์เชิงพื้นที่และเชิงลึก, การเฟดขอบของวิวพอร์ต, คิวบ์แมปการประมาณแสง, ข้อมูลเมชมือขั้นสูง และการเพิ่มประสิทธิภาพฮาร์ดแวร์ที่เฉพาะเจาะจง หากต้องการดูวิธีนำเข้าและกำหนดค่าแพ็กเกจนี้ ให้ทำตามคู่มือเริ่มใช้งานฉบับย่อของส่วนขยาย Android XR หรือดูเอกสารอ้างอิง API ของส่วนขยาย Android XR สำหรับ Unreal

รับการสนับสนุน

หากพบปัญหา โปรดดูส่วนการสนับสนุนสำหรับ Unreal Engine ในหน้าการสนับสนุนเพื่อขอความช่วยเหลือ

การป้อนข้อมูลและการโต้ตอบ

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

ดูคำแนะนำที่ครอบคลุมเกี่ยวกับการสร้างกลไกเหล่านี้ได้ในเอกสารประกอบของ Unreal Engine เกี่ยวกับการสร้างประสบการณ์ XR แบบอินเทอร์แอกทีฟ

Android XR รองรับวิธีการโต้ตอบที่เฉพาะเจาะจงต่อไปนี้ภายใน Unreal Engine

โปรไฟล์การโต้ตอบ

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

การโต้ตอบด้วยมือ

การโต้ตอบด้วยมือจะแสดงผ่านส่วนขยายการติดตามการเคลื่อนไหวของมือ OpenXR คุณสามารถเข้าถึงข้อมูลข้อต่อมือและท่าทางต่างๆ ผ่านคอมโพเนนต์การติดตาม XR ใน Blueprints หรือ C++

การโต้ตอบด้วยการจ้องด้วยตา

คุณสามารถดึงข้อมูลการจ้องมองเป็นท่าทางอินพุตมาตรฐานได้ ซึ่งจะช่วยให้คุณควบคุมการโฟกัส UI หรือฟีเจอร์การแสดงตนในโซเชียลได้ การดำเนินการนี้ต้องมีสิทธิ์ android.permission.EYE_TRACKING_FINE

การติดตามใบหน้า

เข้าถึงข้อมูลการแสดงสีหน้าแบบเรียลไทม์เพื่อสร้างภาพเคลื่อนไหวให้อวาตาร์หรือขับเคลื่อนการโต้ตอบทางสังคม ซึ่งใช้นามสกุล XR_ANDROID_face_tracking

นามสกุลที่รองรับ

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

ฟีเจอร์หรือความสามารถ สตริงส่วนขยาย OpenXR จัดหาโดย

Device Anchor Persistence

XR_ANDROID_device_anchor_persistence

Android XR Extensions สำหรับ Unreal (v1.0.0)

Raycast

XR_ANDROID_raycast

Android XR Extensions สำหรับ Unreal (v1.0.0)

สิ่งที่ติดตามได้ (ระนาบ/ความลึก)

XR_ANDROID_trackables

Android XR Extensions สำหรับ Unreal (v1.0.0)

การติดตามวัตถุ

XR_ANDROID_trackables_object

Android XR Extensions สำหรับ Unreal (v1.0.0)

การสร้างเมชฉาก

XR_ANDROID_scene_meshing

Android XR Extensions สำหรับ Unreal (v1.0.0)

การติดตามใบหน้า

XR_ANDROID_face_tracking

Android XR Extensions สำหรับ Unreal (v1.0.0)

การติดตามดวงตา

XR_ANDROID_eye_tracking

Android XR Extensions สำหรับ Unreal (v1.0.0)

สถานะกล้องแบบส่งผ่าน

XR_ANDROID_passthrough_camera_state

Android XR Extensions สำหรับ Unreal (v1.0.0)

เลเยอร์ Mesh แบบส่งผ่าน

XR_ANDROID_composition_layer_passthrough_mesh

Android XR Extensions สำหรับ Unreal (v1.0.0)

พื้นผิวความลึก

XR_ANDROID_depth_texture

Android XR Extensions สำหรับ Unreal (v1.0.0)

การประมาณแสง

XR_ANDROID_light_estimation

Android XR Extensions สำหรับ Unreal (v1.0.0)

Cubemap การประมาณแสง

XR_ANDROID_light_estimation_cubemap

Android XR Extensions สำหรับ Unreal (v1.1.0)

เมตริกประสิทธิภาพ

XR_ANDROID_performance_metrics

Android XR Extensions สำหรับ Unreal (v1.0.0)

วิธีแก้ปัญหาที่แนะนำ

XR_ANDROID_recommended_resolution

Android XR Extensions สำหรับ Unreal (v1.0.0)

การโต้ตอบด้วยมือ

XR_EXT_hand_interaction

Android XR Extensions สำหรับ Unreal (v1.0.0)

Debug Utils

XR_EXT_debug_utils

Unreal Native OpenXR

การตั้งค่าประสิทธิภาพ

XR_EXT_performance_settings

Unreal Native OpenXR

อัตราการรีเฟรชจอแสดงผล

XR_FB_display_refresh_rate

Unreal Native OpenXR

Hand Tracking Mesh

XR_FB_hand_tracking_mesh

Android XR Extensions สำหรับ Unreal (v1.0.0)

Space Warp

XR_FB_space_warp

Unreal Native OpenXR

เลเยอร์องค์ประกอบ Equirect2

XR_KHR_composition_layer_equirect2

Unreal Native OpenXR

การตั้งค่า Thread ใน Android

XR_KHR_android_thread_settings

Unreal Native OpenXR

การหรี่แสงแบบพาสทรูทั่วโลก

XR_ANDROID_global_passthrough_dimming

Android XR Extensions สำหรับ Unreal (v1.0.0)

พร็อพเพอร์ตี้ส่วนขยายระบบ

XR_ANDROID_enumerate_system_extension_properties

Android XR Extensions สำหรับ Unreal (v1.0.0)

เอนทิตีเชิงพื้นที่

XR_EXT_spatial_entity

Android XR Extensions สำหรับ Unreal (v1.0.0)

การติดตามระนาบเชิงพื้นที่

XR_EXT_spatial_plane_tracking

Android XR Extensions สำหรับ Unreal (v1.0.0)

การติดตามเครื่องหมายเชิงพื้นที่

XR_EXT_spatial_marker_tracking

Android XR Extensions สำหรับ Unreal (v1.0.0)

Spatial Anchors และความคงอยู่

XR_EXT_spatial_anchor, XR_EXT_spatial_persistence

Android XR Extensions สำหรับ Unreal (v1.0.0)

Viewport Feathering

XR_ANDROID_viewport_feathering

Android XR Extensions สำหรับ Unreal (v1.1.0)

การสำรวจเชิงพื้นที่และ Depth Raycast

XR_ANDROID_spatial_discovery_raycast

Android XR Extensions สำหรับ Unreal (v1.1.0)

ส่วนขยายมาจากแหล่งที่มาต่อไปนี้

  • ส่วนขยาย Android XR สำหรับ Unreal: ส่วนขยายเหล่านี้เป็นส่วนขยายเฉพาะของ Google (ANDROID) และส่วนขยายเอนทิตีเชิงมิติพื้นที่ (EXT) ที่พัฒนาขึ้นสำหรับแพลตฟอร์ม Android XR หากต้องการใช้ความสามารถเชิงมิติเหล่านี้ ให้ติดตั้งและเปิดใช้ปลั๊กอินส่วนขยาย Android XR ใน .uproject และดูเอกสารอ้างอิง API ของส่วนขยาย Android XR สำหรับ Unreal เพื่อดูการใช้งาน Blueprint และ C++
  • Unreal Native OpenXR: ฟีเจอร์เหล่านี้ใช้ประโยชน์จากส่วนขยายมาตรฐาน Khronos (KHR), Extension (EXT) และ Meta (FB) ที่ผสานรวมและดูแลรักษาโดยตรงภายในปลั๊กอิน OpenXR หลักของ Unreal Engine อยู่แล้ว