Unity3D 相同的 Matrix4x4 不同的欧拉

问题描述

我有使用欧拉角的脚本,它在 Windows PC 和 Android 设备上的表现不同。

我有相同的 Matrix4x4 作为输入,但欧拉角不一样。

测试代码:

var matrix = new Matrix4x4(
    new Vector4(-1,0),new Vector4(0,1,1)
);

var eulers = matrix.rotation.eulerAngles;

euler 在 Windows 设备上的内容是 (0,180,-5.12263832E-05),我认为这是正确的,但在 Android 设备上它是 (309.394653,318.791473,256.987244)

这显然弄乱了我的代码。您知道如何“标准化”这些结果,以便两个欧拉都相同吗?

矩阵由 Tilemap.GetTransformMatrix(Vector3Int position) 返回,应表示瓷砖的方向。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)