I'm trying to understand the difference between the different element introduced in ArKit and their maybe equivalents in SceneKit:
SCNNode.simdTransformvsSCNNode.transform. In ARKit, it seems that people useSCNNode.simdTransforminstead ofSCNNode.transform. How do they differ? simdTransform seems to use column major order, while transform (SCNMatrix4) is row major. How do I convert one to the other? Just transpose? I've the impression that the tracking doesn't work as well if I usetransforminstead ofsimdTransform. Is that expected or just an impression? If I set one property, what happens if I then set the other one?ARFrame.cameravsScene.pointOfView: Looking at their transforms, they seem to be a bit different:
.
// ARFrame.camera.transform (matrix_float4x4)
-0.01 0.99  -0.11 0.02
-0.99 0.00  0.11  0.06
0.10  0.11  0.98  0.0
0.0   0.0   0.0   1.0
// sceneView.pointOfView.transform (SCNMatrix4)
// or sceneView.pointOfView.simdTransform^T (matrix_float4x4)
0.99  0     0.11   0
0.01  0.99  -0.12  0
-0.11 0.11  0.98   0
0.03  0.6   0.0    0.99
Are they the same minus one rotation?