无法调用类型 'SCNMatrix4' 的初始值设定项
Cannot invoke initializer for type 'SCNMatrix4'
我正在处理 ARKit
并尝试初始化 SCNMatrix
但它抛出以下错误:
代码片段:
if let frame = self.sceneView.session.currentFrame {
let mat = SCNMatrix4(frame.camera.transform)
return (dir, pos)
}
错误:
Cannot invoke initializer for type ‘SCNMatrix4’ with an argument list
of type ‘(matrix_float4x4)’ Overloads for ‘SCNMatrix4’ exist with
these partially matching parameter lists: (float4x4), (double4x4)
有人遇到过类似的问题吗?
您使用的是旧 Xcode 测试版。 Swift SIMD 矩阵类型的桥接在 Xcode 9.0 beta 2 中发生了变化。(截至撰写本文时,beta 3 是最新的。)
经过上述更改,matrix_float_4x4
和 float4x4
是同一类型,因此您的代码应该可以正常工作。
我正在处理 ARKit
并尝试初始化 SCNMatrix
但它抛出以下错误:
代码片段:
if let frame = self.sceneView.session.currentFrame {
let mat = SCNMatrix4(frame.camera.transform)
return (dir, pos)
}
错误:
Cannot invoke initializer for type ‘SCNMatrix4’ with an argument list of type ‘(matrix_float4x4)’ Overloads for ‘SCNMatrix4’ exist with these partially matching parameter lists: (float4x4), (double4x4)
有人遇到过类似的问题吗?
您使用的是旧 Xcode 测试版。 Swift SIMD 矩阵类型的桥接在 Xcode 9.0 beta 2 中发生了变化。(截至撰写本文时,beta 3 是最新的。)
经过上述更改,matrix_float_4x4
和 float4x4
是同一类型,因此您的代码应该可以正常工作。