Hello.
I now implement video display from image detection. I'm worried there.
I'm looking for this movement of ARImageTrackingConfiguration.
2019-11-28 17:45:00.645012+0900 arkitVideo[6100:3600050] Metal GPU Frame Capture Enabled
2019-11-28 17:45:00.645430+0900 arkitVideo[6100:3600050] Metal API Validation Enabled
####### isTracked= true
####### isTracked= true
####### isTracked= true
####### isTracked= true
####### isTracked= true
####### isTracked= true
####### isTracked= false
However, ARWorldTrackingConfiguration will be like this.
2019-11-28 17:52:19.918561+0900 arkitVideo[6201:3602382] Metal GPU Frame Capture Enabled
2019-11-28 17:52:19.918803+0900 arkitVideo[6201:3602382] Metal API Validation Enabled
####### isTracked= true
####### isTracked= false
####### isTracked= true
####### isTracked= false
####### isTracked= true
####### isTracked= false
I want to get movement like ARImageTrackingConfiguration with ARWorldTrackingConfiguration.
Because we want to detect both floor and image recognition with ARWorldTrackingConfiguration.
I have attached the code.
import UIKit
import SceneKit
import ARKit
class ViewController: UIViewController, ARSCNViewDelegate {
@IBOutlet var sceneView: ARSCNView!
override func viewDidLoad() {
super.viewDidLoad()
// Set the view's delegate
sceneView.delegate = self
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let configuration = ARWorldTrackingConfiguration()
// let configuration = ARImageTrackingConfiguration()
if let trackedImages = ARReferenceImage.referenceImages(inGroupNamed: "AR Resources", bundle: nil) {
configuration.detectionImages = trackedImages
// configuration.trackingImages = trackedImages
}
sceneView.session.run(configuration)
}
func renderer(_ renderer: SCNSceneRenderer, didAdd node: SCNNode, for anchor: ARAnchor) {
// guard let imageAnchor = anchor as? ARImageAnchor else {
// return
// }
}
func renderer(_ renderer: SCNSceneRenderer, didUpdate node: SCNNode, for anchor: ARAnchor) {
guard let imageAnchor = anchor as? ARImageAnchor else {fatalError()}
print("####### isTracked= \(imageAnchor.isTracked)")
if imageAnchor.isTracked{
}else{
}
}
}
Please give me a reply.