我希望能够告诉服务器我的模型的方向,以便它可以反过来将其发送回所有其他玩家。但是通过共享内存获取值(最坏情况下取字节值,最好情况下取整数)。
有没有一种数学方法可以检查我的模型的旋转,将其转换为偏离默认值的度数,然后将该 1-360 度值发送到服务器,而不是尝试发送整个矩阵结构的 16 个浮点值?
发送 16 个花车让我获得了 120 个与所有相关玩家的额外共享内存文件。不是真正的最佳实践。有什么见解吗?
最佳答案
将旋转矩阵转换为四元数是否可行? 这将从发送整个矩阵减少到发送单个向量并围绕该向量旋转。
XNA 有一个四元数结构 ( http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.quaternion.aspx ),其中包含方法:Quaternion.CreateFromRotationMatrix,它采用旋转矩阵。
这将生成 ijk 四元数,其中 W 分量作为围绕该轴的旋转 theta。
关于c# - 发送矩阵的方向...转换为度数?弧度?没有小数点的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5671920/