我试图了解 ArKit 中引入的不同元素与 SceneKit 中它们可能的等价物之间的区别:
SCNNode.simdTransform
与SCNNode.transform
。在 ARKit 中,似乎人们使用SCNNode.simdTransform
而不是SCNNode.transform
. 它们有何不同?simdTransform 似乎使用列主要顺序,而变换(SCNMatrix4)是行主要顺序。如何将一种转换为另一种?只是转置?我的印象是,如果我使用transform
而不是simdTransform
. 这是预期的还是只是印象?如果我设置了一个属性,如果我再设置另一个属性会怎样?ARFrame.camera
vsScene.pointOfView
:看看他们的转换,他们似乎有点不同:
.
// 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
它们是相同的减去一圈吗?