使TilesMap适应Phaser画布大小

3

我正在尝试使用phaser,并使用Tiled创建了一个Tiles地图,然后将其“导入”到phaser中。

一切正常运行,唯一的问题是我没找到如何使TilesMap(比画布大60像素)适应画布大小。我查看了所有示例,但没有发现任何有用的信息。

这个函数难道不是专门用来解决这个问题的吗?layer.resizeWorld()

var game = new Phaser.Game(800, 600, Phaser.AUTO, '', { preload: preload, create: create, update: update, render: render });
var map;
var tileset;
var layer;
var player;
var cursors; 



function preload() {
    game.load.tilemap('map', 'assets/maps/map.json', null, Phaser.Tilemap.TILED_JSON);
    game.load.image('tiles', 'assets/tiles/tilesSheet.png');
}

function loadUpdate(){
}

function create() {
    map = game.add.tilemap('map');
    map.addTilesetImage('tilesSheet','tiles');
    layerGround = map.createLayer("Ground");
    layerObstacle = map.createLayer("Obstacle");     
    //  Un-comment this on to see the collision tiles
    // layer.debug = true;
    layerGround.resizeWorld();
}

function update() {
}

function render() {
}
1个回答

3

layer.resizeWorld() 会将游戏世界的大小调整为与您的瓷砖地图相匹配。它不会对 Canvas 对象做任何事情。在 Game 构造函数中为游戏设置的大小是画布将被创建和显示的大小。因此,在上面的示例中,它将创建一个大小为 800x600 的画布。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接