我正在通过将用户的当前触摸位置“取消投影”到以我的对象的原点为中心并指向其的无限平面上来处理AR应用程序中的对象拖动:
self.sceneView.unprojectPoint(touchLocation, ontoPlane: objectNode.simdWorldTransform)
当对象已经以角度(0,0,0)定向时(即,如果将对象放置在水平面上),这可以很好地工作。但是,如果将对象放置在垂直平面上,则其方向会有所不同,并导致拖动结果不正确。
因此,我需要创建一个相对于原点的角度为(0,0,0)的变换,该变换与对象的实际世界变换在同一位置,以传递给unproject函数。我的线性代数非常生锈,我该怎么做?