|
|
1
4
你需要计算接触点的法向量。沿法线方向的速度分量将改变方向,而垂直于法线方向的速度分量将保持不变。
同样,这假设球的能量不变。如果你把摩擦/热损失/球的旋转等因素考虑进去,事情可能会变得复杂。 |
|
|
2
5
假设你只是从垂直面或水平面上弹跳,你可以分别抵消X或Y方向的速度。
如果你有[vx,vy],它从水平的墙上反弹,你就有[vx,-vy]。 |
|
|
3
5
我想试试[vx,vy]->[vx,-vy]和[vx,vy]->[-垂直墙壁上。 |
|
|
4
3
你是在撞击点处,围绕一条垂直于表面的线反射向量。在2D中:
|
|
|
5
3
假设在碰撞中没有能量损失,以速度(vx,vy)移动的球在弹离垂直表面后将以速度(-vx,vy)移动,在弹离水平表面后将以速度(-vx,-vy)移动。 对于一般情况(使用任意法向量从平面上弹跳,仍然假设没有能量损失),请参阅维基百科计算部分下的这篇文章: http://en.wikipedia.org/wiki/Specular_reflection |
|
|
6
1
你需要知道球的表面和速度。例如,从一条平行于x轴的直线上反弹[vx,vy]会变成[vx,-vy]。如果直线平行于y轴,那么[vx,vy]将变成[-vx,vy]。如果直线与任一轴都不平行,则情况更为复杂,但您要寻找沿曲面方向的速度简单反射((1,0)和(0,1)表示x,y轴)。 |
|
|
7
0
|
|
|
NoobProgrammer · Unity多人游戏立方体自动移动? 7 年前 |
|
|
eeze · 将玩家移动n个单位,使其靠近点X 8 年前 |
|
|
HKVariant · 当玩家旋转到圆周率时,旋转速度为360 8 年前 |
|
|
user5090322 · 访问画布上绘制的图像 8 年前 |
|
|
stor314 · 如何使用javascript使角色跳转 8 年前 |
|
|
Cosmik11 · EnemyAI沿Y轴反向旋转 8 年前 |
|
|
footurist · 为学习目的重新创建游戏:有什么特点? 8 年前 |