簡體   English   中英

ARCore 有沒有像 ARKit 那樣的 session 委托方法?

[英]Does ARCore have session's delegate methods like ARKit has?

在 ARKit 中有一個ARSessionDelegate協議,它有 4 個主要方法,您可以實現從 AR 會話接收捕獲的視頻幀圖像和跟蹤狀態。

ARCore API 是否有類似的協議(接口)和類似的方法?

override func viewDidLoad() {  
    super.viewDidLoad()
    sceneView.session.delegate = self       // ARSessionDelegate? protocol
}
  1. 此方法向委托提供新捕獲的 ARCamera 圖像和隨附的 AR 信息:
func session(ARSession, didUpdate: ARFrame) { ... }
  1. 此方法告訴委托一個或多個 ARAnchor 已添加到會話中:
func session(ARSession, didAdd: [ARAnchor]) { ... }
  1. 這個方法告訴委托 ARSession 已經調整了一個或多個 ARAnchor 的屬性:
func session(ARSession, didUpdate: [ARAnchor]) { ... }
  1. 此方法告訴委托一個或多個 ARAnchor 已從 ARSession 中刪除:
func session(ARSession, didRemove: [ARAnchor]) { ... }

如果 ARCore 中存在類似的方法(甚至不是全部),請向我展示它們使用 Kotlin 代碼的樣子。

任何幫助表示贊賞。

在瀏覽了 ARCore 文檔后,我發現了至少兩種類似的方法:

第一:此方法用於接收新的相機幀,更新設備的位置,更新跟蹤錨點的位置,更新檢測到的平面等。

ArStatus ArSession_update(ArSession *session, ArFrame *out_frame)

第二:此方法定義了物理世界中的跟蹤位置:

ArStatus ArSession_acquireNewAnchor(ArSession *session, const ArPose *pose, ArAnchor **out_anchor)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM