gpt4 book ai didi

javascript - EaselJS 多行 Spritesheet

转载 作者:行者123 更新时间:2023-12-02 18:56:38 25 4
gpt4 key购买 nike

我有一个小问题,我使用的是多行 Spritesheet,其中每一行都是图像序列。

但是我无法让 Sprite 表从不同的高度开始(因此它可以向下移动),它们都从顶 Angular 开始

 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 处的帧。

提前致谢!

最佳答案

好吧,我有多行 Sprite 表,让我们假设它包含 3 行带有如下 Blob 的图像:

x, x, x, x, // moving animation images
x, x, x, x, // jumping animation images
x, x, x, x, // dying animation images

所有图像槽的高度和宽度均为 80px,它们在 spritesheet 中紧密地堆叠在一起,它们的中心将位于图像的中间,我使用的实际字符大小是 40px(宽度和高度),所以它是regX: 40regY: 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]
}
});

我想你在这里看到了这个模式,例如跳跃的起始编号是4,因为图 block 编号从0开始。

所以上面的图 block 表的实际插槽是这些:

0, 1, 2, 3, // moving animation images
4, 5, 6, 7, // jumping animation images
8, 9, 10, 11, // dying animation images

希望这对您有所帮助 - 您只需观察动画的 Sprite 表起始位置“移动”并使其从该位置开始。

// 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]

希望这有帮助!

关于javascript - EaselJS 多行 Spritesheet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15276525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com