มีวิธีรีเซ็ตพื้นผิวที่ตรวจพบ ARCore โดยไม่ทำลายและสร้างสคริปต์เซสชันใหม่หรือไม่

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

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

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


person Robin Herben    schedule 25.03.2019    source แหล่งที่มา


คำตอบ (1)


หากต้องการลบเฉพาะเครื่องบินที่ตรวจพบในฉากของคุณ (โดยไม่ทำลายและสร้าง ArSession ใหม่) ไม่ใช่แนวทางปฏิบัติที่ดีในการใช้ ARCore อีกทางเลือกหนึ่งคือการลบ ArAnchors สิ่งที่ออกแบบมาเพื่อเก็บ Renderables ทั้งหมด แม้ว่าแนวทางที่แข็งแกร่งที่สุดคือการทำลาย ArSession ปัจจุบันและสร้างใหม่อีกครั้ง

ดูปัญหา GitHub #253 สำหรับรายละเอียดเพิ่มเติม: ล้างเครื่องบินและจุดยึด< /ก>.

และ...

ดูโพสต์ StackOverflow วิธีลบเครื่องบินทั้งหมดใน ARCore เพื่อหาข้อมูลเพิ่มเติม

person Andy Fedoroff    schedule 20.04.2019