游戏中对象与点,边,斜面碰撞后速度方向的变化

(一)与点发生碰撞
当与点发生碰撞时,速度的方向直接变成反方向 v=-v
(二)与边发生碰撞
a.当与竖边发生碰撞时,速度x方向上的分量的方向变成反方向,y方向上的分量方向保持不变 vx=-vx
b.当与横边发生碰撞时,速度y方向上的分量的方向变成反方向,x方向上的分量方向保持不变 vy=-vy
(三)与斜面发生碰撞
先求斜面的垂直向量
假设斜面用向量B[x,y]表示,有向量的几何意义:两个垂直向量的点积为0,求出N[y,-x]或N[-y,x]
图中N为[-y,x]将向量N规范化,N’=(-y/sqrt((-y)(-y)+xx),x/sqrt((-y)(-y)+xx))
求速度Vi在N’上的投影P=(Vi·N’)·N’
碰撞后的速度为Vf=2P+Vi

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/YYYJ_BOY/article/details/88744630