我用一个简单的平台游戏制作了几个关卡,其中一种机制是在触发某些东西时(动画化)一次将整个关卡旋转90度(动画)(关卡,而不是玩家) ,尽管我找不到任何解释方法的资料,所以我一直认为用Tiled软件制作的地图是不可能的,所以我可能需要寻找其他地方。有什么办法可以做到这一点?如果您能向我解释一下,或者甚至向我指出正确的方向,我将不胜感激。
感谢您的时间:D(如果需要进一步说明,请告诉我)
答案 0 :(得分:1)
我假设您使用OrthogonalTiledMapRenderer
来渲染TileMap
,如果这样,则可以在渲染前使用rotate
上的OrthographicCamera
方法进行旋转。
例如
public class YourGameClass implements Screen {
private final TiledMap map;
private final OrthogonalTiledMapRenderer mapRenderer;
private final OrthographicCamera camera;
@Override
public void render (float delta) {
camera.rotate(1.0f * delta); // Rotate a little on every update (you'll want to control this a bit more)
camera.update();
mapRenderer.setView(camera);
mapRenderer.render();
}
}
所以基本上您不旋转地图,而是旋转查看地图的相机。
答案 1 :(得分:1)
您必须做两件事
1。旋转相机
2。根据您的相机旋转来更改重力方向 下面的渲染方法代码:
//camera rotation
gamecam.rotate(2f*dt);
//update gravity direction
gavityDirection.x-=0.5f*dt;
gavityDirection.y+=0.5f*dt;
//set required gravity
world.setGravity(gavityDirection);