EaselJS中的Spritesheets从TexturePacker创建

3
你如何从TexturePacker中创建适合EaselJS的精灵图表导出?在导出后,我得到了像这样的东西...
{
"images": ["textures.png"],
"frames": [
    [818, 44, 42, 42], 
    [818, 1, 42, 42], 
    [775, 87, 42, 42], 
    [775, 44, 42, 42], 
    [775, 1, 42, 42], 
    [732, 87, 42, 42], 
    [732, 44, 42, 42], 
    [732, 1, 42, 42], 
    [689, 87, 42, 42], 
    [689, 44, 42, 42]
],
"animations": {
        "load_indicator_01":[0], 
        "load_indicator_02":[1], 
        "load_indicator_03":[2], 
        "load_indicator_04":[3], 
        "load_indicator_05":[4], 
        "load_indicator_06":[5], 
        "load_indicator_07":[6], 
        "load_indicator_08":[7], 
        "load_indicator_09":[8], 
        "load_indicator_10":[9]
},
"texturepacker": [
        "SmartUpdateHash: $TexturePacker:SmartUpdate:9148c4d9cc1b277627212fb0bffcda4d:fabda013c371507b8fb93d52f15735a0:205920eec6ac5ad8b6794732cd49ae1d$",
        "Created with TexturePacker (http://www.texturepacker.com) for EaselJS"
]
}

每个帧都被定义为一个无意义的动画。这个导出器是个玩笑吗?或者我该如何正确地导出给EaselJS使用?有什么诀窍吗?
3个回答

1
基本上这是EaselJS要求的精灵图格式,您需要执行以下步骤:
$.getJSON("sprites.json", function(json) {
    spriteSheet = new createjs.SpriteSheet(json);
});

并为每个帧创建一个变量,在您的情况下:

var load_indicator_01 = new createjs.Sprite(spriteSheet, "load_indicator_01");

自动化我用这个片段实现:

var spriteSheet;
var sprites = {}
$.getJSON("sprites.json", function(json) {
    spriteSheet = new createjs.SpriteSheet(json);
    for(var sprite in json.animations){
        sprites[sprite] = new createjs.Sprite(spriteSheet, sprite);
    }
});

`


1
TexturePacker可以生成带有正确“animations”对象的.json文件,以传递给EaselJS SpriteSheet构造函数。在您的示例中,它应该如下所示:
"animations": {
  "load_indicator": { "frames": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] }
},

然而,为了自动生成正确的 .json 信息,有两个条件必须满足:
  • 您的图像序列文件名必须在帧编号之前加上连字符 - 或下划线 _ (例如 "load_indicator_00.png" 而不是 "load_indicator00.png")。
  • 您必须在 TexturePacker 设置中勾选“自动检测动画”。

0

不,这不是一个玩笑。导出为EaselJS/CreateJS json格式的功能确实存在。

您可以按照以下步骤操作:

  1. 在设置面板中有一个数据格式切换按钮(此处截图)。
  2. 单击该按钮并在长列表中选择EaselJS / CreateJS
  3. 在数据格式按钮旁边,在JSON文件文本框中设置输出文件路径。
  4. 发布精灵表并获取它。

我的版本是Windows上的TexturePacker 4.0.2。


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