我在 Libgdx github repo 上查看了SuperKaolio示例。它基本上是一个将 Tiled 地图与 Libgdx 集成的测试。他们使用单位比例 1/16,如果我理解正确,这意味着世界不再基于像素网格,而是基于单位网格(每个 16 像素宽)。这是示例中的代码和注释:
// load the map, set the unit scale to 1/16 (1 unit == 16 pixels)
map = new TmxMapLoader().load("data/maps/tiled/super-koalio/level1.tmx");
renderer = new OrthogonalTiledMapRenderer(map, 1 / 16f);
我基本上想知道你为什么要这样做。我只是遇到了问题,看不到任何明显的优势。
例如,我遇到的一个问题是添加 BitMap 字体。它根本没有随着背景缩放,字体中的一个像素占据了整个单位。图片在这里。
我正在使用此代码来绘制字体。这是 libgdx 中包含的标准 14 点 arial 字体
BitmapFont font = new BitmapFont();
font.setColor(Color.YELLOW);
public void draw(){
spriteBatch.begin();
font.draw(batch, "Score: " + thescore, camera.position.x, 10f);
spriteBatch.end();
}