团结使角色控制者"推动"其他角色控制器

时间:2015-12-20 13:08:36

标签: c# unity3d

嘿,伙计,我有一个相当基本的问题,但我无法找到如何。

我使用角色控制器作为玩家,该玩家将使用以下内容移动:

con.Move (transform.forward * Time.deltaTime * speed); 

现在,我的问题显然是这个角色控制器无法推送其他角色控制器,它只是卡在它前面。

到目前为止,我尝试了这段代码:

void OnControllerColliderHit (ControllerColliderHit hit) {
        CharacterController con = hit.transform.GetComponent<CharacterController> ();

        if (con == null) {return;}
        if (hit.moveDirection.y < -0.3F) {return;}

        Vector3 pushDir = new Vector3 (hit.moveDirection.x, 0, hit.moveDirection.z);
        con.Move (pushDir * Time.deltaTime * pushSpeed);
    }

它确实有效,但它在被推动时会出现某种抖动/抖动问题,并且它看起来并不那么好。

还有其他方法吗?我不想使用Unity Physics / Rigidbody,因为它不需要。

0 个答案:

没有答案