我正在使用http://canvasengine.net/进行网页游戏。
我正在尝试从使用软件http://www.mapeditor.org/创建的 JSON 文件生成等轴测图。
引擎和软件是兼容的。
所以,我有一个 json 文件,如:
{ "height":5,
"layers":[
{
"data":[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
"height":5,
"name":"Calque de Tile 1",
"opacity":1,
"type":"tilelayer",
"visible":true,
"width":5,
"x":0,
"y":0
}],
"orientation":"isometric",
"properties":
{
},
"tileheight":41,
"tilesets":[
{
"firstgid":1,
"image":"..\/..\/..\/wamp\/www\/Symfony\/src\/Dontdie\/MapBundle\/Resources\/public\/images\/herbe.png",
"imageheight":41,
"imagewidth":82,
"margin":0,
"name":"herbe",
"properties":
{
},
"spacing":0,
"tileheight":41,
"tilewidth":82
}],
"tilewidth":82,
"version":1,
"width":5
}
之后,我使用 canvasengine 将此文件包含在 Js 中:
var url = "{{ asset('bundles/dontdiemap_temp/images/map.json') }}";
var canvas = CE.defines("canvas_id").
extend(Tiled).
ready(function() {
canvas.Scene.call("MyScene");
});
canvas.Scene.new({
name: "MyScene",
materials: {
images: {
herbe: "{{ asset('bundles/dontdiemap_temp/images/herbe.png') }}"
}
},
ready: function(stage) {
var el = this.createElement();
var tiled = canvas.Tiled.new();
tiled.load(this, el, url);
tiled.ready(function() {
var tile_w = this.getTileWidth(),
tile_h = this.getTileHeight(),
layer_object = this.getLayerObject();
stage.append(el);
});
}
});
而现在,我有一个问题。Lokk 作为这个屏幕:
瓷砖不会按应有的方式堆叠,在等轴测中,但就像 2d 法线贴图一样。
你有什么想法吗??谢谢 !