simd matrix_linear_combination 在 iOS11 中去了哪里?
Where has simd matrix_linear_combination been gone in iOS11?
let m = matrix_linear_combination(alpha, v1, 1-alpha, v0)
matrix_linear_combination 现在生成 "Use of unresolved identifier 'matrix_linear_combination'" 错误。
有任何现有的替代品吗?
PS : 我应该澄清一下我已经导入了 simd 并且在 iOS10/Swift 3).
中没有问题吗
简答: iOS 11/macOS 10.13 SDK 重命名了许多 simd 类型和函数,
前缀 matrix_
替换为 simd_
.
更长的答案:
Xcode 8 使用 iOS 10.3(resp. macOS 10.12)SDK,它定义了
simd 矩阵类型为
typedef struct { vector_float2 columns[2]; } matrix_float2x2;
和函数
static matrix_float2x2 __SIMD_ATTRIBUTES__ matrix_linear_combination(float __a, matrix_float2x2 __x, float __b, matrix_float2x2 __y);
这些被导入到Swift 3 as
public struct matrix_float2x2 { ... }
// ...
和
public func matrix_linear_combination(_ __a: Float, _ __x: matrix_float2x2, _ __b: Float, _ __y: matrix_float2x2) -> matrix_float2x2
// ...
Xcode 9 使用 iOS 11 (resp. macOS 10.13) SDK 并定义了
类型为
typedef struct { simd_float2 columns[2]; } simd_float2x2;
// ...
和函数
static simd_float2x2 SIMD_CFUNC simd_linear_combination(float __a, simd_float2x2 __x, float __b, simd_float2x2 __y);
// ...
这些被导入到Swift 4 as
public struct simd_float2x2 { ... }
// ...
和
public func simd_linear_combination(_ __a: Float, _ __x: simd_float2x2, _ __b: Float, _ __y: simd_float2x2) -> simd_float2x2
// ...
let m = matrix_linear_combination(alpha, v1, 1-alpha, v0)
matrix_linear_combination 现在生成 "Use of unresolved identifier 'matrix_linear_combination'" 错误。
有任何现有的替代品吗?
PS : 我应该澄清一下我已经导入了 simd 并且在 iOS10/Swift 3).
中没有问题吗简答: iOS 11/macOS 10.13 SDK 重命名了许多 simd 类型和函数,
前缀 matrix_
替换为 simd_
.
更长的答案:
Xcode 8 使用 iOS 10.3(resp. macOS 10.12)SDK,它定义了 simd 矩阵类型为
typedef struct { vector_float2 columns[2]; } matrix_float2x2;
和函数
static matrix_float2x2 __SIMD_ATTRIBUTES__ matrix_linear_combination(float __a, matrix_float2x2 __x, float __b, matrix_float2x2 __y);
这些被导入到Swift 3 as
public struct matrix_float2x2 { ... }
// ...
和
public func matrix_linear_combination(_ __a: Float, _ __x: matrix_float2x2, _ __b: Float, _ __y: matrix_float2x2) -> matrix_float2x2
// ...
Xcode 9 使用 iOS 11 (resp. macOS 10.13) SDK 并定义了 类型为
typedef struct { simd_float2 columns[2]; } simd_float2x2;
// ...
和函数
static simd_float2x2 SIMD_CFUNC simd_linear_combination(float __a, simd_float2x2 __x, float __b, simd_float2x2 __y);
// ...
这些被导入到Swift 4 as
public struct simd_float2x2 { ... }
// ...
和
public func simd_linear_combination(_ __a: Float, _ __x: simd_float2x2, _ __b: Float, _ __y: simd_float2x2) -> simd_float2x2
// ...