好的,所以我有这个碰撞检测代码,我试图将剩余的距离(从 0 移动到 +5,墙在 +2,剩余 = +3)穿过墙的平面。像这样:
现在我把大部分都记下来了,我知道我需要移动的剩余距离,以及墙的法线的叉积,但我需要一些帮助才能正确地解决这个问题。
我的问题是,沿墙平面移动剩余距离的正确公式是什么?
if(distRemaining.length() > 0){
cProduct = cross(distRemaining, wallNormal);
dest += new Vector3f(cProduct.x, 0, cProduct.z);
}