为什么libgdx新版本使用磁贴单元来设置摄像头的位置?

时间:2014-06-11 08:35:37

标签: java libgdx

我正在尝试新版 libgdx 0.9.8 - > 1.0.1。

我使用了tilemap和 OrthographicCamera OrthogonalTiledMapRenderer

这是我的相机实现:

map = tileMapHelper.getMap();
renderer = new OrthogonalTiledMapRenderer(map, 1/128f);
camera = new OrthographicCamera(width, height);
camera.setToOrtho(false, 5, (float)(height/128f));

因此,当我尝试向上移动相机(仅2个像素)时,我这样做:

camera.position.set(camera.position.x, camera.position.y + 2, 0);

不幸的是,此操作向上移动了相机2个瓷砖。

如何仅用像素移动相机?

感谢。

1 个答案:

答案 0 :(得分:0)

通过将1 / 128f的unitScale传递给渲染器,并使用5 x(高度/ 128f)的摄像机视口,您告诉libgdx您希望摄像机单元是平铺而不是像素。

要么不使用相机和地图渲染器的平铺尺寸,要么将所有像素值除以128f,以将它们转换为平铺单位。