首页 > 解决方案 > 无法使用 USDZ 甲酸盐模型处理 arkit 中的移动手势

问题描述

我在 arkit(不是 QLPreviewController)中加载 usdz 模型,然后我添加了在现实世界中旋转、移动和缩放的手势,它对 .obj 模型工作正常,但对 usdz 模型工作不正常。

我试过SCNTransaction它不工作,

CGPoint translation = [recognizer translationInView:self.viewController.sceneView];
                SCNVector3 pPoint = [self.viewController.sceneView projectPoint:self.movedObject.position];
                CGPoint previousPosition = CGPointMake(pPoint.x, pPoint.y);
                NSLog(@"%f \n %f",pPoint.y,translation.y);
                CGPoint currentPosition = CGPointMake(previousPosition.x + translation.x , previousPosition.y + translation.y);
                ARHitTestResult * hitResults = [self.FSVC smartHitTest:currentPosition];
                simd_float3 translation1 = [self.FSVC getTrans:hitResults];
                self.movedObject.simdPosition = translation1;
                NSLog(@"%f",translation.y);
                [recognizer setTranslation:CGPointZero inView:self.viewController.sceneView];

我想为任何类型的模型添加arkit高精度的手势。

提前致谢。

标签: iosobjective-cswiftarkitscnnode

解决方案


推荐阅读