iOS Uygulama geliştirme projemden birinde, ne zaman ARSCNView'a bir görünüm atmaya çalışıyorum. App aşağıda donuyor kodum. Aynı durumdan haberdarsanız lütfen uygun bir çözüm öneriniz.Sahne Görünümü Uygulaması Dondurulduğunda Yeni Görünüm Görüntülendiğinde
->sceneView
denetleyicisi basmalı görünümü
let session = ARSession()
var sessionConfig: ARSessionConfiguration = ARWorldTrackingSessionConfiguration()
var use3DOFTracking = false {
didSet {
if use3DOFTracking {
sessionConfig = ARSessionConfiguration()
}
sessionConfig.isLightEstimationEnabled = true
session.run(sessionConfig)
}
}
}
override func viewDidLoad() {
super.viewDidLoad()
self.setupScene()
setupSession()
}
override func viewWillAppear(_ animated: Bool) {
self.tabBarController?.tabBar.isHidden = false
session.run(sessionConfig, options: [.resetTracking, .removeExistingAnchors])
}
override func viewDidDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
session.pause()
}
func setupScene() {
sceneView.delegate = self
sceneView.session = session
sceneView.antialiasingMode = .multisampling4X
sceneView.automaticallyUpdatesLighting = false
sceneView.preferredFramesPerSecond = 60
sceneView.contentScaleFactor = 1.3
//sceneView.showsStatistics = true
enableEnvironmentMapWithIntensity(25.0)
if let camera = sceneView.pointOfView?.camera {
camera.wantsHDR = true
camera.wantsExposureAdaptation = true
camera.exposureOffset = -1
camera.minimumExposure = -1
}
}
func setupSession() {
if let worldSessionConfig = sessionConfig as? ARWorldTrackingSessionConfiguration {
worldSessionConfig.planeDetection = .horizontal
session.run(worldSessionConfig, options: [.resetTracking, .removeExistingAnchors])
}
}
Ne kadar kazanıyorsunuz? Donurken hangi fonksiyondasınız? SceneView'ın yukarısındaki diğer görünümleri itmeye veya sunmaya çalışıyorum her zaman –
. push görünümünün başarılı ve tüm uygulamaların dondurulacağı anlamına gelir. – imjaydeep
Bir istisna kesme noktası belirleyin ve bize hangi hattın dondurulduğunu gösterin. –