旋转3D JavaScript精灵

时间:2019-04-17 13:41:55

标签: javascript canvas

我有一个图像精灵,其中包含我的角色(游戏英雄)的8帧,并向右旋转。我希望该英雄在左键按住时左转。现在它一直都向右转。我在2d画布上下文上绘制图像,如下所示:

ctx.translate(x, y);
// TODO - here I need to rotate it in 3d
// ctx.rotate();
ctx.translate(-x,-y);

ctx.drawImage(i, cycle * spriteW, 0, spriteW, spriteH, x, y, spriteW, spriteH);
ctx.restore();

是否可以使用2d上下文旋转它?还是需要更改一些逻辑?

1 个答案:

答案 0 :(得分:1)

我认为您正在寻找这个ctx.scale(-1, 1);。但是最好在游戏加载时加载精灵的翻转版本,并在左右精灵之间切换。这比翻转精灵要快。