旋转后求点的x和y偏移

时间:2018-11-10 20:21:29

标签: math game-physics trigonometry

嗨,我陷入了一个问题。我的旧弹丸系统只能向4个方向射击,所以当找到一个新的偏移量时,这很容易,我只需要对某些数字求逆

           case "down":
                xOffset = hitbox.xOffset;
                yOffset = hitbox.yOffset;
                width = hitbox.width;
                height = hitbox.height;
                break;
            case "up":
                xOffset = hitbox.xOffset;
                yOffset = -hitbox.yOffset - hitbox.height;
                width = hitbox.width;
                height = hitbox.height;
                break;
            case "right":
                xOffset = hitbox.yOffset;
                yOffset = hitbox.xOffset;
                width = hitbox.height;
                height = hitbox.width;
                break;
            case "left":
                xOffset = -hitbox.yOffset - hitbox.height;
                yOffset = hitbox.xOffset;
                width = hitbox.height;
                height = hitbox.width;
                break;

这很好用,但是现在的问题是我不再将rects用作我的Hitbox和圆圈,并且现在还实现了360度射击。

我有一个函数可以根据单击的位置获得x和y速度,但是我没有基于该位置获得新命中框的功能。

  newSpeed.x += speed * Math.cos(angle * Math.PI / 180);
  newSpeed.y += speed * Math.sin(angle * Math.PI / 180);

如何做类似的事情来获得新的补偿?

0 个答案:

没有答案