在Libgdx中设置相机旋转

问题描述 投票:5回答:2

我似乎找不到找到将libgdx(带有box2d的项目)中的正交相机的旋转与box2d主体的旋转联系起来的方法。有cam.rotate(xy)的方法,给它一个脉冲或加速度,但是我想设置一个确定的值,例如

cam.setAngle(player.body.getAngle());

我将如何去做?我必须编写自己的函数吗?如果是这样,那又如何?我希望摄像机的旋转角度始终与播放器的旋转角度相同。

谢谢!

我似乎找不到找到将libgdx(带有box2d的项目)中的正交相机的旋转与box2d主体的旋转联系起来的方法。有cam.rotate(xy)的方法,给它一个脉冲或...

java camera rotation box2d libgdx
2个回答
7
投票

经过一夜安眠后,我刚想到解决方案就醒了!函数cam.angle(angle)显然确实将角度设置为您想要的角度(以度为单位)-但您只能执行一次,而不是在更新循环中进行操作,否则相机将开始旋转。这是显而易见的,但我只是不明白。


0
投票

在Box2D中,角度可以是无限的,如建议的答案所述。但是,用于限制角度的方法效率很低。相反,一种更有效的解决方案将通过以下代码段使用模块化算法:

© www.soinside.com 2019 - 2024. All rights reserved.