正弦和余弦如何用于碰撞检测?

问题描述 投票:0回答:1

[我正在完成一个教程,以制作旧的街机游戏Breakout-屏幕底部有一个桨,目标是将移动的球偏转到屏幕顶部的一系列块中。

计算反弹效果的代码是:

ball.dx = ball.speed * Math.sin(angle);
ball.dy = - ball.speed * Math.cos(angle);

黄色圆圈代表球:

enter image description here

我将正弦和余弦理解为斜边的比率;我似乎仍然无法确切地了解它们如何用于计算反弹角。谁能解释给定角度和速度值的结果数如何在反弹时产生球的方向性?我觉得我缺少一个简单的概念难题。

javascript math trigonometry
1个回答
0
投票

这是向量相加-添加的X和Y向量为您提供新的速度值。为了更轻松地了解正弦和余弦在这里的工作方式,以天使= 0度为例。球直线下降,应该反弹回去:

© www.soinside.com 2019 - 2024. All rights reserved.