块碰撞

时间:2016-01-10 17:50:10

标签: c# unity3d

另一个问题,我的球员是一个正方形,当他击中这个压力板时,会发生这种情况:https://i.gyazo.com/7866da3f8371aee6c319fd447f1bee95.gif

压力板对象中的代码是:

    Animator pressionar;
    public Transform playerCheck;
    public LayerMask playerLayer;
    public bool pressured = false;

    void Start () {
        pressionar = GetComponent<Animator>();
    }

    void Update () {

        pressionar.SetBool("Pressionado", pressured);
        pressured = Physics2D.OverlapCircle(playerCheck.position, 0.15f, playerLayer);
    }

我尝试过更改为圆圈碰撞,但没有任何改变,谢谢。

1 个答案:

答案 0 :(得分:0)

有几种可能的方法可以解决这个问题。

首先:尝试锁定RigidBody2D中方形z轴的旋转。它位于Constraints部分。

第二步:尝试为方块创建一个斜坡以滑动到按钮上。你可以使用Polygon Collider来做到这一点。请参阅链接了解详情 http://docs.unity3d.com/Manual/class-PolygonCollider2D.html

第三步:使用脚本激活OnCollisionEnter函数,该函数将方块放在按钮上,或按下按钮,这将允许立方体滑动。请参阅链接了解详情 http://docs.unity3d.com/ScriptReference/MonoBehaviour.OnCollisionEnter2D.html

希望这些资源可以为您提供一些帮助。你可以混合搭配,试着找到一种能给你最好结果的方法。