【发布时间】:2021-06-23 19:59:48
【问题描述】:
每当玩家进入移动平台的触发器以移动玩家时,我都会使用此代码移动玩家:
private void OnTriggerEnter(Collider other)
{
if (other.CompareTag("Moving Platform"))
{
previousPosition = other.transform.position;
}
}
private void OnTriggerStay(Collider other)
{
if (other.CompareTag("Moving Platform"))
{
Vector3 distanceVector = other.transform.position - previousPosition;
rb.MovePosition(rb.position + distanceVector);
previousPosition = other.transform.position;
}
}
由于某种原因,玩家会被缓慢地推向平台移动的方向。当将父母从玩家设置到平台时,它也会发生,我需要将玩家设置为运动学,以便他移动,这会产生移动问题。为玩家提供粘性物理材料也会产生问题。
玩家通过增加力移动,平台与rigidbody.MovePosition()一起使用。
有人知道怎么了?
【问题讨论】:
标签: unity3d