我使用的代码工作正常,除了 Z 位置。最大距离是以 53 度左右的角度获得的,而不是应该的 45 度。我做了自己的 toDegree 和 toRadian 函数,因为 js 从 Radian 的角度来解释 sin 和 cos。有什么帮助吗?
function Bullet(I) {
I.zVelocity = Math.sin(toRadians(turretpitch)) * 5;
}
第二部分:
bullets.forEach(function (bullet) {
bullet.zVelocity -= 0.05;
bullet.z += bullet.zVelocity;
if (bullet.x > bgImage.width || bullet.x < 0 ||
bullet.y > bgImage.height || bullet.y < 0 ||
bullet.z < 0) {
bullet.explode();
}
}
);