unity3d - 将 4x4 RH 变换矩阵转换为 LH(Unity)变换矩阵
问题描述
我有一个 PLMXML 文档(Siemens NX/JT2Go),其中包含各种模型的各种 4x4 转换矩阵,其坐标系为:
Right Handed
negative X forward
positive Z up
positive y right
我想通过转换它们各自的转换矩阵将模型导入 Unity。
我在很多地方都读过轴可以交换,这应该是可行的。我的矩阵知识至少可以说是生疏的,但知道以下矩阵应该给我我需要的基础变化:
| 0 1 0 0 |
| 0 0 1 0 | = rhsToLhs
|-1 0 0 0 |
| 0 0 0 1 |
使用以下乘法:
unityTransform = rhsToLhs * PLMTransform * rhsToLhs;
但这不起作用。
我的问题是,我应该采取哪些步骤来正确执行此操作?
我不知道 PLMXML 的旋转矩阵放在一起的顺序,所以我认为我不能只从转换矩阵中提取它并使用上述矩阵的 3x3 版本对其进行操作。
正如我所说,我对矩阵很生疏,如果有人能把我推向正确的方向,我会非常感激。
谢谢阅读。
解决方案
推荐阅读
- c++ - 多态 C++:将子对象按值传递给接受父对象的函数
- c++ - C++ 避免动态内存分配
- c - 为什么我会抛出未处理的异常:读取访问冲突
- swift - 为什么在 Swift 中两个不同的数组字面量彼此相等?
- python - 有没有办法从嵌套字典中访问一个值并根据搜索列表更新同一个字典中的值?
- r - 在 R 中以 3D 形式绘制单纯形
- arrays - 2D VBA 数组的移位元素
- amazon-web-services - 如何编写 terraform 代码来为过多的数据库连接创建 aws_cloudwatch_metric_alarm?
- javascript - 在 React Native v.5 中导航离开某个屏幕时,如何隐藏底部选项卡导航器?
- r - 改变 R 中 svars 包生成的 ggplot 中的美学