gpt4 book ai didi

metal - 是否有 Metal 库函数来创建 simd 旋转矩阵?

转载 作者:行者123 更新时间:2023-12-01 07:39:49 36 4
gpt4 key购买 nike

Apple 系统中似乎至少有六个矩阵库。其中之一是 simd 库,其类型在 CPU 和 GPU 代码中的工作方式相同。

import simd
let mat = float3x3(...)
let vec = float3(...)
mat * vec

我无法找到它的文档。与大多数东西不同,它不会出现在 Xcode 的文档浏览器中。我知道另一个库 (GLKit) 具有矩阵类型,这些类型具有构建旋转矩阵的功能。例如,

GLKMatrix3MakeXRotation(radians)
GLKMatrix3RotateY(mat, radians)

simd 矩阵类型有类似的功能吗?

最佳答案

你可以通过simd_quat。四元数有 simple connection到角轴表示。 SIMD库可以从角度轴构造一个四元数,还有一个函数可以从一个四元数构造一个float3x3。 (这是 C++,但同样的想法应该适用于 Swift)。

inline float3x3 MakeRotation(float radians, float x, float y, float z) {
simd_quatf quat = simd_quaternion(radians, (simd_float3){x, y, z});
return simd_matrix3x3(quat);
}

关于metal - 是否有 Metal 库函数来创建 simd 旋转矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49601997/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com