所以我有这个代码,我发誓,它应该工作。但它总是把我推向墙壁,我试图跳过(跳墙)而不是离开。我试过改变矢量的方向,并不重要。我尝试过使用-impact,并不重要。它总是推动我到我反对的那一方。有什么想法吗?我无法解决这个问题!
void AddImpact(Vector3 dir, float force){
dir.Normalize();
// reflect down force on the ground
impact += dir.normalized * force / mass;
}
void Update(){
if (impact.magnitude > 0.2F) {
CharCon.Move (impact * Time.deltaTime);
Debug.Log (impact);
}
}
答案 0 :(得分:0)
你什么时候打电话给AddImpact? Debug.Log输出有多大?也许价值不足以补偿其他运动* 。
*这是向正确方向的暗示,正常运动覆盖了墙壁跳跃。当半空中没有超越跳跃时关闭其他动作就可以了。