Unity3d 如何将Valve.VR.HmdMatrix34\u t转换为UnityEngine.Transform

Unity3d 如何将Valve.VR.HmdMatrix34\u t转换为UnityEngine.Transform,unity3d,steamvr,Unity3d,Steamvr,我正试图通过这个错误 无法从“Valve.VR.hmdMatrix”转换为“UnityEngine.Transform” 导入MixCast SDK时。有人知道怎么投吗 'Valve.VR.hmdMatrix X34_t to'UnityEngine.Transform?'? 我看过struct,它对我没有多大帮助 因此,问题是在哪里可以找到有关HMDMatrix 34_t结构的详细信息,以便能够将其转换为Unity变换 另外,关于结构的信息很有价值,可以作为我的起点,但我会为一个代码示例定价,

我正试图通过这个错误 无法从“Valve.VR.hmdMatrix”转换为“UnityEngine.Transform” 导入MixCast SDK时。有人知道怎么投吗 'Valve.VR.hmdMatrix X34_t to'UnityEngine.Transform?'? 我看过struct,它对我没有多大帮助

因此,问题是在哪里可以找到有关HMDMatrix 34_t结构的详细信息,以便能够将其转换为Unity变换


另外,关于结构的信息很有价值,可以作为我的起点,但我会为一个代码示例定价,在这里我可以看到如何提取位置、旋转和缩放(或完整变换)的单位矢量3。

变换矩阵是4x4数组,但实际使用的是其中的3x4。这就是阀门的功能(t代表“类型”,它是一个C的东西)。只需将
HmdMatrix
中的单元格值注入Unity
Matrix4x4
的前三行(或列,我总是混淆优先级),然后将其分配给您的
变换


您可能会出错的地方是理解
HmdMatrix
在场景图中的位置,以及是否直接应用它或使用它的逆矩阵

如果问题是
在哪里可以找到详细信息…
不幸的是,这里没有主题。如果你在文档中找不到这些信息,那么其他人应该怎么做?@derHugo true,但可能有人已经使用了这些代码,并且知道这些代码是如何构造的。这些类型的结构不是一夜之间发明的,它们继承了opengl、directx或任何其他框架中的旧结构。