TLDR:我想旋转相机但是渲染精灵的世界位置而非相机位置。
你好
我目前正在使用LibGDX,并且在相机/对象旋转方面遇到了一个问题。
假设我的相机旋转为0,相机中心左侧有一个物体(精灵)。
即。 Camera Normal (0 degrees rotation)
当给定标准世界坐标时,精灵呈现正常,但是一旦我旋转相机,该世界坐标就会与相机的新(x,y)值不同。
如果我然后将相机平滑地向右旋转90度(顺时针方向使得向上方向朝向右侧,如下图所示),那么左边的对象(精灵)应该模拟左边关于相机的旋转(旋转通过相机进行,精灵只需更新位置),现在低于相机的中心点。
即。 Camera Rotated (90 degrees clockwise)
我对如何在平滑旋转期间计算精灵的新位置/位置感到困惑。
干杯, 独奏家。
答案 0 :(得分:0)
在找到解决这个问题的地方三周之后,我只需要调用这个方法
batch.setProjectionMatrix(camera.combined);
为了将精灵更新到他们关于更改相机旋转的新位置。
此链接here说明了投影矩阵的工作原理。