刚体之间挤压造成的抖动问题

来源:互联网 发布:与该网络签署协议 编辑:程序博客网 时间:2024/05/15 23:44

在做打砖块的时候,发现,如果在移动下面的板的时候当板子碰到左边或右边的墙体的时候就会出现剧烈的抖动问题。
这里写图片描述
控制板子的代码是这样写的:

void Update () {        float horizontal = Input.GetAxis("Horizontal");        m_rigidbody.transform.Translate(transform.right * Time.deltaTime * speed * horizontal);    }

如果控制边界的位置,写的判断特别多。因此在尝试过程中发现Mathf中的clamp函数比较合适,可以很好的控制板子的x轴向上帝的坐标,并且没有任何的抖动。

void Update () {        float horizontal = Input.GetAxis("Horizontal");        m_rigidbody.velocity = transform.right * horizontal*speed;        m_rigidbody.position = new Vector3(Mathf.Clamp(m_rigidbody.position.x,-4.2f,4.2f),transform.position.y,transform.position.z);    }
0 0
原创粉丝点击