标签: math
我正在制作一个等距游戏。当玩家试图沿着对角线走进墙壁时,我希望它们能够顺畅地滑过墙壁,因此运动的任何部分都是合法的,并且正常方向的任何东西都会被扔掉。墙壁可以是任何角度,而不仅仅是垂直或水平,玩家可以360度运动。
我觉得我差点儿,但我不能把最后一件放到位。
答案 0 :(得分:4)
我相信你想做的是将输入方向投射到墙上。
Vector Projection就是这样做的。
例如,当您检测到与墙壁发生碰撞时,请检查沿墙壁平行向量的输入投影向量。如果它不为零,则用投影向量替换输入向量。