如何解决如何在 libgdx 中首先缩放然后旋转模型实例
我需要在 y 轴上缩放模型实例(1x1x1 qube),然后围绕 z 轴旋转它。 所以基本上它应该看起来像一个在中间旋转的光束。 不幸的是,无论我做什么,旋转总是在缩放之前执行,结果是一个漂亮的形状。 what I get and what I want
instance.transform.setToScaling(JUMP_GATE_SIZE,JUMP_GATE_SIZE * 5,JUMP_GATE_HIGHT);
instance.transform.setTranslation(x,y,0);
rotationMatrix.setToRotation(zVector,r);
instance.transform.rotate(rotation);
知道怎么做吗? 我正在尝试将立方体缩放到空间中 2 个位置之间的新娘。
解决方法
解决方案是由我的妻子找到的,她是一名数学家。 矩阵运算的顺序是关键。在绘制操作期间,基本上所有应用的矩阵操作都反向应用于模型。 这意味着因为我最后对矩阵执行旋转操作,所以它实际上首先应用于模型。 有效的代码
instance.transform.setToRotation(zVector,r);
instance.transform.scale(JUMP_GATE_SIZE,JUMP_GATE_SIZE * 5,JUMP_GATE_HIGHT);
instance.transform.setTranslation(x,y,0);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。