EaselJS MultiRow Spritesheet
У меня небольшая проблема, я использую многорядную таблицу спрайтов, где каждая строка представляет собой последовательность изображений.
Однако я не могу заставить спрайт-лист начинаться с другой высоты (чтобы он мог двигаться вниз), все они начинаются с верхнего угла
var spriteSheetUp = new createjs.SpriteSheet({
// image to use
images: [snakeI],
// width, height & registration point of each sprite
frames: {width: 96, height: 90, regX: 0, regY: 290},
animations: {
move: [0, 3, "move"]
}
});
Я хочу, чтобы выше, чтобы начать использовать кадры в пикселе 290 .
Заранее спасибо!
1 ответ
Ну, у меня есть spritesheet с несколькими строками, и давайте представим, что он будет содержать 3 ряда изображений с такими пятнами:
x, x, x, x, // moving animation images
x, x, x, x, // jumping animation images
x, x, x, x, // dying animation images
Все слоты изображений будут иметь высоту и ширину 80 пикселей, они плотно уложены рядом друг с другом в таблице спрайтов, и их центр будет посередине изображения, фактический размер символов, который я использую, составляет 40 пикселей (ширина и высота), поэтому regX: 40
а также regY: 40
размер spritesheet img будет равен 320px ширины и высоты. (потому что четыре слота 80px * 4 = 320px).
Я хотел бы получить к ним доступ так:
var localSpriteSheet = new createjs.SpriteSheet({
images: [imgPlayer],
frames: {width:80, height:80, regX:40, regY:40},
animations: {
moving: [0,3],
jumping: [4,7],
dead: [8,11]
}
});
Я думаю, что вы видите образец здесь, начиная с номера, например, jumping
4, потому что нумерация тайлов начинается с 0.
Таким образом, фактические слоты для вышеуказанного листа листов:
0, 1, 2, 3, // moving animation images
4, 5, 6, 7, // jumping animation images
8, 9, 10, 11, // dying animation images
Надеюсь, это поможет вам - вам просто нужно посмотреть, как начался слот вашей таблицы спрайтов анимации, и начните ее с этого момента.
// takes 4 images from first line
move: [0, 3]
// takes 4 images from second line (If spritesheet has 4 images on each line).
jump: [4, 7]
Надеюсь это поможет!